クラウドインフラストラク チャーの監視テクニック ~AWSサービスとZabbixのシナジー~ 2015/04/22 AWS運用管理フォーカスセミナー 自己紹介 2008年:Zabbixの検証・構築 2009年:Zabbixのレクチャーやノウハウの発表 2014年:からはサーバーワークスのZabbixスペシャリストとして、 AWS上での運用監視・Zabbix自動化を中心に運用提案などを実施。 TwitterID:@qryuu 好きなAWSサービス :RDS、SES、S3 Slideshere:全自動Zabbix 株式会社サーバーワークス クラウドインテグレーション部 運用1課 Zabbixスペシャリスト 伊藤 覚宏 2 目次 1. ZabbixとAWSの親和性(弊社実例) 2. CloudWatch監視手法(弊社実例) 3. 運用での注意点 4. T2インスタンスとZabbixの組み合わせ 5. ZabbixのIOPS 3 ZabbixとAWSの親和性 ~監視自動化~ 4 ZabbixとAWSの親和性 AWS環境には多様な自動構成機能があります。 Auto Scaling CloudFormation OpsWorks Elastic Beanstalk 5 ZabbixとAWSの親和性 動的構成を監視するにはZabbix APIを使う方法が 提案されます。 AWSでは自動化手法が多岐にわたる。 どの方式にも対応する Zabbix側の機能で対応する方法がおすすめです。 6 2種類の自動化アクション Zabbixサーバ 自動登録 Zabbixエージェント ディスカバリ Zabbixエージェント ポート応答 SNMPエージェント Ping応答 7 インスタンス自動登録 インスタンス自動登録 1. Zabbix_agnetインストール済みのAMIを作成 スタック設定を行う デプロイ設定を行う 2. Zabbixの自動登録アクションによる インスタンス自動登録。 3. インスタンス起動と同時に監視開始。 8 インスタンス自動登録 9 インスタンス自動削除 インスタンス自動削除 1. ディスカバリ機能による自動削除 2. ディスカバリアクションにより監視停止 監視対象削除を段階的に行う事が可能 10 インスタンス自動削除 11 インスタンス自動削除 ディスカバリ設定 1. ディスカバリ機能は設定された範囲を 指定されたプロトコルで探査する。 2. 無応答の場合 Timeoutになるまでまでwaitかかる 3. NW範囲を適切に設定する必要がある。 4. 設定件数分のDiscoveryProcessが必要 12 インスタンス自動削除 13 ZabbixとAWSの親和性 ~高可用性Zabbix~ 14 RDSによる高可用性DBとDBバックアップ Zabbixの特性 confやscriptは起動時や動作時に読み込まれる。 AMIによるバックアップによる不整合が起起こらない 監視設計、監視データ、検知イベント、 監査ログ、ユーザ情報等 ほぼすべてのデータがRDBMSに記録されている。 15 RDSによる高可用性DBとDBバックアップ ZabbixServer AutoScalingによるAuteHealing ZabbixDB MultiAZ RDS高可用性 16 ZabbixとAWSの親和性 ~性能要件の可視化~ 17 RDSによるDB負荷の可視化 ZabbixはRDBMSへの書き込みが負荷の大半 オンプレミスの場合 ディスクの回転数やストレージの接続速度が性能目安 AWSの場合 明示的にIOPSが測定される。 必要なIOPS性能を指定することができる。 18 CloudWatch監視手法 19 CloudWatchMetricsの取り込み CloudWatchはインスタンス情報=外部情報 ZabbixAgentはOS内部の内部情報 ZabbixとCloudWatchを組み合わせ 的確なインスタンスタイプ選択や 安定的な運用が可能 Zabbixは様々な拡張機能を持っているため、スクリ プトなどによってCloudWatchの値をZabbixに取り 込むことが可能です。 CloudWatchMetricsの取り込み Zabbixの様々な拡張機能 スクリプトなどによってCloudWatchの値をZabbix に集約可能。 CloudWatchMetricsの取り込み Zabbix外部スクリプトでCloudWatc APIを実行 小規模な環境向け 大量のAPIコールが必要場合API応答待ち時間が 負荷となる。 ServerworksではZabbix CloudWatch連携システム z-cwarchの開発 CloudWatchMetricsの取り込み 23 CloudWatchMetricsの取り込み 24 運用での注意点 25 ログ監視の注意点 Zabbixのログ監視機能 正規表現フィルターログ ローテーションへの対応 秒間1000行を超えるような大量のログ RDBMSへの書き込み性能ボトルネックとなる Cloudwatchlogs ログストリーム 最大 5 リクエスト/秒 ログ監視の注意点 適切なフィルタリングを行う ログ監視とログ分析を混同しない デバッグログを監視しない 気付きづらいリソース枯渇 28 T2インスタンスとZabbix T2インスタンス 常時または一貫して CPU をフルに使用する わけではないが、バーストが必要なことがあるワーク ロード向けに用意されています。 CPUクレジット: インスタンス ベースラインパフォーマンス 最大 CPU クレジット タイプ (CPU 使用率) バランス t2.micro 10% 144 t2.small 20% 288 t2.medium 40% 576 29 T2インスタンスとZabbix クレジットが枯渇した場合のCPU使用率 CloudWatch:ベースライン性能でフラット Zabbix:CPUstealとして測定 T2インスタンスを使用する場合 ZabbixのCPUstealやCloudWatchでの CPUクレジット監視が必須 30 RDSのIOPS不足検知 IOPS性能が枯渇した場合 接続は出来るがデータが書き込めない CPU使用率やMemory使用率は枯渇しないため、 リソースの不足に気づきにくい。 31 RDSのIOPS不足検知 RDSのIOPSが高い値でフラットになっている場合 IOPSが上限に達している可能性が高い。 プロビジョンド IOPSやSSDサイズの拡張が必要 32 RDSのIOPS不足検知 IOPS 見るべき値 Queue Depth 33 本日のまとめ ZabbixとAWSの親和性 自動化 エージェント自動登録と ディスカバリーによる削除 AWSによる高可用性Zabbix CloudWatchデータのZabbixへの取り込み 運用での注意点 ログフィルタリング CPUクレジット枯渇、IOPS枯渇 34 ありがとうございました 最後までご覧下さいまして、誠にありがとうございました 私たちが有するZabbix on AWSやAWS運用に関する経験、ノウハウは 必ずや皆様のご期待に応えられるものと確信しております。 AWSの運用監視についてのご相談をぜひご検討ください。 ▶本資料のお問い合わせ先 株式会社サーバーワークス クラウドインテグレーション部 Tel : 03-5579-8029 Mail : [email protected]
© Copyright 2024 ExpyDoc