AWSのマネジメントコンソール…
金融システムの運用保守や情報システム部門のIT支援などを経て、現在は顧客へのAWS導入・移行の提案、構築などを担当。社内向けの勉強会、技術支援などを実施し、AWSエンジニアの育成にも挑戦中。好きな食べ物はカレーと餃子。
執筆・監修者ページ/掲載記事:6件
こんにちは。エンジニアの中井です。
さて、今回はAWSのAuto Recoveryについてご紹介します。
Amazon CloudWatchは、AWSにおけるモニタリングサービスです。
モニタリング、トラブルシュート、メトリクスの集約、ログの分析、自動アクション、ダッシュボードなどの様々な機能が提供されています。
その中の機能の一つとして、Amazon EC2インスタンスの自動復旧(Auto Recovery)があります。
Auto Recoveryとは、AWSのシステム側に起因する問題で、Amazon EC2インスタンスが起動できなくなった場合に、自動復旧する機能です。
(参考)Amazon EC2 Linuxインスタンス用ユーザガイド「インスタンスの復旧」
ちなみに、Auto Recoveryと記載していますが、コンソールなどで明確にAuto Recoveryと表現されているわけではありません(※)。
CloudWatchアラームのAmazon EC2アクション「インスタンスの復旧」が、Auto Recovery機能です。
※ 新機能発表時のタイトルに使われています。あと、実際に自動復旧が行われた時のメールには記載されています。
(参考)Amazon AWS「Amazon EC2 Auto Recovery now available in the US East (N. Virginia) Region」
改めて、CloudWatchアラームの基本的な仕組みを説明します。
ここではAmazon EC2を例として挙げます。
CloudWatchには、Amazon EC2に関するメトリクス(ステータスやCPU使用率など)が集約されています。
それらのメトリクスに対して、しきい値を定義し、メトリクスがしきい値を超えた場合のアクション(メール通知やインスタンスの操作など)を設定できます。
これがCloudWatchアラームの基本的な仕組みです。
CloudWatchについては、この他にも多数の機能がありますので、詳細は公式ドキュメントをご覧ください。
Auto Recoveryのトリガーには、Amazon EC2そのものの状態に関する「ステータスチェック」のメトリクスが使用されます。
ステータスチェックには、次のとおりシステムステータスチェックとインスタンスステータスチェックの2種類があります。
Auto Recoveryは、システムステータスをトリガーとして、AWSのシステム側に起因する問題を“復旧”します。
(参考)Amazon EC2 Linuxインスタンス用ユーザガイド「インスタンスのステータスチェック」
それでは、実際の設定方法をご紹介します。
大きく次の3ステップが必要です。
なお、インスタンタイプによってはサポートされていない場合があるため、設定の際は、事前に公式ドキュメントの記載をご確認ください。
(参考)Amazon EC2 Linuxインスタンス用ユーザガイド「インスタンスを停止、終了、再起動、または復旧するアラームを作成する」
アラームは、CloudWatchのコンソールから作成します。
「メトリクスの選択」を選択します。
「EC2」を選択します。
「インスタンス別メトリクス」を選択します。
メトリクスが色々と表示されます。「StatusCheckFailed_System」を検索して、対象のAmazon EC2とメトリクスを間違えないように選択します。
メトリクスの条件を次のとおり指定します。ここではAWSのドキュメントで推奨されている値にします。
アクションを設定します。
※ 「通知」は必要に応じてメールのSNSトピックなどを設定します。今回は通知なしで進めます
「EC2アクションの追加」を選択します。
アラーム状態トリガーで「アラーム状態」を、アクションで「このインスタンスを復旧」を選択します。
これがAuto Recovery です。
最後にアラーム名を入力。プレビューを確認すると、作成が完了します。
アラームの詳細画面で、次のようなアクションが設定されていればOKです。
残念ながら、実際のAuto Recovery動作を検証はできません。。
Auto Recoveryの概要と、実際の設定手順の紹介でした。
コンソールから実施すると簡単ですが、大量のインスタンスへの設定は大変ですね。
大規模システムでは、AWS CLIや、AWSクラウドポータルなどで効率的に設定するのが良さそうです。