-
Amazon EC2、EBS(Elastic Block Store)を使ってみた
ただのWebデザイナーですが、
Amazon EC2をバーチャルドメインで運用 できちゃったりしたので、
「ITコスト削減、万歳!」と唱えながら昨夜は家路につきました。
そして達成感とともに、ようやく恐怖感も芽生えてきました。
だって、Amazon EC2 のインスタンスって、
シャットダウンさせるとディスク上のデータが消滅しちゃんだよ?
普通、マシンの電源をOFFにしてもデータは残りますよね?
「全データ消去」って、どんだけーーーーーーー!!
Amazon EC2 は、99.95%のサービスレベルを保証してくれているので
万が一、0.05%の確立で何かが起きても
運が悪かったで片付けられそうな気がしますが、
あたしくらいになると、自分でうっかり
(しかも自信をもって堂々と)ポチっと削除しちゃう可能性の方が大きそう…。
そのために Amazon S3 という ストレージサービスが提供されていて、
「大事なデータは Amazon S3 に自分でバックアップしておいてね〜」
ということなんだろうけれど、この関係がとっても中途半端。
データの保存先であるハズの Amazon S3 は、Amazon EC2 の
ローカルディスクのような位置づけであってくれたらベストなのに、
ローカルディスクとして Amazon S3 を使うことができないんだもの…。
そこで登場したのが、Amazon EBS(Amazon Elastic Block Store)。
Amazon EC2 のローカルディスクとして結合できるし、
間違ってインスタンスをシャットダウンさせちゃって
Amazon EC2 側は空っぽになっても、 Amazon EBSのデータは消滅しない。
Windowsに例えてみると、
OSやアプリなどは Cドライブにインストール。
大事なデータは Dドライブに保存。
万が一、OS不調で Cドライブをフォーマットするハメになっても
Dドライブに保存しているデータは消えない
みたいな使い方が出来るってことですYO!
こりゃ早速、Amazon EBS に挑戦だ!
AWS Management Console にアクセスして、
ページ右側の「Volumes」をクリック。
ページ中央のの「Create Volume」をクリック。
Size :
ディスク容量を指定します。
後からEBS自体を増やすことはできるけれど、一度作ったEBSディスク容量自体を増やすことはできないので、少し悩んでから10GBにしておきました。
Availability Zone :
EBSを置く場所を指定します。立ち上がっているインスタンスと同じ場所を指定します。
Snapshot :
「NO Snapshot」を選択。
あっというまに、10GBのディスクをご提供いただきました。
Statusが「Available」になるまで、ちゃんと待ちましょう。
次は、EC2へログインします。
EC2へSSHログイン
# ssh -i EC2key.pem root@ec2-XXXX.amazonaws.com最上位へ移動
# cd /デバイスが認識されているか確認
# ls /dev/sd*
/dev/sda1 /dev/sda2 などが表示されれば認識されています。上記で表示された「/dev/sda1/」にファイルシステムを作成
「/dev/sdb」以降のデバイスを選びましょう。
#yes | mkfs -t ext3 /dev/sda1
# yes | mkfs -t ext3 /dev/sdfEBSをアタッチメント(結合)させるディレクトリ「vol」を作成
# mkdir /volEC2とEBSをマウント(結合)する
#mount /dev/sda1 /vol
# mount /dev/sdf /vol「vol」ディレクトリに移動
# cd /vol# ls
bin boot dev etc home などがズラズラ表示されていれば成功
「lost+found」だけが表示されていればOKEC2から脱出
# exit
Mac OSXのターミナルに戻ってから…
EC2コマンドを動かす魔法の5行を入力
$ export EC2_HOME=~/EC2$ export PATH=$PATH:$EC2_HOME/bin$ export EC2_PRIVATE_KEY=$EC2_HOME/pk-XXXXXXXX.pem$ export EC2_CERT=$EC2_HOME/cert-XXXXXXXX.pem$ export JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/HomeEC2コマンドが動くか確認
$ ec2ver
1.3-34128 2009-03-01 と表示されればOKEBSが接続されているか確認
$ ec2-describe-volumes
VOLUME vol-XXXXX と出れば成功

