【小ネタ】AMIに表示されるOSについての勘違いと実際の動き

小ネタです。AWSマネジメントコンソールからAMIを見てみると、詳細タブの中に、プラットフォームというものがあります。私はつい最近まで、この項目の意味を勘違いしていました。本投稿ではその勘違いについて書いてみたいと思います。
2018.04.26

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

ご機嫌いかがでしょうか、豊崎です。 今回も小ネタです。

AWSマネジメントコンソールからAMIを見てみると、詳細タブの中に、プラットフォームというものがあります。私はつい最近まで、この項目の意味を勘違いしていました。本投稿ではその勘違いについて書いてみたいと思います。

そもそもAMIのプラットフォームってなに?

赤枠で囲ったものが今回の主役、プラットフォーム名です。

このAMIの元になっているEC2のOSはAmazonLinuxで、 AMIを取得すると「Other Linux」と表示されます。

WindowsOSのEC2のAMIには「Windows」と表示されます。

どんな勘違いだったの?

AMIのプラットフォームの箇所には、元となるEC2のOSをAWSが何かしらのロジックで判断を行い、OtherLinuxやWindowsという表示をさせているのだと思いこんでいました。

実際の動き

「AMIを作成するときのAMI名に特定の文字が含まれていること」でプラットフォームに表示されるOSが決まります。

「特定の文字」をわかる範囲で表にしてみました。

OS AMI名に以下文字列を含む プラットフォーム
- centos、CentOS Cent OS
- RedHat、RHEL Red Hat
- ubuntu、Ubuntu Ubuntu
Windows AMI名に関係しない Windows

※Amazon LinuxやSUSE Linuxをプラットフォームに表示させることはできませんでした。

つまり、プラットフォームで判断できるのWindowsかそれ以外かのみであり、それ以外はAMI名に依存します。

さいごに

小ネタでした。長らく勘違いしていました。もし他にもなにかご存知の方がいらっしゃいましたら教えてください。 この記事が誰かのお役にたてば幸いです。