Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
cronworkflowを用いた バッチ障害時の運用改善
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
南條綾乃
March 13, 2023
Technology
0
620
cronworkflowを用いた バッチ障害時の運用改善
南條綾乃
March 13, 2023
Tweet
Share
More Decks by 南條綾乃
See All by 南條綾乃
Linux初心者がAmazon Linux 2023への移行に奮闘した話
ayanonanjo
1
860
Other Decks in Technology
See All in Technology
GitLab Duo Agent Platform + Local LLMサービングで幸せになりたい
jyoshise
0
100
Evolution of Claude Code & How to use features
oikon48
1
190
Agentic Software Modernization - Back to the Roots (Zürich Agentic Coding and Architectures, März 2026)
feststelltaste
1
170
Security Diaries of an Open Source IAM
ahus1
0
200
トップマネジメントとコンピテンシーから考えるエンジニアリングマネジメント
zigorou
3
530
AIエンジニア Devin と歩む、自律型運用プロセスの構築
a2ito
0
680
JAWS DAYS 2026 CDP道場 事前説明会 / JAWS DAYS 2026 CDP Dojo briefing document
naospon
0
140
Serverless Agent Architecture on Azure / serverless-agent-on-azure
miyake
1
150
大規模サービスにおける レガシーコードからReactへの移行
magicpod
1
130
型を書かないRuby開発への挑戦
riseshia
0
180
ビズリーチにおける検索・推薦の取り組み / DEIM2026
visional_engineering_and_design
1
100
Devinを導入したら予想外の人たちに好評だった
tomuro
0
880
Featured
See All Featured
WCS-LA-2024
lcolladotor
0
470
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
0
170
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.3k
The Curious Case for Waylosing
cassininazir
0
260
Building Applications with DynamoDB
mza
96
6.9k
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
99
Chasing Engaging Ingredients in Design
codingconduct
0
130
Ruling the World: When Life Gets Gamed
codingconduct
0
160
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
55k
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
79
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.2k
Transcript
cronworkflowを用いた バッチ障害時の運用改善 氏名: 南條綾乃 2023/03/13 Kubernetes Novice Tokyo #23
自己紹介 名前: 南條綾乃 会社: 株式会社NTTデータ(2021年入社) 業務: バックエンド開発 実家で飼っている柴犬と亀
バッチの良い運用設計とは?
良い運用設計とは 回復性 可観測性 管理力 処理の進行状態を把握できるか 処理の完了状態を把握できるか 障害を検知し適切な行動を選択できるか 容易に再実行が可能か 参考: https://www.yamarkz.com/blog/implementation-practices-for-batch-processing
CNCF Cloud Native Definition v1.0より項目抜粋 実行コストが少ないか
しかし、これまでは... 回復性 可観測性 管理力 処理の進行状態を把握できるか 処理の完了状態を把握できるか 障害を検知し適切な行動を選択できるか 容易に再実行が可能か 参考: https://www.yamarkz.com/blog/implementation-practices-for-batch-processing
CNCF Cloud Native Definition v1.0より項目抜粋 実行コストが少ないか APを修正して から実行 手動で 再実行 手動で 再実行
cronworkflowを用いて "バッチの良い運用設計"を 目指したので、その取り組みにつ いてLTさせていただきます!
cronworkflowって何?
cronworkflowとは Kubernetes上で実行されることを想定したワークフローエンジン である、argo workflowの一種 KubernetesのCRD(Custom Resource Definition)として実行 cronjobと同じ設定を使用し実行可能
何を実施したの?
実施したこと ・障害時に動かす処理をコマンドライン引数で管理 ・障害時にバッチを自動実行
実施したこと
というのも.. これまでの障害時の運用 ・手動でバッチを再度実行 ・障害時用のバッチのイメージを読み込み直して再デプロイ
管理コストが少ないか これまでの問題の解決 回復性 可観測性 管理力 処理の進行状態を把握できるか 処理の完了状態を把握できるか 障害を検知し適切な行動を選択できるか 容易に再実行が可能か 参考:
https://www.yamarkz.com/blog/implementation-practices-for-batch-processing CNCF Cloud Native Definition v1.0より項目抜粋 APを修正 しない仕組み 自動で 再実行 手動で 再実行
以下のようなイメージ 障害時に障害用のバッチを自動で実行させる 障害時 別のAP
マニフェストファイル どんなん?
設定の全容
障害発生時 通常時 helmfileで設定時は、 コメントアウトのように記載
コマンドライン引数での 処理の管理って?
コマンドライン引数での処理の管理 execを定義 (defaultは空) ここで、モードにより 呼び出したいメソッド を変える
ここまでで 回復性、管理力は解決!
実行コストが少ないか では.. 回復性 可観測性 管理力 処理の進行状態を把握できるか 処理の完了状態を把握できるか 障害を検知し適切な行動を選択できるか 容易に再実行が可能か 参考:
https://www.yamarkz.com/blog/implementation-practices-for-batch-processing CNCF Cloud Native Definition v1.0より項目抜粋 APを修正 しない仕組み 自動で 再実行 手動で 再実行
可観測性は どうやって解決してるの?
Healthchecksで解決!
Healthchecksとは ジョブの「起動状態」を監視するサービス ※実行状態は監視しない(AP内部でエラーetc) 予定していた時刻にジョブが正常起動したか ジョブの想定実行時間よりも実行時間が長くなっていないか
運用イメージ workflow開始時に Started 終了したら OKが届く メールやチャット、 PagerDutyとの 連携も可能
どうやって使うの?
heathchecksとの疎通方法 runitorコマンドを使用 払い出したuuidを設定 -execで実行するmodeを設定
デモします!
デモ ①通常実行 ②通常実行→障害発生→障害時のAP実行
デモ
実行コストが少ないか まとめ 回復性 可観測性 管理力 処理の進行状態を把握できるか 処理の完了状態を把握できるか 障害を検知し適切な行動を選択できるか 容易に再実行が可能か 参考:
https://www.yamarkz.com/blog/implementation-practices-for-batch-processing CNCF Cloud Native Definition v1.0より項目抜粋 APを修正 しない仕組み 自動で 再実行
ご静聴 ありがとうございました!
リマインド機能について 企業 エンドユーザー リンクを発行 リンクで登録などを実施 リンクの期限1日前にリマインドメール 参考:
詳細 リマインド対象のリンクを DBから取得 該当するリンク所有者に 1件ずつメールを送信 参考: