1クール続けるブログ

とりあえず1クール続けるソフトウェアエンジニアの備忘録

44smkn Week in Review - November 28, 2022

AWS Week in ReviewとSRE Weekly読んでて、自分の備忘録用のメモもこんな感じにまとまっていると良いだろうかと思い、試してみることにしました
44smkn Week in Review - November 14, 2022 - 1クール続けるブログ

今週はre:Inventなのでそのへんを追いかけたいけど、そんなに時間がないような気もしてきた。
また現地のre:Inventに参加する機会があれば行きたいなあ。

Article

CEO Raj Dutt Interview: The Grafana Experience Will Change - New Stack

業務でGrafana使うことがなくなり、あまり追えてなかったので、Grafanaの過去/現在/未来の話を大雑把に知れて良かった。

Grafanaファミリーがまた増えていた。まさか Mimir というメトリクスのプロダクトも作っているとは。加えて、プロファイリングツールである Phlare というのもあるらしい。
Loki(ログ)Grafana(可視化)Tempo(トレース)Mimir(メトリクス)で LGTM とのこと。

少しだけどどうやって収益あげているか?とかどの製品の売上がどのくらい占めるかとかの言及あって面白い。
OSSの企業ちゃんと儲かっていて欲しいけれど、難しい面が結構ありそうだなと思っている。

(Prometheusのメンテナの44%以上がGrafana Labs出身ってすごいな。Prometheusで集めたデータ可視化にGrafana使うことへの安心感がすごい。)

Argo Rollouts at scale: Bringing Automated Rollbacks to 2,100+ services at Monzo - monzo

Monzoというオンライン銀行のサービスがArgo Rolloutを使いPrometheusのクエリベースのRollbackを実装した記事。Monzoさんって結構名前聞く気がする。

Ephemeral Metadata という機能を使って、新旧のサービスに対応するメトリクスへのクエリを分けているらしい。

サービス数がめちゃくちゃ多いからだと思うけど、移行用にサービスを作ってしまうの凄い。
あと、めっちゃ良いなと思ったのは、各サービスに重要度を示す tier というのがあるらしい。これを使って移行する順番を自動的に決めることが出来たとのこと。

Enabling Collaborative K8s Troubleshooting with ChatOps - New Stack

botkube.io は良いぞという話だった。
あまりChatOpsに関して調べたことはないので知識なかったんですが、Chat上でのペアワークをするのに便利という点やモバイルからでも作業ができるというのは、確かに補助的にそういうツールがあると便利かもなあと思った。

色々試して行き着いた読書方法 - iwashi

「高速で読み流しながらマークし、後でまとめる。全部読まなくていい。」
めっちゃ良い読書法と思うし、凄い試したいのに、どうしてもじっくり読みがち。しかも全部読まなきゃという感覚に襲われてしまう。
今少しずつ練習している…。

The state of OpenTelemetry - cncf

OpenTelemetryの各言語の実装状況がまとまっていて良かった。
てっきりGoとかが成熟しているのかなと思いきや、一番成熟しているのはJavaだった。

記事内でも言及がありますが、experimental は、α / β / rc をカバーするらしく、更にstableに移行する時に既存のユーザをbreakするようなことはしないらしいので本格的に採用しても良いレベルなのかも知れない。

ついでにDatadogのOpentelemetryのサポート状況を見てみたけど、2つの方法でサポートしているらしい。
https://docs.datadoghq.com/tracing/trace_collection/open_standards/

1. app(otel sdk) -> opentelemetry-collector with datadog-exporter -> datadog-agent -> datadog backend
2. app(otel sdk) -> datadog-agent -> datadog backend

Strategies and Tools for Performing Migrations on Platform - spotify

Spotifyが大規模なmigrationを行った経験から、「症状(When), 避けるべきこと(Don't), 推奨すること(Do)」を各challengeでまとめている記事。
この記事内でのSpotifyの事例は、mobile appのビルドをbazelに移行することだったが、多くの大規模な移行に共通する学びだと思った。

好きなDoがいくつかあるので挙げておく。

Challenge 1: Do

  • Address your audience. Understand their mental models so that you can talk about what’s relevant, connect where their needs are, and find proxies to expand your reach.

Challenge 2: Do

  • Communicate. Keep your audience engaged by sharing the progress through newsletters and workplace posts.
  • Look to automation. Simplify the migration process by investing in automation upfront.
  • Make time for spike weeks. Partner with squads and tribes to jointly dedicate a week to work on the migration.

Challenge 4: Do

  • Use dashboards. Metrics and dashboards will communicate the progress and impact, as well as help prioritize your work at scale over time.

Podcast

53. 時系列データベースエンジン w/ nakabonne - fukabori.fm

OpenTelemetryやらGrafanaやらの記事を読んでいたので、久しぶりに聞いた。
時系列データの特徴とそれを生かした時系列データベースの設計が分かりやすく語られててやっぱり良かった。
Prometheusがパーティション切り替わる時に、通信遅延や時間のズレによってデータを取り逃すことがあるかも(かつ後発のDBではそうならないようになっている)という話は興味深かった。

WEB+DB PRESSのRustで作るRDBMSの写経をやったからか、昔より解像度高めに聞けた気がする。

Rebuild: 348: Stop Digging Up The Past (higepon)

前半のTwitterの話は聞いてて胸が苦しくなった。
ソフトウェアの品質が高いからこそ、大量にソフトウェアエンジニアがいなくなっても動き続けるんだよね。
次のラピュタの放送で壊れるんじゃないか…?という話があって確かにと頷いた(これrebuildで聞いた話じゃないかな…?)