脳内で割り込み BE MY BABY が発生してしまった
便利ソリューションの進捗です。画像の状況は、 3000 番ポートで Nuxt のサンプルを動かして、 5000 番ポートで動くアプリが 3000 番ポートにプロキシしている様子。プロキシとしてリクエストを転送するときに、リクエストとレスポンスを記録して、表示する( https://github.com/mayuki/Rin )ので、通信内容が簡単に覗ける感じになりました https://github.com/azyobuzin/mateproxy
適当にライブラリの組み合わせでちゃちゃっとできるっしょって言ってたら、 WebSocket のプロキシが厳しくて、結局 ASP.NET Core の WebSocket への Upgrade の処理と、 WebSocket クライアントライブラリの接続処理のコード見て自作することになってしまった
ところで、 tootsuite/mastodon の Docker イメージ動かすと、何もしてないのにメモリ使用量が 550MB くらい行くんですけど、さすがにしんどくないですか。 puma とかいうやつが悪いの?
デフォルトで 5 スレッド × 2 プロセスがプリロードか。さすがにテスト環境にはオーバースペックそうだし、なんとかしなきゃな
k3s の
> Removed in-tree plugins (cloud providers and storage plugins) which can be replaced with out-of-tree add-ons.
に関しては、 out-of-tree add-on ってそれぞれがクラスタ内のリソースを監視するようになるから、追加でアドオンが必要になると、それだけマシンパワー必要になるんだよな……
そもそも k8s のストレージプラグイン類が out-of-tree の流れになっているので、古いから捨てたといったらそうなんだけど、軽量化の観点では逆
A deep dive into Kubernetes controllers https://engineering.bitnami.com/articles/a-deep-dive-into-kubernetes-controllers.html
昨夜の便利ソリューション( https://mstdn.maud.io/@azyobuzin/101722280630188297 )、やりたかったことは、こういうことです
さて、便利ソリューションで、なぜローカル Mastodon 同士が繋がらないんだ問題を調べてたけど、なんか webfinger のレスポンスが空だ……
WebFinger はちゃんと返ってた。 UnexpectedResponseError が発生するコードはあと atom の取得か。確かにリクエストは来てないな……
RAILS_LOG_LEVEL=debug にしたけれど、まったく例外ログが記録されず 503 ということしかわからない
.well-known/webfinger 以外のリクエストは来ていないし、 webfinger も 200 を返しているし、どこで止まっているんだ……
あーそうか、コンテナに入って 1 ファイルだけ編集して commit して Docker Hub に push すればいいのか
docker commit -c 'ENTRYPOINT ["/tini", "--"]' って指定すると、エントリーポイントが /bin/sh -c [/tini, --] になってキレてる
FreezePeach から 2362 件のアクティビティ(ふぁぼとかを含む)を引っ張り出してきた。画像とかも収集しておかなきゃかなぁ
やっとエラーログ吐かせられて判明したんですけど、 Mastodon にプライベート IP アドレス相手に通信しようとするとエラーにするコードが含まれていた https://github.com/tootsuite/mastodon/blob/v2.7.4/app/lib/request.rb#L192
プライベート IP アドレスだから落とされたのではなく、 DNS の解決自体に失敗してるというところまで判明した。そもそもなんで名前解決コードを自前で用意してるんだよおい
もしかして: https://github.com/ruby/ruby/blob/f399c2912bcb0ab782fc14a1987e07ceaaf060e7/lib/resolv.rb#L1090 で ndots:5 に対して「mastodon1.fediverse.local.azyobuzi.net」で 4 だからフルネームではないと判断されている?
あっ https://github.com/ruby/ruby/blob/f399c2912bcb0ab782fc14a1987e07ceaaf060e7/lib/resolv.rb#L1094-L1096 があるからいいのか
なんもわからん~~~~~とりあえず WebFinger が動いてるんだから Mastodon が独自でいじってるのが悪い~~~~