Strict Standards: Declaration of action_plugin_blog::register() should be compatible with DokuWiki_Action_Plugin::register($controller) in /var/www/vhosts/w629.ws.domainking.cloud/enjoy-lei.com/dokuwiki/lib/plugins/blog/action.php on line 13

Strict Standards: Declaration of action_plugin_indexmenu::register() should be compatible with DokuWiki_Action_Plugin::register($controller) in /var/www/vhosts/w629.ws.domainking.cloud/enjoy-lei.com/dokuwiki/lib/plugins/indexmenu/action.php on line 13

Strict Standards: Declaration of action_plugin_importoldchangelog::register() should be compatible with DokuWiki_Action_Plugin::register($controller) in /var/www/vhosts/w629.ws.domainking.cloud/enjoy-lei.com/dokuwiki/lib/plugins/importoldchangelog/action.php on line 8

Strict Standards: Declaration of action_plugin_importoldindex::register() should be compatible with DokuWiki_Action_Plugin::register($controller) in /var/www/vhosts/w629.ws.domainking.cloud/enjoy-lei.com/dokuwiki/lib/plugins/importoldindex/action.php on line 8

Strict Standards: Declaration of action_plugin_include::register() should be compatible with DokuWiki_Action_Plugin::register($controller) in /var/www/vhosts/w629.ws.domainking.cloud/enjoy-lei.com/dokuwiki/lib/plugins/include/action.php on line 19

Deprecated: Assigning the return value of new by reference is deprecated in /var/www/vhosts/w629.ws.domainking.cloud/enjoy-lei.com/dokuwiki/inc/parserutils.php on line 208

Deprecated: Assigning the return value of new by reference is deprecated in /var/www/vhosts/w629.ws.domainking.cloud/enjoy-lei.com/dokuwiki/inc/parserutils.php on line 211

Deprecated: Assigning the return value of new by reference is deprecated in /var/www/vhosts/w629.ws.domainking.cloud/enjoy-lei.com/dokuwiki/inc/parserutils.php on line 421

Deprecated: Assigning the return value of new by reference is deprecated in /var/www/vhosts/w629.ws.domainking.cloud/enjoy-lei.com/dokuwiki/inc/parserutils.php on line 594

Strict Standards: Declaration of cache_instructions::retrieveCache() should be compatible with cache::retrieveCache($clean = true) in /var/www/vhosts/w629.ws.domainking.cloud/enjoy-lei.com/dokuwiki/inc/cache.php on line 291

Deprecated: Function split() is deprecated in /var/www/vhosts/w629.ws.domainking.cloud/enjoy-lei.com/dokuwiki/inc/auth.php on line 154

Strict Standards: Only variables should be passed by reference in /var/www/vhosts/w629.ws.domainking.cloud/enjoy-lei.com/dokuwiki/doku.php on line 73
amazon_ec2_s3関連 [開発チーム]

Deprecated: Function split() is deprecated in /var/www/vhosts/w629.ws.domainking.cloud/enjoy-lei.com/dokuwiki/inc/parser/lexer.php on line 517

Deprecated: Function split() is deprecated in /var/www/vhosts/w629.ws.domainking.cloud/enjoy-lei.com/dokuwiki/inc/parser/lexer.php on line 517

Deprecated: Function split() is deprecated in /var/www/vhosts/w629.ws.domainking.cloud/enjoy-lei.com/dokuwiki/inc/parser/lexer.php on line 517

Deprecated: Function split() is deprecated in /var/www/vhosts/w629.ws.domainking.cloud/enjoy-lei.com/dokuwiki/inc/parser/lexer.php on line 517

Deprecated: Function split() is deprecated in /var/www/vhosts/w629.ws.domainking.cloud/enjoy-lei.com/dokuwiki/inc/parser/lexer.php on line 517

Deprecated: Function split() is deprecated in /var/www/vhosts/w629.ws.domainking.cloud/enjoy-lei.com/dokuwiki/inc/parser/lexer.php on line 517

Deprecated: Function split() is deprecated in /var/www/vhosts/w629.ws.domainking.cloud/enjoy-lei.com/dokuwiki/inc/parser/lexer.php on line 517

Deprecated: Function split() is deprecated in /var/www/vhosts/w629.ws.domainking.cloud/enjoy-lei.com/dokuwiki/inc/parser/lexer.php on line 517

Deprecated: Function split() is deprecated in /var/www/vhosts/w629.ws.domainking.cloud/enjoy-lei.com/dokuwiki/inc/parser/lexer.php on line 517

Deprecated: Function split() is deprecated in /var/www/vhosts/w629.ws.domainking.cloud/enjoy-lei.com/dokuwiki/inc/parser/lexer.php on line 517

Deprecated: Function split() is deprecated in /var/www/vhosts/w629.ws.domainking.cloud/enjoy-lei.com/dokuwiki/inc/parser/lexer.php on line 517

Deprecated: Function split() is deprecated in /var/www/vhosts/w629.ws.domainking.cloud/enjoy-lei.com/dokuwiki/inc/parser/lexer.php on line 517

▼Amazon EC2 / S3の使い方

管理画面

参考サイト

▼時間調整

元の「localtime」ファイルはrenameかけて保持しておきましょう

# ln -s /usr/share/zoneinfo/Asia/Tokyo /etc/localtime

▼マウント

マウントに必要なアプリケーション

apt-get install make gcc g++ pkg-config libxml++2.6-dev libfuse-dev libcurl4-openssl-dev fuse-utils

環境設定

ファイルのダウンロードと解凍