これで、Amazon EBS が使えるようになりました。
そろそろ、エンジニアに転職しよーかと思う今日この頃。
関連エントリー
- こんなにスゴイぞ、Amazon EC2
- Amazon Web Service、アカウントを取得してみた
- Amazon EC2/S3を申し込んでみた
- Amazon EC2、X.509証明書を取得してみた
- AWS Management Consoleで Key Pairsを取得してみた
- Mac OSXでAmazon EC2 Command-Line Toolsを使ってみた
- Amazon EC2、インスタンスを立ち上げてみた
- Amazon EC2、SSHでログインしてApacheを起動してみた
- Amazon EC2、Debianを設定してみた
- Amazon EC2、DebianでFTP(vsftpd)設定
- Amazon EC2のイメージファイルをS3に保存する
- Amazon EC2で固定IPを取得する
- Amazon EC2を独自ドメインで使う
- Amazon EC2をバーチャルドメインで運用する
- Amazon EC2、EBS(Elastic Block Store)を使ってみた
- Amazon EBSで Apache2とmysqlを動かしてみた
- Amazon CloudFront でちょっぱやを実装してみた
- Amazon EC2、AMIを共有する
- Amazon EC2上でインスタンスをオートスケールできる「Wakame」
- [ 非常事態宣言!!] Amazon EC2、ホームページが消えました
- Amazon サポートセンターに連絡を取ってみた
- Amazon EC2、SSH(22番ポート)の設定方法はこうすべき!
2009/04/11
-
Amazon EC2をバーチャルドメインで運用する
ただのWebデザイナーですが、お名前.comの ダイナミックDNSサービス のおかげで、
Amazon EC2を独自ドメインで動かす ところまでたどり着きました。
そこでふと気がついたのですが…
せっかくのAmazon EC2、複数のドメインを運用できたら、
コスト的に、よりハッピーになれちゃうんぢゃないの?
Amazon EC2の利用料金は、月額おおよそ7,000円程度。
そこで仮に7つのドメインを運用したら、
これだけ高機能のサーバーなのに 1ドメインあたり1,000円?!
費用対効果、どんだけーーーー!!! (・∀・*)
よーし、せっかくの Amazon EC2。
絶対バーチャルドメインで運用してみせるっ!!!
Mac OSX ターミナルを起動して、EC2へSSHアクセス。
EC2へSSHログイン
# ssh -i EC2key.pem root@ec2-XXXX.amazonaws.comApach2のデフォルトサイト定義のディレクトリ「sites-available」へ移動
# cd /etc/apache2/sites-available/# ls
「default」が表示されていればOK上記で表示された「default」をコピーして「mysite01.com」というファイルを作成
# cp default mysite01.com# ls
「mysite01.com」が表示されていればOKnanoエディタで「mysite01.com」を編集する
# nano mysite01.com
↓↓を自分の環境に変更してコピペする。NameVirtualHost 00.00.00.00(EC2の固定IPアドレス)
<VirtualHost *:80>
ServerName www.mysite01.com(バーチャルドメイン名)
DocumentRoot /var/www/mysite01.com
AddHandler cgi-script .cgi .pl
CustomLog /var/log/apache2/mysite01.com/access.log combined env=!no
ErrorLog /var/log/apache2/mysite01.com/
<Directory /var/www/mysite01.com>
Options IncludesNoExec ExecCGI FollowSymLinks Indexes
AllowOverride None
</Directory>
</VirtualHost>[ctrl]+x
Save modified buffer ?と聞かれたら
y → [Enter]
と打って、nanoエディタを終了「mysite01.com」の設定を有効にする
# a2ensite mysite01.com
Run '/etc/init.d/apache2 reload' to activate new configuration!
と表示されればOKシンボリックリンクをはる
# ln -s /etc/apache2/sites-available/mysite01.com /etc/apache2/sites-enabled/001-mysite01.comサイト定義のシンボリックリンクディレクトリ「sites-enabled」へ移動
# cd /etc/apache2/sites-enabled# ls
000-default、 001-mysite01.com、 mysite01.com が表示されるはず不要な「mysite01.com」を削除
# rm mysite01.com
なぜ不要な「mysite01.com」が
作成されちゃうのかは私には不明。(´・ω・)次は www用のディレクトリを作成
# mkdir /var/www/mysite01.comwww用ディレクトリのパーミッションを変更
# chmod 755 /var/www/mysite01.com続いてログ用のディレクトリを作成
# mkdir /var/log/apache2/mysite01.com最後にログ用ディレクトリのパーミッションを変更
# chmod 755 /var/log/apache2/mysite01.com
2つ目以降のバーチャルドメインを作成するときは、
上記のステップを繰返し行えばOK。
あとは、ホームページのファイルを 「/var/www/バーチャルドメイン領域」
以下へホームページ用データを FTPでアップロードしてから、Amazon EC2を独自ドメインで使う を参考に、バーチャルドメインごとにDNS(ネームサーバ)を切り替えれば、バーチャルドメインでWebサイトが公開できます。
こうやってただのWebデザイナーの私ですが、
Amazon EC2で お財布に優しいバーチャルドメイン化を実現したのでした。
関連エントリー
- こんなにスゴイぞ、Amazon EC2
- Amazon Web Service、アカウントを取得してみた
- Amazon EC2/S3を申し込んでみた
- Amazon EC2、X.509証明書を取得してみた
- AWS Management Consoleで Key Pairsを取得してみた
- Mac OSXでAmazon EC2 Command-Line Toolsを使ってみた
- Amazon EC2、インスタンスを立ち上げてみた
- Amazon EC2、SSHでログインしてApacheを起動してみた
- Amazon EC2、Debianを設定してみた
- Amazon EC2、DebianでFTP(vsftpd)設定
- Amazon EC2のイメージファイルをS3に保存する
- Amazon EC2で固定IPを取得する
- Amazon EC2を独自ドメインで使う
- Amazon EC2をバーチャルドメインで運用する
- Amazon EC2、EBS(Elastic Block Store)を使ってみた
- Amazon EBSで Apache2とmysqlを動かしてみた
- Amazon CloudFront でちょっぱやを実装してみた
- Amazon EC2、AMIを共有する
- Amazon EC2上でインスタンスをオートスケールできる「Wakame」
- [ 非常事態宣言!!] Amazon EC2、ホームページが消えました
- Amazon サポートセンターに連絡を取ってみた
- Amazon EC2、SSH(22番ポート)の設定方法はこうすべき!
2009/04/10
-
Amazon EC2を独自ドメインで使う
ただのWebデザイナーですが、好奇心と探求心だけを武器に
Amazon EC2で固定IPを取得 できちゃったので
いよいよ Amazon EC2を独自ドメインで使ってみます。
Amazon EC2は、DNSサーバは立てられないので
ダイナミックDNSを使わないといけないようです。
今日ほど、お名前.comでドメインを取得しておいて良かったと感じた日はないYO!
「お名前.com」にアクセスしてページ上部の 「ドメインNavi」 へログイン。
ドメイン設定>ネームサーバーの設定>DNS設定 をクリック。
Amazon EC2で使いたいドメインをチェックしてから 「入力画面へ進む」 をクリック。
[ ホスト名 ] … www
[ タイプ ] … A
[ VALUE ] … Amazon EC2で取得した Elastic IP
入力し終わったら 「追加」 をクリック。wwwなしでもアクセスできるようにしておきたいので以下も追加。
[ ホスト名 ] … 空(なにも書かない)
[ タイプ ] … A
[ VALUE ] … Amazon EC2で取得した Elastic IP
入力し終わったら 「追加」 をクリック。上記2つの「Aレコード」を追加したら、確認画面へ進み設定を保存。
最後にネームサーバの変更。
ドメイン設定>ネームサーバーの設定>ネームサーバーの変更 をクリック。
Amazon EC2上で使いたいドメインを選択して
ページ下の方にある「転送Plus・DNS設定」をクリック。
ネームサーバ情報の箇所に、お名前.comから指定された
ネームサーバー1: 01.dnsv.jp
ネームサーバー2: 02.dnsv.jp
と表示されていることを確認したら、「設定する」をクリック。
DNSの浸透には少し時間がかかります。
1時間くらい経ってからブラウザでドメインにアクセスしてみたら
ちゃーんとEC2で作った「It Works!」ページが出てきたYO!!
Amazon EC2が独自ドメインで動いてます。
Web制作のプロですから、お名前.comの操作くらい出来て当然なのに、
なぜかこの 「It Works!」 は、格別に嬉しい…。
関連エントリー
- こんなにスゴイぞ、Amazon EC2
- Amazon Web Service、アカウントを取得してみた
- Amazon EC2/S3を申し込んでみた
- Amazon EC2、X.509証明書を取得してみた
- AWS Management Consoleで Key Pairsを取得してみた
- Mac OSXでAmazon EC2 Command-Line Toolsを使ってみた
- Amazon EC2、インスタンスを立ち上げてみた
- Amazon EC2、SSHでログインしてApacheを起動してみた
- Amazon EC2、Debianを設定してみた
- Amazon EC2、DebianでFTP(vsftpd)設定
- Amazon EC2のイメージファイルをS3に保存する
- Amazon EC2で固定IPを取得する
- Amazon EC2を独自ドメインで使う
- Amazon EC2をバーチャルドメインで運用する
- Amazon EC2、EBS(Elastic Block Store)を使ってみた
- Amazon EBSで Apache2とmysqlを動かしてみた
- Amazon CloudFront でちょっぱやを実装してみた
- Amazon EC2、AMIを共有する
- Amazon EC2上でインスタンスをオートスケールできる「Wakame」
- [ 非常事態宣言!!] Amazon EC2、ホームページが消えました
- Amazon サポートセンターに連絡を取ってみた
- Amazon EC2、SSH(22番ポート)の設定方法はこうすべき!
2009/04/09
-
Amazon EC2で固定IPを取得する
エンジニアではない、ただのWebデザイナーの私ですが、
Amazon EC2のイメージファイルをS3に保存する ところまで出来てしまいました。
必要なのは、好奇心と探求心だけでした。
一生懸命お勉強してきたので、
Amazon EC2マニアになりつつある今日この頃、
いろいろ不都合もあるということも理解しました。
まずインスタンスを終了させると、データが全て消えちゃうということ。
次に、固定IPアドレスではないということ。
インスタンスを起動する度に、毎回IPアドレスが変わっちゃうなんて、
それぢゃDNSの設定は、どーちたら…?(´・ω・)
そこで知ったのが「Elastic IP」というオプションサービス。
料金は、月額$7.2。日本円で700円くらい。
よーし、今日は Amazon EC2で固定IPに挑戦です!
まず「Amazon Web Servuce」にアクセスして、
インスタンスが立ち上がっているか確認してから 「Elastic IPs」をクリック。
画面中央の「Allocate New Address」をクリック。
Are you sure you want to allocate a new IP address? と聞かれるので
「Yes,Allocate」をクリック。
Addressの箇所に表示されたのが、ゲットできた固定IPアドレス。
取得した固定IPアドレスにチェックを入れてから、画面上部の「Associate」をクリック。
固定IPアドレスを関連づけたい「 Instance ID」を確認してから、
「Associate」をクリック。
「Instance ID」の箇所が表示されれば完了!
これでインスタンスに固定IPが割り振られましたハズ。
試しにブラウザで固定IPにアクセスしてみたら「It Works!」と表示されたので、
ちゃーんと固定IPがゲットできてます。
ここまで来ると「ec2-XXXX.amazonaws.com」みたいな長ったらしいPublic DNSでもなく、固定IPでもなく、独自ドメインが使いたくなってくるのが人の常…。
関連エントリー
- こんなにスゴイぞ、Amazon EC2
- Amazon Web Service、アカウントを取得してみた
- Amazon EC2/S3を申し込んでみた
- Amazon EC2、X.509証明書を取得してみた
- AWS Management Consoleで Key Pairsを取得してみた
- Mac OSXでAmazon EC2 Command-Line Toolsを使ってみた
- Amazon EC2、インスタンスを立ち上げてみた
- Amazon EC2、SSHでログインしてApacheを起動してみた
- Amazon EC2、Debianを設定してみた
- Amazon EC2、DebianでFTP(vsftpd)設定
- Amazon EC2のイメージファイルをS3に保存する
- Amazon EC2で固定IPを取得する
- Amazon EC2を独自ドメインで使う
- Amazon EC2をバーチャルドメインで運用する
- Amazon EC2、EBS(Elastic Block Store)を使ってみた
- Amazon EBSで Apache2とmysqlを動かしてみた
- Amazon CloudFront でちょっぱやを実装してみた
- Amazon EC2、AMIを共有する
- Amazon EC2上でインスタンスをオートスケールできる「Wakame」
- [ 非常事態宣言!!] Amazon EC2、ホームページが消えました
- Amazon サポートセンターに連絡を取ってみた
- Amazon EC2、SSH(22番ポート)の設定方法はこうすべき!
2009/04/08
-
Amazon EC2のイメージファイルをS3に保存する
エンジニアではない、ただのWebデザイナーの私なのに、
とうとう Amazon EC2、DebianでFTP(vsftpd)設定 してしまったので、
そろそろサーバのこの状態を保存しておかなくちゃ!
まず「Amazon Web Servuce」にアクセスして、
「Your Account」のプルダウンメニューから、「Access Identifiers 」をクリック。
「Your Access Key ID: 」の箇所にあるズラズラした文字列をメモ。
「Your Secret Access Key: 」の箇所にあるズラズラした文字列もメモ。
「Amazon Web Servuce」は、ここまで。
次は Amazon S3へのアクセスするためのツール、
Firefoxのアドオン「S3 Firefox Organizer」のインストール。
Firefoxで以下のページから無料で入手できます。
Amazon S3 Firefox Organizer(S3Fox) 0.4.6
「S3 Firefox Organizer」のインストールが完了すると、
Firefoxのツールメニューに「s3fox」が表示されるようになるので
「S3 Orfanizer」をクリックして起動。
「S3 Firefox Organizer」を起動すると、このような画面が表示されるので
左上の「Manage Account」をクリック。
Account Name : 好きな名前を入力
Access Key : 先ほどメモしたアクセスキーを入力
Secret Key : 先ほどメモしたシークレットキーを入力
EC2のイメージを保存するためのフォルダを S3上に作成します。
これを Amazon用語では「バケット」というらしい。
右側のウィンドウ上部にある「バケット新規作成アイコン」をクリック。
Folder Name :
わかりやすいように「backup090410debian」という名前にしておきました。
バケットのパーミッション(権限)を変更します。
バケット名の上で右クリックして「Edit ACL」を選択。
右端 FullControl の蘭の赤い×をクリックして、緑のチェックマークに変更します。
Apply to subfolders にチェックをして、OKをクリック。そろそろ疲れてきました…。(´・ω・)
次は、Amazon EC2へSSHアクセスします。Mac OSX でターミナルを起動。
EC2へSSHログイン
# ssh -i EC2key.pem root@ec2-XXXX.amazonaws.commntディレクトリへ移動
# cd /mnt/.pemファイルを確認
# ls
pk-XXXXXXXX.pem、cert-XXXXXXXX.pemがあればOK!イメージを作成する
# ec2-bundle-vol -d /mnt --privatekey pk-XXXXXXXX.pem --cert cert-XXXXXXXX.pem --user XXXX-XXXX-XXXX --fstab /etc/fstabPlease specify a value for arch [i386]: と聞かれるので
# [Enter]
10分くらいかかるので、ぼけぇ〜と待つ
ec2-bundle-vol complete.となればイメージファイル作成成功S3にイメージを送る
ec2-upload-bundle --bucket back090406debian --manifest image.manifest.xml --access-key XXXXX --secret-key XXXXX
Bundle upload completed.となればイメージファイル転送成功!!EC2から脱出して、ローカル (Mac OSX) へ戻る
# exit

