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

Fanstaの1年を大解剖! 一人SREはどこまでできるのか!?

syossan27
December 18, 2024

Fanstaの1年を大解剖! 一人SREはどこまでできるのか!?

syossan27

December 18, 2024
Tweet

More Decks by syossan27

Other Decks in Technology

Transcript

  1. ©MIXI Jan
 Feb
 Mar
 Apr
 May 
 Jun
 TerraformでIaC DMARC対応

    Google Cloud 料金改定  Postmaster Tools 導入 やったこと 
 起こったこと 
 SREについて チームに解説 APIサーバの コネクション プール枯渇 GitHub Copilot Chatの調査 大きめのディレクトリ トラバーサル攻撃に遭遇  Firebase Remote ConfigをIaC化 Four keysの 調査・検討 退職時対応 チェックシー トの整備 Four keysの実装 新規案件をお助けに     スクラム自動化ツール 作成 OpenTelemetr yの実装 Four keys について チームに 解説
  2. ©MIXI 去年にGitHub Enterprise Cloudへorgを移行し、GitHub Copilotを組織 として使えるようになり、GitHub Copilot Chatの可能性を模索した GitHub Copilot

    Chat 調査 ▪ 初期は日本語入力がおかしかった → GH側に問い合わせ ▪ Knowledge basesはうーん・・・
  3. ©MIXI 去年にGitHub Enterprise Cloudへorgを移行し、GitHub Copilotを組織として使えるよう になり、GitHub Copilot Chatの可能性を模索した GitHub Copilot

    Chat 調査 ▪ 初期は日本語入力がおかしかった → GH側に問い合わせ ▪ 開発チームのGCリソース作成へのハードル やったこと • 一部のGCリソースをIaC化 • HCP Terraformを利用して、よりTerraformを管理しやすい形に 報告してすぐに直してもらいました GitHub公式コミュニティのDiscussions、皆も使おう!
  4. ©MIXI GitHub Copilot Chat 可能性 • 日本語に強くなってきたらワンチャン? • アタッチするKnowledge baseを最適化したらもっと良くなる?

    調査 ▪ 初期は日本語入力がおかしかった → GH側に問い合わせ ▪ Knowledge basesはうーん・・・ 去年にGitHub Enterprise Cloudへorgを移行し、GitHub Copilotを組織 として使えるようになり、GitHub Copilot Chatの可能性を模索した
  5. ©MIXI Terraformでは全てのリソースが扱えるわけではなく、Firebase Remote ConfigはIaCできなかったので無理くりなんとかしてみた Firebase Remote ConfigをIaC化 やったこと • テンプレートの変更のみが管理できればよかった

    • GitHub Actions, Firebase Admin SDKを使って実現 やらない と... ▪ FRCテンプレートの変更をコンソールからやらなければな らない (オペミスを防ぐための同期的なダブルチェックが必要)
  6. ©MIXI 昨今、開発生産性が声高に叫ばれていますね。SREsとしてFour keysを 計測できるようにしましたが、正直上手く扱えていないというのが現状 です。(難しい...) Four keysの実装 ▪ Four keysの学習,

    実装, 啓蒙 ▪ Findy Team+などを使わず、GHA, BigQueryを用いた計測 やったこと • 優先度を上げなければいけないタスクが増えてきた • 継続的なメンテナンス, 運用にはリソースが必要 • 小規模ビジネスには必要ないのでは?という懐疑 問題
  7. ©MIXI やったこと 
 起こったこと 
 Aug
 Jul
 Sep
 Oct
 Nov


    Dec
 OpenSSHの 脆弱性対応 OpenTelemetryの実装 CVE-2024-6387 発生   再び別の新規案件へ・・・     テストカバレッ ジ レポートの実装 GraphQLの破壊的 変更をCIで検出 NGINXのupstream が不通になる問題の 調査・対応 マージベースの変更 でApprove済みのPR のマージがブロック される問題の調査 GCのコスト最適化 ArgoCDを ArgoCDで 管理 Cloud SQL for MySQL v5.7の サポート延長料金が・・・ MySQL v8 アップグレード 調査 Rails 新メンテナン スポリシー発表 GitHub Copilot Chat knowledge basesの運用 Slack botの実 装 Cloud Runの Sidecar/http 2対応 デカめインシデント 発生  
  8. ©MIXI o11yに対する施策として、OpenTelemetry(以下、OTel)の実装を行 いました。FE/BEの一貫したトレースログが取れるようになり、インシ デント時等に役立てています。 OpenTelemetryの実装 ▪ FEでは手動計装、BEでは自動計装で実装 ▪ トレースはCloud Traceに送信し、収集

    やったこと • 自動計装は一瞬で終わったが、手動計装がめちゃくちゃ時間か かった • とりあえず導入したという感じなので、Attrの内容とか詰めたい • ピャッとやるならDatadog, New Relic, Splunkだがお金が・・・ 結果
  9. ©MIXI ある日を境に、急にNGINX → APIの疎通が1〜2sほど取れなくなるよう に・・・稀な発生で、致命な問題には繋がらなかったが対応することに NGINXのupstreamが不通になる問題の調査・対応 ▪ NGINXの設定を見直したが効果なし(keep-aliveなど) ▪ 発生前にGKEのアップグレードが走っていたため、リリースノート

    から怪しい修正箇所があるverまでアップグレード(効果なし) ▪ k8sのISSUEを洗い出し、kube-proxyの初期化におけるバグが怪し かったため、GKEを最新verまでアップグレード (https://github.com/kubernetes/kubernetes/pull/126689) 調査 • 直った!が、原因調査でk8sの調査に至るまで時間がかかった • kube-proxyの動きなど、なあなあの理解で済ませていたのでk8s をもっと学ばねばいけない 結果
  10. ©MIXI Cloud SQL for MySQLにv5.7の延長サポート開始が迫ってきました。 これを機に、MySQL v8へのアップグレードを行うためにまずは調査から 。 MySQL v8

    アップグレード調査 ▪ vCPU単位で課金が発生(1vCPU = $66.43/month) ▪ 3年経過でさらに倍の課金額に やらない と... • Upgrade Checker Utilityを用いてアップグレード時に問題になり そうな箇所を洗い出し • デフォルト照合順序の変更, インプレース アップグレードなど必 要になりそうな要素を学習 やっていき
  11. ©MIXI Jan
 Feb
 Mar
 Apr
 May 
 Jun
 Aug
 Jul


    Sep
 Oct
 Nov
 Dec
 カンファレンス準備 カンファレンス準備 ゆるSRE勉強 会 ゆるSRE勉強 会 ゆるSRE勉強 会 ゆるSRE勉強 会 ゆるSRE勉強 会 SRE Magazine SRE Magazine SRE Magazine SRE Magazine SRE Magazine SRE Magazine
  12. ©MIXI Jan
 Feb
 Mar
 Apr
 May 
 Jun
 Aug
 Jul


    Sep
 Oct
 Nov
 Dec
 カンファレンス準備 カンファレンス準備 ゆるSRE勉強 会 ゆるSRE勉強 会 ゆるSRE勉強 会 ゆるSRE勉強 会 ゆるSRE勉強 会 SRE Magazine SRE Magazine SRE Magazine SRE Magazine SRE Magazine SRE Magazine プライベートもめちゃくちゃ忙しかった!!!!