wget http://s3fs.googlecode.com/files/s3fs-r130-source.tar.gz
tar zxvf s3fs-r130-source.tar.gz

解凍したディレクトリへ移動し、makeの実行

cd s3fs
make
・
・
・
g++ -ggdb -Wall -D_FILE_OFFSET_BITS=64 -I/usr/include/fuse  -pthread -L/lib -lfuse -lrt -ldl    -lcurl   -I/usr/include/libxml2 -lxml2 -lz -lm -lcrypto s3fs.cpp -o s3fs
s3fs.cpp:396: warning: 'size_t readCallback(void*, size_t, size_t, void*)' defined but not used
ok!

完了したら、ファイルをコピー

cp -f s3fs /usr/bin

S3の「pre-image」を、各サーバーで作成した「/mnt/pre-image」でmountする
※webサーバーが複数台あった場合、下記コマンドを実行した結果、きちんとpoundもされて表示された

sudo s3fs pre-image -o default_acl=public-read -o allow_other -o accessKeyId=AKIAIUKYZWM6FETUS4SQ -o secretAccessKey=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 /mnt/pre-image

apacheの設定ファイルを編集し、Aliasを付けておく

Alias /image /mnt/pre-image
/etc/init.d/apache restart

▼イメージの保存

作成サーバー側

イメージを作成するサーバーにログイン

# ssh -i EC2key.pem root@ec2-XXXX.amazonaws.com

mntディレクトリへ移動

# cd /mnt/

.pemファイルの存在を確認

# ls
k-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/fstab
Please specify a value for arch [i386]: と聞かれるので
# [Enter]
・
・
# ec2-bundle-vol complete.となればイメージファイル作成完了

S3にイメージを送る①

# ec2-upload-bundle --bucket ${アップ先のバケット名} --manifest image.manifest.xml --access-key ${Access Key ID} --secret-key ${Secret Access Key}
Bundle upload completed.となればイメージファイル転送完了

S3にイメージを送る②(s3syncを利用して、S3のサブディレクトリへ保存)
rubyが必要になりますが、Amazonサーバーには標準装備されてるので問題ないかと…

$ wget http://s3.amazonaws.com/ServEdge_pub/s3sync/s3sync.tar.gz
$ tar zxvf s3sync.tar.gz
$ cp -pr s3sync/ /usr/local/
$ export AWS_ACCESS_KEY_ID='XXXXXXXXXXXXXXXXXXXX'
$ export AWS_SECRET_ACCESS_KEY='XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'

外部から接続

今回は、使用PCの「コマンドプロンプト」から接続します
このとき、指定場所に鍵がないと出来ませんので注意

EC2ツールの場所の設定

C:\>set EC2_HOME=C:\Users\ec_user4\Documents\Amazon\ec2tl3
C:\>set PATH=%PATH%;%EC2_HOME%\bin

キーファイルの場所の設定

C:\>set EC2_PRIVATE_KEY=C:\Users\ec_user4\Documents\Amazon\pk-NJ7SSCQ5FN5GPEURGPQQSQCKORGLFHNQ.pem
C:\>set EC2_CERT=C:\Users\ec_user4\Documents\Amazon\cert-NJ7SSCQ5FN5GPEURGPQQSQCKORGLFHNQ.pem

インストール済みのJREの場所の設定(JAVA)

C:\>set JAVA_HOME=C:\Program Files\Java\jre1.6.0

EC2の接続

C:\>ec2-describe-images -o self -o amazon

確認

C:\>ec2ver

イメージを登録する

C:\>ec2-register XXXX/image.manifest.xml

自分で登録したAMIを確認

C:\>ec2-describe-images -o self

▼特徴・覚えておくこと

  • シャットダウンで消えてなくなる
  • Account Activity」で課金料金が確認可能
  • イメージをS3に保存するコマンド
# time ec2-upload-bundle --bucket kawanet-images --manifest /mnt/ami/img-kawanet.manifest.xml --access-key 14W1xxxx --secret-key uzqBxxxx

EU側だと…

# time ec2-upload-bundle --bucket kawanet-images --manifest /mnt/ami/img-kawanet.manifest.xml --access-key 14W1xxxx --secret-key uzqBxxxx --location EU

こまんど

  • 自分が立ち上げてるイメージを表示
      $ ec2-describe-instances
  • 自分が作ったイメージを表示
      $ ec2-describe-images -o self
  • イメージの作成
      $ cd /mnt
      $ rm image*
      $ ec2-bundle-vol -d /mnt --privatekey pk-XXXXXXXXXXXXXXXX.pem --cert cert-XXXXXXXXXXXXXXX.pem --user アカウント番号
  • イメージのS3へのアップロード
      $ ec2-upload-bundle --bucket "バケット" --manifest image.manifest.xml --access-key アクセスキー --secret-key 秘密キー
  • インスタンスを落とす
      $ ec2-terminate-instances インスタンスID
  • インスタンスを立ち上げる
      $ ec2-run-instances イメージID -k 識別子
  • 固定IPの取得
      $ ec2-allocate-address
  • インスタンスに固定IPを割り振る
      $ ec2-associate-address -i インスタンスID  割り振られた固定IP
  • PINGが通らないとき
   $ ec2-authorize default -P icmp -t -1:-1 -s 0.0.0.0/0
amazon_ec2_s3関連.txt · 最終更新: 2010/07/27 15:47 (外部編集)
www.chimeric.de Creative Commons License Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0

Strict Standards: Only variables should be passed by reference in /var/www/vhosts/w629.ws.domainking.cloud/enjoy-lei.com/dokuwiki/doku.php on line 81