この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。
よく利用する EC2 の RI と、Dedicated Hosts の RI の確認方法の違いをまとめました。同じ RI でも確認方法が異りますので Dedicated Hosts の確認方法を中心にマネージメントコンソールと、AWS CLI からの確認方法を紹介します。
Dedicated Hosts とは
EC2 を物理サーバーとして専有できる Dedicated Hosts という利用方法があります。Dedicated Hosts も RI(Reserved Instance)を利用でき、オンデマンド価格と比べると最大70%割引で購入ができます。
RI 確認方法まとめ
マネージメントコンソールから RI を確認するときはリンクが異なります。
AWS CLI から確認すときはaws ec2 describe-
以降が異なるので注意。
- EC2 の RI 確認コマンド
aws ec2 describe-reserved-instances
- Dedicated Hosts の RI 確認コマンド
aws ec2 describe-host-reservations
RI の有効期限を確認したいとき
一般的な方の EC2 の RI の有効期限を確認したいとき、マネージメントコンソールからなら以下のリンクから確認できます。
AWS CLI からの以下のコマンドで確認できます。
aws ec2 describe-reserved-instances
実行結果は以下のリンクを参照ください。
Dedicated Hosts の RI の有効期限は上記2つの方法から確認できません。Dedicated Hosts も EC2 ではあるのですが管理され方が異ります。
マネージメントコンソールから確認
Dedicated Hosts はリザーブドインスタンスと別のリンクが用意されています。
起動中の Dedicated Hosts のインスタンスをこの画面で確認できます。Dedicated Hosts の RI を確認するときはここからDedicated Hosts の予約をクリックして進みます。
すでに期限切れの RI の例になりますが、この画面で Dedicated Host の RI の購入状況を確認できます。
マネージメントコンソールから確認するときの違い
- Dedicated Hosts の RI 確認は Dedicated Hosts のリンクから確認できる
- EC2 の RI 確認はリザーブドインスタンスのリンクから確認できる
AWS CLI で確認
EC2 の RI 確認コマンドとは異なりますので注意してください。AWS CLI からの以下のコマンドで確認できます。
$ aws ec2 describe-host-reservations
RI がない場合
Dedicated Hosts の RI がないときの出力例
{
"HostReservationSet": []
}
RI が期限内で有効の場合
Dedicated Hosts の RI が2つあったときの出力例
{
"HostReservationSet": [
{
"Count": 1,
"Duration": 31536000,
"End": "2023-08-01T09:00:00+00:00",
"HostIdSet": [
"h-0c12345678901234a"
],
"HostReservationId": "hr-a1234567890123456",
"HourlyPrice": "0.000",
"InstanceFamily": "c5d",
"OfferingId": "hro-o123456789012345a",
"PaymentOption": "AllUpfront",
"Start": "2022-08-01T09:00:00+00:00",
"State": "active",
"UpfrontPrice": "100000.000",
},
{
"Count": 1,
"Duration": 31536000,
"End": "2023-08-01T09:00:30+00:00",
"HostIdSet": [
"h-0c12345678901234b"
],
"HostReservationId": "hr-b1234567890123456",
"HourlyPrice": "0.000",
"InstanceFamily": "c5d",
"OfferingId": "hro-o123456789012345b",
"PaymentOption": "AllUpfront",
"Start": "2022-08-01T09:00:30+00:00",
"State": "active",
"UpfrontPrice": "100000.000",
}
]
}
RI の有効期限切れ
Dedicated Hosts の RI が2つあったが有効期限が切れているときの出力例
{
"HostReservationSet": [
{
"Count": 1,
"Duration": 31536000,
"End": "2022-07-01T09:30:15+00:00",
"HostReservationId": "hr-a1234567890123456",
"HourlyPrice": "0.000",
"InstanceFamily": "c5d",
"OfferingId": "hro-o123456789012345a",
"PaymentOption": "AllUpfront",
"Start": "2021-07-01T09:30:15+00:00",
"State": "retired",
"UpfrontPrice": "100000.000",
"Tags": []
},
{
"Count": 1,
"Duration": 31536000,
"End": "2022-07-01T09:30:30+00:00",
"HostReservationId": "hr-b1234567890123456",
"HourlyPrice": "0.000",
"InstanceFamily": "c5d",
"OfferingId": "hro-o123456789012345b",
"PaymentOption": "AllUpfront",
"Start": "2021-07-01T09:30:30+00:00",
"State": "retired",
"UpfrontPrice": "100000.000",
"Tags": []
}
]
}
リージョンを変更してみる
Dedicated Hosts の RI 確認はリージョン毎に確認が必要です。
ap-northeast-1
で確認していたものをus-east-1
に変更しました。us-east-1
では Dedicated Hosts の RI は購入しておりません。
$ export AWS_DEFAULT_REGION="us-east-1"
$ aws ec2 describe-host-reservations
{
"HostReservationSet": []
}
期待どおりの結果です。
AWS CLI から確認するときの違い
- Dedicated Hosts の RI 確認コマンド
aws ec2 describe-host-reservations
- EC2 の RI 確認コマンド
aws ec2 describe-reserved-instances
おわりに
以下のリンクで紹介している RI 期限切れ通知の対象にDedicated Hosts の RI は含まれていません。ご注意ください。
AWS CLI や、SDK を用いた定期確認の仕組みを実装するか、前もってカレンダーに登録など何かしらで Dedicated Hosts の RI を管理すれば適切な運用ができるかと思います。