Show more

Cloud RunもGoogle App Engineと同様にEdge Cacheが有効になっているのかと思いきや、よくよくログを見てみたところきちんとキャッシュされていませんでした。

キャッシュされていることを前提としてManaelをCloud Runに置いていたのですが、そうではなかったのでMastodonと同様にGKEでManaelも動かすようにしました。リソースにまだ空きがあって良かったです。

Manaelのリリースフローを改善して任意のタグをGitHubにpushした際にDockerイメージの作成を行ってDocker HubにDockerイメージをpushするようにしました。これによりDocker Hubへのイメージのpushが遅滞なく行われるようになったのではないかと期待します。

またこれによりmanaelproxy/docker-manaelリポジトリは不要になったためアーカイブしました。

manael/.goreleaser.yml at v1.3.3 · manaelproxy/manael github.com/manaelproxy/manael/

Originヘッダーを上流に通すように修正したManael v1.2.1をリリースしました。

Mastodon v3.0.0では画像投稿時のOCRやオーディオプレイヤーでCORSを用いた通信が行われたためOriginヘッダーが渡される必要があります。Mastodon v3.0.0がリリースされる前に修正できてなによりです。

Release v1.2.1 · manaelproxy/manael github.com/manaelproxy/manael/

Mackerelはホスト単位での支払い金額の算出になっていて、KubernetesやECSなどのコンテナを活用している場合は金額が高くなってしまいがちでした。ですが今年の五月に料金体系の改訂があり、コンテナで動いているホストはマイクロホストという扱いになり通常のホストよりも安い金額で使えるようになったようですね。これはとても使い勝手が良くなったのではないでしょうか。

2019年5月よりコンテナやクラウドコンポーネントに対応した新しい料金制度に改定します - Mackerel ブログ mackerel.io/ja/blog/entry/anno

ykzts.technology/ で使っているKubernetesのマニフェストファイルをGitHubで公開しました。ドメイン名などいろいろと直接書いているのでそのまま使うのは難しいでしょうが、参考までに。

ykzts/ytech-infra: A manifest of Kubernetes for ykzts.technology. github.com/ykzts/ytech-infra

Elastic CloudもRedis Labsもアカウント登録や支払い方法入力の際に勤務先の名前を求めてきておもしろかったです。どちらも個人利用はあまり想定されていないのでしょうね。

どちらのサービスも比較的安価にマネージドサービスの提供をしてくれるので助かりますね。

My dream for Mastodon is for it to be a viable choice as a publishing platform for any creator. In other words, for people to not feel like they're locked in to Twitter or Instagram if they want to be professionally successful.

Kubernetesはいつか勉強しようと思いつつもインスタンスを複数立てる必要があり、一定のお金がかかってしまうことからためらってしまっていました。

ですがここ数ヶ月はPatreonやOpen Collecitveを経由して一定の金額をご支援いただけるようになりました。こうしたご支援によって複数のインスタンスを準備することへのためらいをなくすことができました。

皆さまのご支援によって技術的な知識を得られています。ありがとうございます。

ykzts.technology/ は当初はCompute Engineのインスタンスひとつだけで運用していましたがKubernetes Engine (GKE)を使うように変更しました。これによりMastodonのアップデート時にインスタンスが停止してしまうことがなくなるのではないかと思います。

またGKEを使うにあたってRedisをRedis Labsが提供するものを使うようになりました。極力自分の手で触る必要があるものを減らす方針でいます。

docker tag manal/manel:latest gcr.io/[your-project-id]/manael:latest
docer push gcr.io/[your-project-id]/manael:latest
gcloud beta run deploy manael --project [your-project-id] --image gcr.io/[your-project-id]/manael:latest --region asia-northeast1 --set-env-vars MANAEL_UPSTREAM_URL=http://localhost:9000 --platform managed

このようなコマンドを実行するとCloud RunでManaelが動きます。Cloud RunにはどうやらEdge Cacheがあるのである程度GCP側でキャッシュしてもらえているようです。便利ですね。

Manaelの使い方のところにCloud Runで使う方法を書こうかと思います。おそらくManaelを使う方法で一番手間がかからないのがCloud Runを使う方法です。

このインスタンス (ykzts.technology/) の画像サーバーはこれまでMastodonが動いているサーバーに同居させていましたがCloud Runを使うように変更しました。元々Dockerを使っていたので気軽に変更することができましたね。

Elasticsearchを自分で管理したくなかったのでElastic Cloudを使っています。ただ結構なお値段なので試用期間が過ぎた後どうするかは考え中です。

ykzts.technology/ にElasticsearchを導入してみたのですが tootctl search deploy の実行に丸一日かかり驚きましたね。さすがに二年分の蓄積は伊達じゃありませんね。

公式によるコメントが出ましたね。

builderscon tokyo 2019 前夜祭における一部内容について - builderscon::blog blog.builderscon.io/entry/2019

「台湾の女の子はKawaii」という発表がされたRubyKaigi 2013での反省が全く活かされていないのが、とてもとてもかなしいですね。

エンジニア・コミュニティにはオープンであってほしい - 猫型の蓄音機は 1 分間に 45 回にゃあと鳴く nekogata.hatenablog.com/entry/

AWSでAZ障害が起きたのでなるべく影響を受けない構成の考えを書いておく - なんかかきたい t-cyrill.hatenablog.jp/entry/2

Manaelのインストール手順について書きました。使い方についてはまた後日書きます。

インストール手順 | Manael manael.org/ja/docs/install/

Show more

山岸和利's choices:

ykzts.technology

ykzts.technologyMastodonのコミッターの一人である山岸和利 (ykzts) が個人で使うために運用しているMastodonサーバーです。