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
南條綾乃
March 13, 2023
Technology
0
620
cronworkflowを用いた バッチ障害時の運用改善
南條綾乃
March 13, 2023
Tweet
Share
More Decks by 南條綾乃
See All by 南條綾乃
Linux初心者がAmazon Linux 2023への移行に奮闘した話
ayanonanjo
1
830
Other Decks in Technology
See All in Technology
ハッカソンから社内プロダクトへ AIエージェント ko☆shi 開発で学んだ4つの重要要素
leveragestech
0
560
2025年の医用画像AI/AI×medical_imaging_in_2025_generated_by_AI
tdys13
0
300
産業的変化も組織的変化も乗り越えられるチームへの成長 〜チームの変化から見出す明るい未来〜
kakehashi
PRO
1
300
純粋なイミュータブルモデルを設計してからイベントソーシングと組み合わせるDeciderの実践方法の紹介 /Introducing Decider Pattern with Event Sourcing
tomohisa
1
590
松尾研LLM講座2025 応用編Day3「軽量化」 講義資料
aratako
15
4.9k
AIと融ける人間の冒険
pujisi
0
110
AI駆動開発ライフサイクル(AI-DLC)の始め方
ryansbcho79
0
290
ソフトウェアエンジニアとAIエンジニアの役割分担についてのある事例
kworkdev
PRO
1
370
投資戦略を量産せよ 2 - マケデコセミナー(2025/12/26)
gamella
1
610
Redshift認可、アップデートでどう変わった?
handy
1
130
RALGO : AIを組織に組み込む方法 -アルゴリズム中心組織設計- #RSGT2026 / RALGO: How to Integrate AI into an Organization – Algorithm-Centric Organizational Design
kyonmm
PRO
3
700
ルネサンス開発者を育てる 1on1支援AIエージェント
yusukeshimizu
0
130
Featured
See All Featured
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.6k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
51k
The SEO identity crisis: Don't let AI make you average
varn
0
46
It's Worth the Effort
3n
187
29k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
2.7k
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
330
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.3k
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
40
Large-scale JavaScript Application Architecture
addyosmani
515
110k
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
1
1.3k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
76
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件ずつメールを送信 参考: