こんにちは。イッシーです(๑°⌓°๑)!今回は前回の続きでAWSで立てたサーバーを簡単に複製できるようAMIを作成したいと思います。社内ドキュメントをHTMLで記録しておこう的なノリです。ちなみにAmazon Linuxを使用しております。

そういえば、前回書き忘れていたので以下のコマンドでルートのパスワードを設定しましょう。

[cc lang="bash"]
sudo passwd root
[/cc]

■証明書の取得

管理画面にアクセスして、「X 509証明書」で「秘密鍵」と「証明書」をダウンロードしましょう。

サーバ上でamazon コマンドを実行していく感じですね!

■証明書の転送

上述でダウンロードした2ファイルをサーバ上に転送しましょう。scpでもgitでもOKです。

■AMIの作成

Account Activityにアクセスして右上にある口座番号(ハイフン付き)をメモってください。それではAMIを作成します。

[cc lang="bash"]
su
ec2-bundle-vol -d /mnt –privatekey [秘密鍵ファイルパス] –cert [証明書ファイルパス] –user [口座番号] –fstab /etc/fstab
[/cc]

使用している容量によりますが、僕は10分くらい時間がかかりました。

■S3へ転送

管理画面にアクセスして、「アクセスキーID」と「シークレットアクセスキー」をメモしてください。次に以下のコマンドを実行しs3のバケットに転送します。

[cc lang="bash"]
ec2-upload-bundle –bucket [バケット名] –manifest image.manifest.xml –access-key[アクセスキーID] –secret-key [シークレットアクセスキー]
[/cc]

僕は1時間くらい時間がかかりました。ネットサーフィンでもして・・・違った、別のタスクをこなして終了を待ちましょう。

■AMIの登録

s3に転送したファイルからEC2を起動できるようにします。以下のコマンドでAMIを登録しましょう。

[cc lang="bash"]
ec2-register [バケット名]/image.manifest.xml
[/cc]

もしくは以下のコマンドで登録します。

[cc lang="bash"]
ec2-register [バケット名]/image.manifest.xml –privatekey [秘密鍵ファイルパス] –cert [証明書ファイルパス]
[/cc]

実行するとIDが出力されるのでメモっておいてください。

登録したAMIを確認

[cc lang="bash"]
ec2-describe-images -o self
[/cc]

登録したAMIを削除

[cc lang="bash"]
ec2-deregister [AMIのID]
[/cc]

個人的な感想ですが、AWSは他のサービスよりも柔軟性も高く機能も豊富です。そのため固有の操作というものが少なからずありますが、インフラを0から構築するよりははるかに楽なので頑張って覚えていきたいところです。‎(๑╹ڡ╹)

Post Navigation