つい先日、私が使っているEC2がリタイアメントしますよーと通知が来ました。折角ですので、今回はEC2のリタイアメントについて解説していこうと思います。
目次
リタイアメントとは何?
retirementをそのまま日本語にするとこの通り。
(定年などによる)退職、退役、退職後の期間、引退、隠居
引用元:weblio
EC2のリタイアメントも同じことで、退役することを意味します。EC2インスタンスは、AWSデータセンターの物理サーバ上で稼働しています。物理サーバのHWに回復不可能な障害が検出されたときに、AWS側から「このHWもう復旧出来ないから、物理サーバをいついつまでに移動させてください。その日以降は削除されちゃいますよ」と通知が来ます。公式ドキュメントには以下のように記載されています。
インスタンスをホストしている基盤のハードウェアで回復不可能な障害が検出されると、AWS によってインスタンスのリタイアが予定されます。予定されたリタイア日になると、インスタンスは AWS によって停止または削除されます。
引用元:インスタンスのリタイア
どんな通知が来るのか
デフォルトでは、ルートユーザのEmailアドレスに以下内容が届きます。
件名
Amazon EC2 Instance Retirement [AWS Account: ************]
本文
Hello,
EC2 has detected degradation of the underlying hardware hosting your Amazon EC2 instance (instance-ID: i-*****************) associated with your AWS account (AWS Account ID: ************) in the ap-northeast-1 region. Due to this degradation your instance could already be unreachable. We will stop your instance after ****-**-** **:**:** UTC. Please take appropriate action before this time.The affected instances are listed below:
i-*****************You can find more information about retirement events scheduled for your EC2 instances in the AWS Management Console https://console.aws.amazon.com/ec2/v2/home?region=ap-northeast-1#Events
You can also customize your event notification to include tags associated with your EC2 instances. For more information about customizing your event notifications see the EC2 user guide https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/monitoring-instances-status-check_sched.html#customizing_scheduled_event_notifications
重要な部分を赤字にしました。ざっくり日本語訳すると大体こんな感じです。
インスタンス(i-*****************)がHW障害起因でリタイアされるよ。もしかするともう到達不能かもしれないよ。****-**-**までに対応してね。
メール通知以外での確認方法
Personal Health Dashboardで確認
マネジメントコンソールにログインして、Personal Health Dashboardからこのように確認できます。
・ダッシュボード画面(Scheduled changesが「1」になっている。)
・Event logを見るとこのように通知が届いている。この通知を開けると、メールと同じ内容が書いてあります。
AWS CLIで確認
CLIで「describe-instance-status」を確認すると、以下のようになっています。赤文字のEventsの部分にリタイア通知が確認できます。(リタイア予定がない場合、Eventsには何も入りません)
$ aws ec2 describe-instance-status
{
"InstanceStatuses": [
{
"AvailabilityZone": "ap-northeast-1a",
"Events": [
{
"InstanceEventId": "instance-event-*****************",
"Code": "instance-stop",
"Description": "The instance is running on degraded hardware",
"NotBefore": "yyyy-mm-ddT00:00:00+00:00"
}
],
"InstanceId": "i-*****************",
"InstanceState": {
"Code": 16,
"Name": "running"
},
"InstanceStatus": {
"Details": [
{
"Name": "reachability",
"Status": "passed"
}
],
"Status": "ok"
},
"SystemStatus": {
"Details": [
{
"Name": "reachability",
"Status": "passed"
}
],
"Status": "ok"
}
}
]
}
対応方法
とても簡単です。EC2インスタンスを停止して開始するだけです(再起動ではだめです)。これをすることで、物理サーバが移動し、対応が完了です。なお、物理サーバ情報は確認できないので移動したかは分かりませんが、Personal Health Dashboardを確認すると、Scheduled changesが「1⇒0」に変わります。
公式ドキュメントはこちら:インスタンスの停止と起動
EC2インスタンスが止まるーーと慌てず対応しましょう。また、EC2を使う以上リタイアメントは発生しますので、運用開始前にリタイアメント発生時の対応方法は設計しておくべきです。
最後に。初心者に役立つ本の紹介
AWSはとても幅が広く、検索等で部分的に理解することは出来ても全体を体系的に理解することが難しいです。公式ドキュメントを上から順に読んでいくことで理解が深まりますが、資格取得の書籍等で勉強することをお勧めします。
なぜ資格取得の書籍かというと、重要な部分を浅く抑えているからです。全体を体系的に浅く押さえておき、深く知る必要があるときに色々調べたり、試したりするとバランスのよいAWSエンジニアになれると思います。このあたりの書籍が分かりやすくおすすめです。
AWS認定資格試験テキスト AWS認定ソリューションアーキテクト – アソシエイト 改訂第2版 [ NRIネットコム株式会社 ] 価格:2,618円 |
みんなのAWS 〜AWSの基本を最新アーキテクチャでまるごと理解! [ 菊池 修治、加藤 諒 ] 価格:2,618円 |
改訂新版 徹底攻略 AWS認定 ソリューションアーキテクト – アソシエイト教科書[SAA-C02]対応 [ 鳥谷部 昭寛 ] 価格:2,618円 |
コメント