2023年7月5日
Fluentd の fluent-plugin-s3 を使ってニフクラのオブジェクトストレージサービスにログをアップロードする時のメモです。 ## ポイント * `s3_endpoint` を指定する * https://jp-east-1.storage.api.nifcloud.com または https://jp-west-2.storage.api.nifcloud.com * 参照: エンドポイント * `force_path_style` を true にする * オブジェクト
2023年6月25日
先日、この半年くらい担当させてもらった仕事が一区切りついたので振り返りをしておこうかなと思います。 全部よくある話だと思いますが、「経験しないとわからないこともあるものだ」ということで、今回は思考垂れ流し回です。 ## とにかく余裕を 取り掛かり始めたころ、諸先輩方にファーストリリースではとにかく最低限のものを作るように言われたが、今ならそれが身に沁みてわかる。スケジュール的に余裕を持たせる効果のほか、エンハンスの伸びしろも大きくなるので、リリース後に機能拡充していくことで対外的な見た目が良くなる効
2023年6月24日
今まで Docker Compose で動かしてたアプリを Kubernetes に移植したときのメモです。 ## Docker Compose では Docker の `--device` オプションと同じ記法で指定できていました。 ```yaml services: app: image: hoge devices: - /dev/gpiomem ``` ## Kubernetes では デバイスプラグインを使用して Kubelet にハードウェアリソースを知
2023年6月14日
タイトルの通りです。これにしばらくハマってしまったので戒めのために書いておきます。 ## tl;dr Ubuntu 20.04 の時と同じ設定ファイルをラズパイの /boot/firmware に入れていたけど反映されていなかった。調べてみたらそのファイルを include する文が Ubuntu 22.04 では消されていた。 ## そもそも config.txt とは? > The Raspberry Pi uses a configuration file instead of the BI
2023年6月13日
今まで kubeadm でクラスター運用をしていたのですが、ラズパイくんたちのお引越しの関係で再構築することにしました。Raspberry Pi 4B 2GB や 3A+(RAM 512MB)も join させたかったこともあり、エッジ環境での動作も想定されている K3s を選びました。 ## 環境 * Raspberry Pi 4B 8GB x 2, Raspberry Pi 4B 4GB x 1, Raspberry Pi 4B 2GB x 1 * SSD ブート * PoE+ 電源
2023年5月15日
前回の記事では SQLAlchemy の Session について解説しました。今回はその応用として、Celery においてどのように Session を管理するかを考えたいと思います。 関連記事: * SQLAlchemyのセッション・トランザクションを理解する * SQLAlchemyで'MySQL server has gone away'が発生した時の対処法2つ ## 結論 以下のように DB 操作を行うタスクのためのクラスを作ります。 ```python from typing impo
2023年5月14日
SQLAlchemy の Session や scoped_session、トランザクションに関して理解していきます。 ## 用語おさらい ### セッション(Session) SQLAlchemy の Session オブジェクトは、ORM マッピングされたオブジェクトの永続化に関する操作を管理するオブジェクトです。 `sqlalchemy.orm.Session` を直接インスタンス化しても良いですが、実環境では sessionmaker を使うことが一般的です。sessionmaker は
2023年4月22日
最近、MUI の妹分の UI ライブラリである Joy-UI を使ってます。現在進行形で活発に開発が進んでいて、設計(デザイン)も今時な感じで好感触です。ところどころまだ開発されていないコンポーネントもちらほらあるものの、ドキュメントには代替策がコード付きで載っていてとても親切です。 MUI X というより発展的なコンポーネントをもつ UI ライブラリもあるのですが、そこに今回のテーマである「データテーブル」に該当する Data Grid というものがあります。これは超すごくて、雑に言うと Excel
2023年4月18日
!ぜんぜんわからない 俺たちは雰囲気でカニコをやっている 恥ずかしながら、わたしは雰囲気で kaniko にコンテナイメージのビルドをしてもらっていることに気づきました。1年以上 GitLab CI で kaniko を使っておきながら、ただ「特権コンテナを使わずにイメージつくれるやつ」くらいの認識しかしていなかったです。 続きの記事: Kanikoでcache=trueにするなら1コンテナ1ビルドで ## kaniko の cache=true オプション kaniko には `--cache`
2023年4月15日
PPPoE 回線が遅いので IPoE(IPv4 over IPv6)へ移行しようと思いました。以前は2つのルーターを使って、PPPoE と IPoE の2セッションを張ることができたのですが、ある時からできなくなり、しばらく PPPoE だけで生活していました。とはいえやはり遅い、遅すぎる……ということで、今回の記事に至ります。 IPoE に移行するにあたっての課題は**任意のポートを開放できないこと**です。 代わりの方法を考えていたところ、ちょうど手元に1台 AWS Lightsail のサーバー