re: ゼロから始める監視設計
TRANSCRIPT
2
私は誰?
‣ @zembutsu a.k.a. 前佛雅人
- Technology Evangelist 2+ yrs
- Technical Trainer 1 yr
- Data Center Operations Engineer 15+ yrs
興味:運用監視自動化
趣味でOSSやクラウド系の検証・情報発信
- SlideShare http://slideshare.net/zembutsu
- Blog https://pocketstudio.net
Why am I here?
+MasahitoZembutsu
3
‣ ゼロから監視設計できますか?
運用目的を明確化した監視と、非機能要件としてのシステム監視
‣ なぜ私たちは失敗をするのか?
人が介在する以上は不可避なので、手作業を減らしていこう
‣ 「知識×経験」を自動化で更に活かす
自動化は単なるきっかけの1つ
個人は経験の蓄積を、組織は知識の蓄積を
解決したい課題と、対策の提案
運用監視
Operation
Monitoring
―Don't forget. always, somewhere,
someone is fighting for you.
―As long as you remember her.
you are not alone.
忘れないで、いつもどこかで誰かがあなたの為に戦っている。彼女を覚えている限り、あなたは一人じゃない。
(出典:魔法少女まどかマギカ最終話「わたしの、最高の友達」)
8
‣ システム管理 ‣ サイト運用技術
00年代~10年代にかけての監視変遷
System Operator, System Administrator Site Reliability Engineering
(出典)総務省「平成23年通信利用動向調査」http://www.soumu.go.jp/johotsusintokei/statistics/statistics05.html
5,593
6,942
7,730 7,948
8,529 8,754 8,811
9,091 9,408 9,462 9,610
46.3
57.8
64.3 66.0
70.8 72.6 73.0 75.3
78.0 78.2 79.1
0
10
20
30
40
50
60
70
80
90
100
0
1,000
2,000
3,000
4,000
5,000
6,000
7,000
8,000
9,000
10,000
2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011
普
及
率(
%)
利
用
者
数(
万
人)
利用者数 人口普及率
インターネット利用者数と普及率の推移
13
ペットから家畜へ
Architectures for open and scalable cloudshttp://www.slideshare.net/randybias/architectures-for-open-and-scalable-clouds
15
非機能要件としてのシステム監視
• プロセス• システムリソース• ログ• ネットワーク• ハードウェア
サービスレベルの監視
• プロトコル• 応答速度• サービス遷移• セキュリティ
キャパシティ・プランニングトラブル・シューティング
24
運用における失敗
システム稼働前 システム稼働後
• 不適切な運用フロー
• 監視設定漏れorミス
• 通知設定漏れorミス
• 保守時の作業ミス
• 異常時のリカバリ失敗
• 機能しない運用フロー
事前に対策可能な場合が多い 不可避
失敗の共通要素:人的問題
26
ラスムッセンのSRKモデル(人間の行動レベルは、知識→規則→熟練)
WEB版「航空と文化」 教育訓練のメカニズム 黒田 勲http://www.aero.or.jp/web-koku-to-bunka/2006.06.12humanfactor4.htm
余裕がない状態混乱・パニックで事故を起こす
マニュアル通りに事故を起こす
手順省略や思い込みで事故を起こす
レベル毎のミス
27
‣ 障害に強い設計
• 障害時のフェイルオーバなど、自動化の仕組み
‣ 手作業の排除≠完全な運用や監視の自動化
• 自動化ツールの導入
• 手作業が入る場合は、自動テストツールを組みあわせる
– 人がミスしても、その場で発見・リカバリできるように
– 人によるダブルチェックを信用しない
人の失敗を避けるには?
28
‣ 局所最適化は意味が無い
その自動化に価値が無い
自動化システムの維持が目的化してしまう(誰が面倒を見るか)
• 例:田んぼの水管理をシステム化しました
‣ 最悪なパターン
• 自動化投資を終えたので使い続けなくてはいけない(使命感)
– でも、手動に拘り続けるよりはましでは
自動化は目的ではないが、手段の1つ
29
‣ 何のための運用なのかを忘れずに
• ツールに運用や監視の幅を既定されるのは本末転倒
‣ 目的を失いがち
• 誰が使うのか
– (自社|他社)開発 ×(自社|他社)運用
• どのレイヤなのか
– インフラ
– プラットフォーム
– サービス
ツール選定の罠
30
‣ 個人
経験を積む
• インターネット上で実サーバを運用して経験値を積もう
効率化(時間短縮・正確さの追求)ツールの導入
‣ 組織
ドキュメント化
• なぜこのような運用設計・監視設計をしているのか
運用でもテスト文化
知識や経験を適切に活かすためには