Your SlideShare is downloading. ×
DevelopersのためのSonicGardenで実践しているシステム運用での11の常識 〜監視編〜
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

DevelopersのためのSonicGardenで実践しているシステム運用での11の常識 〜監視編〜

2,352
views

Published on

SonicGarden Study #06 …

SonicGarden Study #06 で利用したスライド資料です。
今回のテーマは"運用"。
ソニックガーデンではたくさんのサービスを管理・運用しています。
その取組の中で基礎的なことから、他社とはちょっと違う考え方/仕組みなどについて11回の連載で紹介したいと思います。今回はその第1回で監視についてです。

過去の勉強会内容を確認するには以下にアクセス!
http://sonicgarden.doorkeeper.jp/

Published in: Technology

0 Comments
15 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
2,352
On Slideshare
0
From Embeds
0
Number of Embeds
7
Actions
Shares
0
Downloads
17
Comments
0
Likes
15
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. SonicGardenで実践している 安達 輝雄 (Teruo Adachi)
  • 2. 自己紹介 安達 輝雄 (Teruo Adachi) 福岡出身の独身エンジニア 30歳 創業メンバー 昔はバリバリのインフラ屋。 今は開発からインフラまで幅広く対応。 自称フルスタックエンジニア
  • 3. さっそく弟子へ質問。
  • 4. システム運用というと 何を思い浮かべる?
  • 5. 一般的 には... ”サービスを安定稼働させる” ための取り組み全般
  • 6. 安定稼働させるためには 何をすればよい?
  • 7. 監視
  • 8. サービス監視 アクセス不可を検出して早く復旧 させることが目的 特定のURLにアクセスして応答があるかを確認 問題があればメンバーに通知 URL監視 監視サーバ ホスト監視 アプリケーションサーバ 利用者
  • 9. 本当にこれで大丈夫?
  • 10. n 監視サーバが落ちても気づくように n 同一クラウドからの監視にならないように ※ユーザの多い地域からリクエスト URL監視 監視サーバ(外国) 監視サーバ(国内) ホスト監視 アプリケーションサーバ サブ監視サーバ 障害に気づけない事態を回避
  • 11. Availability monitoring
  • 12. 早く復旧させるには n 複数台構成にする n Opsworks や AutoScale などの 仕組みに乗っかる n … etc
  • 13. プロセス監視 想定外のプロセス異常終了を検知 して早く復旧することが目的 特定のプロセスが起動しているかを確認 番犬が監視 Web Server Mail Server Apache Nginx Postfix Sendmail Linux RDBMS Others MySQL Postgresql crond rsyslogd …
  • 14. 本当にこれで大丈夫?
  • 15. 番犬は異常検出時に 任意のコマンドを実行して プロセス再開の仕組みを提供 自動復旧! サーバ起動時の自動起動(systemd services)も忘れずに
  • 16. リソース監視 異常状態に早く気づくことが目的 サーバリソースの状況をモニタリング  Disk / CPU / Memory / Network 閾値に近づいていたらアラート
  • 17. 本当にこれで大丈夫?
  • 18. これと言ってない。。。
  • 19. パフォーマンス監視 低下に気づき、改善する ことが目的 アプリケーションやミドルウェア等の状況を監視 ボトルネック解消のための情報を把握
  • 20. 本当にこれで大丈夫?
  • 21. ボトルネックはわかったけど、 どうやって解消すればいい? 気合!?
  • 22. アプリケーションの パフォーマンス改善
  • 23. NewRelicは本番環境の計測だけでなく 開発においても便利!
  • 24. http://localhost:3000/newrelic
  • 25. ミドルウェアの パフォーマンス改善
  • 26. 基本的には Munin で取得している リソース状況よりボトルネックを判断
  • 27. 基本的には Munin で取得している リソース状況よりボトルネックを判断 ボトルネック改善に時間がかかるなら...
  • 28. 基本的には Munin で取得している リソース状況よりボトルネックを判断 ボトルネック改善に時間がかかるなら... n EC2インスタンス スケールアップ / スケールアウト n EBS IOPSを利用 インフラコストも年々低下
  • 29. エラー監視 いち早く発生したエラーに気づき、 不具合修正することが目的 アプリケーションエラーを検出して通知
  • 30. 本当にこれで大丈夫?
  • 31. 同一構成のstaging環境を準備し、 エラーの再現性/リリース前チェックを実施 サーバスペックは最小限に http://staging.app.com StagingAPサーバ StagingDBサーバ M/Wのバージョンも統一 利用者 http://production.app.com 本番APサーバ 本番DBサーバ
  • 32. バッチ処理などの エラーハンドリングも お忘れなく
  • 33. ここからは世間では あまり聞かない監視項目
  • 34. キュー監視 タスクが溜まっていないかをチェック ・DelayedJob / Rescue / sidekiq ・Postfix Mail queue
  • 35. バックアップデータ監視 データのバックアップがリモートに保存されている ことを確認
  • 36. バックアップの種類はさまざま n 実データのフルバックアップ (tar.gz / zip) n インスタンスのAMI AWS n Data領域のEBS snapshot これら全てを監視!! 他にも... BackupsのsnapshotをS3に転送する機能 on Heroku
  • 37. 監視で利用しているツールのまとめ サービス監視 Nagios / NewRelic プロセス監視 Monit リソース監視 Munin / Monit パフォーマンス監視 NewRelic / Munin エラー監視 AirBrake / Bugsnag / PaperTrail バックアップ監視 自社ツール
  • 38. http://blog.mah-lab.com/2013/04/12/sonicgarden-heroku-2013/
  • 39. プラットフォーム別の監視項目
  • 40. こんな感じで サービスを安定稼働させるための 取り組みを実施してます
  • 41. 当たり前すぎ? 当たり前を疎かにすると 痛い目に遭うかも!?
  • 42. 一般的 には... ”サービスを安定稼働させる” ための取り組み全般 と言いましたが...
  • 43. SonicGarden では... ”サービスを進化させつつ安定稼働させる” ための取り組み全般 なのです。
  • 44. “進化させつつ”を 実現するために Developers の取り組みは
  • 45. n ソースコードのリファクタリング n フレームワークのバージョンアップ を実施するのが当たり前。
  • 46. Operationsでも n システム構成のリファクタリング n OSのバージョンアップ をするのが当たり前??
  • 47. システム構成を変化させるのは リスクが高くて嫌だ・・・
  • 48. この不安を取り除くために serverspec
  • 49. 残念。 お時間です。 続きは次回・・・
  • 50. 今日のまとめ システム運用での11の常識 常識① 監視を怠るべからず
  • 51. ご清聴ありがとうございました。