バナー画像

AWSでマシンを作るのは簡単であることは、本サイトでもご紹介したとおりです。では何台も同じマシンを作るとすればどうでしょうか?作業手順書を作るのもよいでしょう。しかしさすがに何回も同じことをするのは・・・面倒ですし、生産的じゃないですよね。

いっそマシンのひな形があったらマシン量産できるのに、そう考えるのは当然です。それが・・・あるんです!AWS AMIというサービスです。

自分で稼働中のマシン(=インスタンス)からひな形(=AMI)を作れますし、MarketPlaceから他の人が作ったものを購入できます。さらに、自分の作ったひな形を販売できます!

本記事では、Amazon Machine Image(AMI)を解説します。

AWS AMIとは

AMIとは、クラウドの仮想サーバーであるインスタンスの起動に必要な情報を提供します(AWSの解説より)。つまり、どういったインスタンスを立ち上げるのかという情報です。

インスタンス立ち上げ時にAMIを指定して、求める仕様を満たすインスタンスを簡単に立ち上げられるというわけです。

AMIのメリット

仕様をAMIに保存できるので、作業手順の誤りによってインスタンスの設定にバラツキが出るのが防げます。よって、作業者の力量によらず、作業品質が保てます。作業手順書も必要なくなるので、ドキュメントのメンテナンス工数が削減できます。

その他、インスタンスの仕様をテンプレ化できることによるメリットは計り知れないものがあります。

AWS AMIの取得方法

インスタンスを立ち上げるときに、どこからAMIを取得するのか、どんな方法があるのか解説します。AWSマネジメントコンソールに表示される順で解説します。

普通に立ち上げたときでも・・・

AMIはそれぞれに振られた「ami-」で始まるIDを持っています。ところで、クイックスタートの画面をよく見てみると、すべて「ami-」で始まっています。つまり普通に立ち上げるときも、実はAMIを指定しているのです。

上位に出てくるAmazon Linux AMIは、Amazonが開発したLinuxのAMIなのです。

マイAMIと共有AMI

自分が作成したマイAMIと、他人(つまり別のAWSアカウントの、という意味)が共有してくれた共有AMIからインスタンスを立ち上げることができます。

AWSマーケットプレース(Marketplace)

AWS Marketplaceには、SAPやMicrosoft製品がセットアップされたAMIや、OSS製AMIが多数あります。無料のものもあれば有料もあります。

コミュニティAMI

コミュニティで公開されているAMIもあります。ご覧いただいてお分かりのとおり、とても多数のOSが公開されています。

以下のような意外なAMIも公開されていました。ディープラーニングで有名なTensorFlow(テンソルフロー)の環境込みのUbuntuとのこと。とても今時ですね。

その他、Kali Linuxなどなど、本当にさまざまな人が独自のものを公開しています。TensorFlowに限らず、自分が欲しいマニアックなAMIを検索してみるのも良いかもしれません。

AWS AMIの作り方

AMIのライフサイクルを俯瞰しつつ、実際に作ってみましょう。アイコンはAWSシンプルアイコン<リンク:AWSシンプルアイコンで「魅せる」ドキュメントを書こう!>を使いました。

まずはインスタンスを立ち上げて、自分仕様にカスタマイズします。そこからAMIを作成します。それがAMI #1です。もちろん、使わなくなったら登録解除(削除)できます。

AMI #1からインスタンスを起動できます。インスタンス #1です。

AMIそのものをコピーすることも可能です。それがAMI #2です。

AMIの利用サイクルの全体イメージ、つかめましたか?

では実際に作ってみましょう。インスタンスをすでに作成した前提で解説を進めます。

マネジメントコンソールから、インスタンスを右クリックします。表示されたコンテキストメニューの中の「Create Image」を選択します。

表示される画面で、必要事項を入力してください。

以上で完了です。作成したマイAMIはに表示されます。

これで完成です。簡単でしたね。

作ったAWS AMIの共有方法

自分が作ったAMIを、他の人へ共有しましょう。マネジメントコンソールより、EC2→イメージ→AMIと進み、作成したAMIを見つけてください。見つけたら右クリックして、「アクセス許可」タブの「編集」ボタンがあります。それをクリックしてください。

をクリックしてください。そこで共有したいAWSのアカウント番号を入力すればOKです。ちなみにアカウント番号とは、マネジメントコンソールのアカウント画面を開いたときに表示される、「アカウント番号」のことです。

AMIの料金

AMIからインスタンスを起動したときにインスタンスの利用料金が、またはAMIをS3に保存したときにS3の利用料金がかかります。しかしAMIを保持するだけなら、特に料金は発生しません。

登録の解除方法

不要になったAMIを登録解除、つまりAMIを削除するのも簡単です。EC2→AMIと進み、解除したいAMIを選択し、アクションをクリック。その中に「登録解除」という選択肢があるのでそれを選んでください。

これでAMIが登録解除、つまり削除されます。

まとめ

本記事ではAMIについて解説しました。

特にSIerの方々、AWSを使うときのインスタンスの量産化に悩んでおられたのではないでしょうか?ユーザーに依存するインフラの仕様は仕方がないにしても、基本部分はどのお客様も同じですよね。そんな基本部分、丸ごとひな形化できるAMI、ぜひ検討にしてみてください。

エンジニアになりたい人に選ばれるプログラミングスクール「ポテパンキャンプ 」

ポテパンキャンプは卒業生の多くがWebエンジニアとして活躍している実践型プログラミングスクールです。 1000名以上が受講しており、その多くが上場企業、ベンチャー企業のWebエンジニアとして活躍しています。

基礎的な学習だけで満足せず、実際にプログラミングを覚えて実践で使えるレベルまで学習したいという方に人気です。 プログラミングを学習し実践で使うには様々な要素が必要です。

それがマルっと詰まっているポテパンキャンプでプログラミングを学習してみませんか?

卒業生の多くがWebエンジニアとして活躍

卒業生の多くがWeb企業で活躍しております。
実践的なカリキュラムをこなしているからこそ現場でも戦力となっております。
活躍する卒業生のインタビューもございますので是非御覧ください。

経験豊富なエンジニア陣が直接指導

実践的なカリキュラムと経験豊富なエンジニアが直接指導にあたります。
有名企業のエンジニアも多数在籍し品質高いWebアプリケーションを作れるようサポートします。

満足度高くコスパの高いプログラミングスクール「ポテパンキャンプ」

運営する株式会社ポテパンは10,000人以上のエンジニアのキャリアサポートを行ってきております。
そのノウハウを活かして実践的なカリキュラムを随時アップデートしております。

代表の宮崎もプログラミングを覚えサイトを作りポテパンを創業しました。
本気でプログラミングを身につけたいという方にコスパ良く受講していただきたいと思っておりますので、気になる方はぜひスクール詳細をのぞいてくださいませ。