pk-XXXXXXXX.pem、cert-XXXXXXXX.pem 部分を
自分の鍵の名前に書き換えて、どんどんコピペ& Enter する。↓↓
$ export EC2_HOME=~/EC2$ export PATH=$PATH:$EC2_HOME/bin$ export EC2_PRIVATE_KEY=$EC2_HOME/pk-XXXXXXXX.pem$ export EC2_CERT=$EC2_HOME/cert-XXXXXXXX.pem$ export JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Home$ ec2ver
1.3-34128 2009-03-01 と表示されればOKイメージを登録する
$ ec2-register XXXX/image.manifest.xml
IMAGE ami-XXXX と出ればイメージの登録成功自分で登録したAMIを確認したい時は
$ ec2-describe-images -o self作成したAMIからインスタンスを起動したい時は
$ ec2-run-instances ami-XXXX -k キーペア.pem

そろそろ限界が近づいてきました…。(´・ω・)
最後に「AWS Management Console」にアクセスして、
ページ左側の「AMIs」をクリック。
Viewing:のプルダウンから 「Private Images」をクリックして
自分が登録したイメージが表示されれば、万事OK。
長かった…。(:_:)
これでこの状態のイメージはいつでも起動できるので、
お金がもったいないからインスタンスを終了。
こんな感じで、あっちこっち彷徨いながら無事、
Amazon EC2のイメージファイルを Amazon S3へ保存できたのでした。
そろそろ知恵熱に襲われそうな今日この頃。
関連エントリー
- こんなにスゴイぞ、Amazon EC2
- Amazon Web Service、アカウントを取得してみた
- Amazon EC2/S3を申し込んでみた
- Amazon EC2、X.509証明書を取得してみた
- AWS Management Consoleで Key Pairsを取得してみた
- Mac OSXでAmazon EC2 Command-Line Toolsを使ってみた
- Amazon EC2、インスタンスを立ち上げてみた
- Amazon EC2、SSHでログインしてApacheを起動してみた
- Amazon EC2、Debianを設定してみた
- Amazon EC2、DebianでFTP(vsftpd)設定
- Amazon EC2のイメージファイルをS3に保存する
- Amazon EC2で固定IPを取得する
- Amazon EC2を独自ドメインで使う
- Amazon EC2をバーチャルドメインで運用する
- Amazon EC2、EBS(Elastic Block Store)を使ってみた
- Amazon EBSで Apache2とmysqlを動かしてみた
- Amazon CloudFront でちょっぱやを実装してみた
- Amazon EC2、AMIを共有する
- Amazon EC2上でインスタンスをオートスケールできる「Wakame」
- [ 非常事態宣言!!] Amazon EC2、ホームページが消えました
- Amazon サポートセンターに連絡を取ってみた
- Amazon EC2、SSH(22番ポート)の設定方法はこうすべき!
2009/04/07


