Upgrade to Pro — share decks privately, control downloads, hide ads and more …

なんでもかんでもコンテナ化すればいいってもんでもないけど なんでもかんでもコンテナ化したらスッ...

Sponsored · SiteGround - Reliable hosting with speed, security, and support you can count on.
Avatar for saramune saramune
March 13, 2024

なんでもかんでもコンテナ化すればいいってもんでもないけど なんでもかんでもコンテナ化したらスッキリしました

Avatar for saramune

saramune

March 13, 2024
Tweet

More Decks by saramune

Other Decks in Technology

Transcript

  1. 自己紹介 2 • 古屋 啓介 ◦ Chatwork株式会社 SRE部 ◦ AWS

    Community Builders (container) ◦ JAWS-UG SRE支部運営 ◦ ドラム叩きます 3/21(木) 春のAurora祭りやります!
  2. なにがうれしいの? 14 • ソースどこやったっけ... ◦ 普段触らないのでどこおいたか覚えてない ◦ 普段触っているのと同じところに置くので迷わない • デプロイって手動だった?

    ◦ メインのワークロードとは異なるスタックなのでCI/CDが未整備 ◦ メインのワークロードと同じCI/CDの仕組みに乗れる • テストしたいんだけど... ◦ 簡単1ショットの仕組みだったのでテストもなし ◦ 上記が整うことでテスト環境も整えやすい
  3. 15 (参考)デプロイフロー 15 Manifest (helmfile) EKS Sync 1. Push 3.

    kubectl apply helmfileから生成された Manifest 2. Sync helmfileのリポジトリに ソースコードとManifest を格納しておく
  4. ちょっと本筋と逸れますが 16 • 移行にあたってPythonをshellにリライト ◦ そもそもPythonとかNodeJSとかのEOLつらい ◦ たまたま簡単なスクリプトが多かった • helmfile

    + shellはいいぞ ◦ ConfigMapと.shがあればOK ◦ ベースとなるコンテナはシンプルなものでよい ◦ shellの黒魔術化には注意... shellスクリプト マウントする
  5. 実際やった事例 18 • helmfile + shellに書き直したもの ◦ Lambda + EventBridge

    + PythonでOpenSearchを諸々する処理 • そのままEKSに移したもの ◦ EC2 + cron + shellでRDSをデイリーでコピーする処理 ◦ EC2 + cron + shellでRDSにqueryする処理 ◦ EC2 + cron + shellでChatworkを諸々する処理 • その他新規で作ったもの ◦ 夜間休日に検証環境を落とす処理