$30 off During Our Annual Pro Sale. View Details »

バックエンドエンジニアによる Amebaブログ K8s 基盤への CronJobの導入・運用経験

Avatar for suna-big suna-big
December 02, 2025

バックエンドエンジニアによる Amebaブログ K8s 基盤への CronJobの導入・運用経験

K8sの運用でマニフェスト管理に苦労した経験を持つエンジニアが、Amebaブログで利用する重要システムをK8s基盤へCronJobで導入・運用した体験を解説します。 具体的にはKubeVelaによりマニフェストの実装量が劇的に削減され、FluxCD/ArgoCDによるGitOpsベースの自動デプロイによってどのように開発・運用ストレスが減ったかをお伝えします。 さらに、実際にCronJobの障害に直面した際の対応を共有します。DatadogやAthenaといった高度なオブザーバビリティ環境と基盤チームによるサポートがいかに原因特定と解決を可能にしたかをお伝えします。K8sの導入・運用に課題を持つインフラ/SREエンジニアの方々に、利用者側の生の声と実践知をお届けします。

Avatar for suna-big

suna-big

December 02, 2025
Tweet

More Decks by suna-big

Other Decks in Programming

Transcript

  1. 自己紹介 名前: 須永大生 所属: サイバーエージェント Amebaブログ バックエンドエンジニア SNS: X @suna_big

    経歴・興味 Go/Java を用いたマイクロサービス開発、レガシーコード刷新 前職では GKE 上で K8s 運用、マニフェスト管理の苦労を経験 SRE、Platform Engineering、生成 AI による仕様駆動開発に興味 自己紹介 2/31
  2. Ameba K8s基盤の特徴 基盤チームによる高度な整備 1. KubeVela - マニフェスト管理の簡素化 2. FluxCD/ArgoCD -

    GitOpsによる自動デプロイ 3. Datadog - 統合監視基盤 4. Athena - ログ分析環境 バックエンドエンジニアが安心してアプリケーションに集中できる環境 13/31
  3. KubeVelaによるマニフェスト削減 Before(前職) # Deployment.yaml # Service.yaml # HPA.yaml # ConfigMap.yaml

    # 合計数百行以上... サービスごとに全てのリソースを定義 14/31
  4. KubeVelaによるマニフェスト削減 After(Ameba K8s基盤) apiVersion: core.oam.dev/v1beta1 kind: Application metadata: name: access-analysis-batch

    spec: components: - name: access-analysis-batch properties: ... traits: ... Application定義だけでリソース・環境変数・外部シークレットまで完結! 15/31
  5. GitOpsによる自動デプロイ FluxCD + ArgoCDの組み合わせ FluxCD PRマージ ↓ イメージ更新の自動反映 ↓ デプロイ完了

    ArgoCD PRマージ ↓ マニフェストの自動適用 ↓ デプロイ完了 メリット dev/stg/prdのイメージ更新が自動 Git履歴がデプロイ履歴に 16/31
  6. アクセス解析の処理フロー BigQuery アクセスログ蓄積 → CronJob データ処理 → DynamoDB 解析結果保存 処理の特徴

    毎朝6時に実行 BigQueryに蓄積された1日分のアクセスログをCronJobで集計 集計結果をDynamoDBに書き込み 処理は約1時間かかる 19/31
  7. 障害③ またまたPodが消えて失敗 状況 またPodが消えて障害に 再実行中、動いているPodが消える現場を目撃 K8sによる再起動と判明 プラットフォームチームからの提案 postStartCommand / preStopCommand

    - コンテナ起動前後の処理を記載 Sidecar Container - メインアプリが落ちてもWCU管理を継続 最終対策 データ書き込み時、WCUが既に高ければスキップ リトライ時の冪等性を確保(アプリ側で実装) 26/31
  8. 最後に Ameba K8s基盤の真の魅力 高度な技術基盤(KubeVela / Datadog / Athena / ArgoCD)

    + 献身的なサポート体制 = バックエンドエンジニアが安心して アプリケーション開発に集中できる環境 基盤は、適切な技術導入と手厚いサポートで成り立つ 30/31