AWS(アマゾンウェブサービス)は200種類以上のさまざまなサービスがあり、AWS AMIと聞いただけでは、何に活用できる機能なのかわからない方も多いのではないでしょうか。
「AWS AMIとは何ができるの?」
「AWS AMIの活用方法が知りたい」
AWS AMIは、EC2インスタンスの起動に必要な構成をまとめたテンプレートのようなものです。
うまく使えるとサーバー構築にかかる作業時間を短縮できるようになるでしょう。
本記事では、AWS AMIのサービス概要や料金、活用方法についてAWS初心者の方でもわかりやすく解説しています。
※AWS AMIについて、本来は「AMI」と呼ばれます。
以降の本文では「AMI」と記載します。
AWS AMIとは何?
AMI(Amazon Machine Image)とは、AWSが提供する仮想サーバサービス(Amazon EC2)を構築するときに利用するテンプレートです。
AMIには、以下の基本構成がパッケージとして含まれています。
- OS(オペレーティングシステム)
- アプリケーション
- EBSスナップショット
- AMIを使用したEC2インスタンスの起動許可・共有設定
特定のOSや環境設定が行われたEC2インスタンスを複数起動したい場合、AMIを使用すると迅速にサーバーを構築することが可能になります。
EC2インスタンスの起動許可・共有設定を登録しておくと、インスタンスを管理する人だけが起動できるなどの権限設定が行えます。
さらに、AMIを使用するとEC2インスタンスに加えられた変更を元にバックアップも作成できるため、サーバーに障害が発生したとき迅速に修復可能です。
※EC2インスタンスとは
Amazonが提供している仮想サーバーサービス「Amazon EC2」上で立ち上げた仮想サーバーのこと。
AWS AMIを構成する要素は4つ
AMIを構成する要素は下記の4つです。
それぞれの構成要素について、順番に解説します。
1.OS(オペレーティングシステム)
AMIを構成する要素の1つが「OS(オペレーティングシステム)」です。
OSはパソコンやアプリケーションを使用するために必要な基本ソフトウェアで、仮想サーバー上で利用するアプリを動作させるために必要となります。
仮想サーバーを構築するために使用できるOSは、以下のとおりです。
- Windows Server
- macOS
- Linux
仮想サーバー構築に必要な機能に合わせて、適切なOSを選びましょう。
2.アプリケーション
AMIでは、仮想サーバー上で動作させるアプリケーションを事前にインストールできます。
- WordPress
- SQL Server
- .NET 6.0
- PowerShell
- Office Professional Plus
WordPressやSQL Serverなど、サーバー構築に必要なアプリケーションを毎回手動でインストールするのは時間がかかります。
しかし、アプリケーションが含まれるAMIを利用するとインストールする手間がなくなり、迅速にサーバー構築ができるでしょう。
3.EBSスナップショット
EBSスナップショットとは、いわばEBSボリュームのバックアップです。
EBSスナップショットはEBSボリュームから手動で取得することもできますが、AMIを作成するとEC2インスタンスにアタッチされているEBSのスナップショットが同時に作成されます。
AMIから新たなEC2インスタンスを起動する際、EBSスナップショットからEBSボリュームが復元され、EC2にアタッチされた状態で起動します。
これにより、OSの設定やアプリケーション、その他データを保持した状態でEC2インスタンスを起動することができます。
4.AWS AMIの起動許可・共有設定
AMIを使用したEC2インスタンスの起動許可・共有設定も、テンプレートに含まれる構成要素です。
EC2インスタンスではセキュリティ上の問題を回避するため、起動許可やAMIの共有設定を保存できます。
誰でもAMIからEC2インスタンスを起動できてしまうと、意図しない変更や悪意のある操作などが行われる恐れもあるためです。
手動による設定ミスを防ぐための便利機能として活用できます。
AWS AMIの特徴は3つ
AMIの特徴は、下記の3つです。
1.仮想マシンを効率的に展開できる
AMIを活用すれば、仮想マシンを効率的に展開できるようになります。
システム構築では、仮想マシンが何台も必要になるケースもあります。
その際、AWS AMIなどのテンプレートがなければ、仮想マシンごとに何度も同じ環境設定を行わなければいけません。
しかし、AMIを利用すれば、基本となる初期設定を行う手間や時間を省けます。
インスタンス作成の工数を削減できることにより、必要な仮想マシンの展開スピードも大きく向上するでしょう。
2.同じ動作環境でアプリケーションを実行できる
AMIは、同じ動作環境を構築してアプリケーションを実行できます。
AMIでインスタンスを作成すると、まったく同じ動作環境の仮想サーバーを構築可能です。
そのため、サーバー利用者に「Aのサーバーではできるのに、Bのサーバーではできない」などのストレスを与えることなく、アプリケーションの実行環境を提供できるのです。
3.バックアップ機能
AMIには、EC2インスタンスのバックアップを作成する機能があります。
AMIを利用してバックアップを取ったときの主な特徴は、下記のとおりです。
- バックアップを作成できる
- バックアップしたAMIを使用してEC2インスタンスの再作成ができる
- リストア時にインスタンスタイプなどを変更できる
EC2インスタンスを指定して「イメージの作成」を行うと、AMIを作成できます。
イメージを作成した状態のEC2インスタンスをいつでも起動できるようになり、EC2インスタンスの複製や復旧がスムーズに行えるようになります。
AWS AMIの4つの種類
AMIの種類は以下の4つです。
AMIの種類について解説します。
1.クイックスタート AMI
クイックスタートAMIは、AWS公式によってあらかじめ用意されている構成を指定してEC2インスタンスを作成できるAMIです。
サービスを実行するために必要なOSやアプリケーションが事前にインストールされており、迅速にEC2インスタンスを実行できます。
クイックスタートAMIに用意された構成から利用できる主なOSは、下記の7つです。
- Windows Server
- macOS
- Amazon Linux
- Ubuntu
- Red Hat
- SUSE Linux
- Debian
仮想サーバーの構築要件に合うOSがある場合は、クイックスタートAMIを利用すると簡単に環境構築できます。
2.カスタム AMI
カスタムAMIは、自分で保存したAMIや、ほかのアカウントから共有されたAMIを使用できるAMIです。
独自に設定変更したテンプレートを使用してEC2インスタンスを作成したい場合に利用します。
カスタムAMIは、AWSに登録しているEC2インスタンスから作成可能です。
作成したAMIは、設定により自身のアカウントだけではなく、ほかのアカウントと共有できます。
3.AWS Marketplaceで提供されているAMI
AWS Marketplaceで提供されているAMIは、AWSのパートナー企業によって作成されたAMIです。
AWS Marketplaceで提供されているAMIを使用する利点は、以下のとおりです。
- データベースやアプリケーションなどがインストールされている
- 企業が提供するAMIであるため、信頼性が高い
WordPressやSQL Serverなど、サーバー上で使用するアプリケーションがインストールされているため、構築作業をより簡略化することも可能です。
4.コミュニティAMI
コミュニティAMIは、AWSを利用しているユーザーが作成したAMIです。
AMIの共有設定を有効にしたとき一般公開され、ほかのユーザーに見えるようになります。
コミュニティAMIの特徴は、下記のとおりです。
- 有志が公開したAMIを誰でも利用可能
- AWSが審査したものではないため信頼性が低い
誰でも利用可能な一方で、AWS公式が審査していないため信頼性は低いです。
信頼性の低いAMIでは、不具合や脆弱性も含まれる可能性があるため、本番環境で使用するとセキュリティや安定性に関するリスクが伴います。
AWS AMIの利用料金
自分でAMIを作成する作業のみであれば、料金は発生しません。
ただし、以下の場合は料金が発生する可能性があります。
- カスタムAMI利用時にAmazon EBSのスナップショットが作成された場合
- AWS Marketplaceで提供されているAMIを使用する場合
スナップショットとは、EBSボリュームからデータをコピーしてS3に保管したものです。
ストレージにデータが保存されることにより、ストレージ利用料が発生します。
EBS | 汎用 SSD (gp3) – ストレージ 0.096USD/GB 月(東京リージョン) |
---|---|
EBSスナップショット | スタンダード 0.05USD/1か月あたりの GB(東京リージョン) |
AWS Marketplaceで提供されているAMIを利用した場合は、以下の形式で料金体系に応じた費用が発生します。
Free Trial | 指定された期間内なら無料 |
---|---|
Hourly | 時間ごとやユーザーごとで金額が変わる |
Annual/MultiYear | 月額払いで月額費用に割引が得られる料金体系 |
Private Offers | 交渉した金額を支払う方式 |
AWS AMIからインスタンスを作成する際の注意点
AMIからECインスタンスを作成する際の注意点は、下記の3つです。
AMI取得時はEC2インスタンスを停止する
AMI取得時は、EC2インスタンスの停止が推奨されています。
EC2インスタンスを停止する理由は、ファイルシステムの不整合につながる可能性があるためです。
AWS公式ドキュメントでも「[再起動しない] を選択した場合は、作成されたイメージのファイルシステムの整合性は保証されません。」と記載されています。
データの一貫性を最大限確保する目的だけであれば、EC2インスタンスを停止して作業した方がよいでしょう。
ただし、システムが稼働している状態でEC2インスタンスを停止させると、障害につながる恐れもあります。
AMIにはEC2インスタンスを無停止で作成する機能も備えているため、状況に合わせて活用しましょう。
起動元となるインスタンスの構成と同じ設定にする
AMIからEC2インスタンスを起動する場合は、できる限り起動元となるEC2インスタンスと同じ設定に合わせておきましょう。
設定を合わせていないときの影響は、以下のとおりです。
- EC2インスタンスが正常に起動しない
- EC2インスタンスの動作が安定しない
たとえば、EC2インスタンス起動時にインスタンスタイプを変更してアーキテクチャが「arm64」から「x86_64」変わった場合です。
対策していなければEC2インスタンスの起動に失敗するケースがあります。
ほかにも拡張ネットワーク(ENA)の要否によっては、ENA ドライバーまたはixgbevf ドライバーをインスタンスにインストールしておかなければいけません。
AMIを利用しない場合は削除する
利用しないAMIがある場合は、できる限り削除しておきましょう。
AMIを削除する理由は、残しておくだけで課金対象となるものがあるためです。
課金対象となるパターンは下記の2つです。
- AMI自体に費用が発生する場合
- EBSスナップショットを残している場合
余分な費用を発生させないため、課金対象となるデータが削除できているか注意しておきましょう。
AWS AMIについて理解して環境構築を簡単にしよう
本記事ではAMIとは何かについて解説しました。
- サーバー構築作業を効率化するためのテンプレート
- OSやEBSなどサーバーに必要な構成が入っている
AMIは、サーバー構築の作業効率を向上させる便利なテンプレートです。
複数のサーバー環境を構築する時間は大きく短縮できるため、使いこなせるよう機能について理解を深めておきましょう。
RaiseTechでは、AWSのスキルが身に付けられるAWSフルコースを受講できます。
AWSについて興味がある方は、RaiseTechのLINEもぜひ登録してみてください。
\IT業界の最新情報を無料で入手/