Quantcast
Viewing all articles
Browse latest Browse all 12

AWS互換API(euca2ools)でOpenStack(Nova)を操作してみた。

OpenStack環境

OpenStackはUbuntu12.04LTS上にGrizzly版DevStackをインストールしたものを利用した。
DevStackのインストールはSingleMachine構成での構築を行った。
参考: http://devstack.org/guides/single-machine.html

EC2互換APIでOpenStackを操作するための設定

参考となるページは下記。

http://knowledge.sakura.ad.jp/tech/251/

この手順の中でTENANT_IDはEC2用のテナントをあらかじめ作っていく必要があるので注意。

EC2互換APIでインスタンスの起動、停止をしてみる。

イメージの一覧

$ euca-describe-images
IMAGE aki-00000001 None (cirros-0.3.1-x86_64-uec-kernel) 1de8ba1352274a98800e8c5dfee5cfa4 available public kernel instance-store
IMAGE ari-00000002 None (cirros-0.3.1-x86_64-uec-ramdisk) 1de8ba1352274a98800e8c5dfee5cfa4 available public ramdisk instance-store
IMAGE ami-00000003 None (cirros-0.3.1-x86_64-uec) 1de8ba1352274a98800e8c5dfee5cfa4 available public machine aki-00000001 ari-00000002 instance-store

イメージIDを指定してインスタンスを起動

$ euca-run-instances ami-00000003
RESERVATION r-0jhbhphs 1de8ba1352274a98800e8c5dfee5cfa4 default
INSTANCE i-00000001 ami-00000003 server-311f5bb8-48dc-43a8-a16f-137ca31b95e4 server-311f5bb8-48dc-43a8-a16f-137ca31b95e4 pending None (1de8ba1352274a98800e8c5dfee5cfa4, None) 0 m1.small 2013-06-17T03:14:07.000Z nova aki-00000001 ari-00000002 monitoring-disabled instance-store

インスタンス起動時のオプションは下記の通り。

euca-run-instances [-A, --access-key <access_key> ][-A, --secret-key
<secret_key> ][--config <config_path>
][--debug][--debugger][-h, --help][--region <region_name>
][-U, --url ][--version][--euca-auth][-n, --instance-
count ][-g, --group <group_name> ][-k, --key
][-d, --user-data <user_data> ][--user-data-force
<user_data_force> ][-f, --user-data-file <user_data_file>
][--addressing ][-t, --instance-type
<instance_type> ][--kernel ][--ramdisk
][-b, --block-device-mapping <block_device_mapping>
][--monitor][-s, --subnet ][-z, --availability-zone
] image_id

ちなみに、OpenStack 標準コマンドの nova boot のオプションとの主な項目の対比は下記の通り。

EC2 OpenStack
image_id –image
–instance-count –num-instances
–group –security-groups
–key –key-name
–user-data –user-data
–user-data-file –file
–instance-type –flavor
–block-device-mapping block-device-mapping
–availability-zone –availability-zone

インスタンス一覧

$ euca-describe-instances
RESERVATION r-0jhbhphs 1de8ba1352274a98800e8c5dfee5cfa4 default
INSTANCE i-00000001 ami-00000003 server-311f5bb8-48dc-43a8-a16f-137ca31b95e4 server-311f5bb8-48dc-43a8-a16f-137ca31b95e4 error None (1de8ba1352274a98800e8c5dfee5cfa4, None) 0 m1.small 2013-06-17T03:14:07.000Z nova aki-00000001 ari-00000002 monitoring-disabled instance-store

インスタンスの停止

$ euca-terminate-instances
Terminates the specified instances.

一通りは使えそう。

ちなみにEC2互換API(euc2ools)に含まれているコマンドは下記の通り。

$ ls /usr/bin/euca-* | cat
/usr/bin/euca-add-group
/usr/bin/euca-add-keypair
/usr/bin/euca-allocate-address
/usr/bin/euca-associate-address
/usr/bin/euca-attach-volume
/usr/bin/euca-authorize
/usr/bin/euca-bundle-image
/usr/bin/euca-bundle-instance
/usr/bin/euca-bundle-upload
/usr/bin/euca-bundle-vol
/usr/bin/euca-cancel-bundle-task
/usr/bin/euca-check-bucket
/usr/bin/euca-confirm-product-instance
/usr/bin/euca-create-image
/usr/bin/euca-create-snapshot
/usr/bin/euca-create-tags
/usr/bin/euca-create-volume
/usr/bin/euca-delete-bundle
/usr/bin/euca-delete-group
/usr/bin/euca-delete-keypair
/usr/bin/euca-delete-snapshot
/usr/bin/euca-delete-tags
/usr/bin/euca-delete-volume
/usr/bin/euca-deregister
/usr/bin/euca-describe-addresses
/usr/bin/euca-describe-availability-zones
/usr/bin/euca-describe-bundle-tasks
/usr/bin/euca-describe-group
/usr/bin/euca-describe-groups
/usr/bin/euca-describe-image-attribute
/usr/bin/euca-describe-images
/usr/bin/euca-describe-instances
/usr/bin/euca-describe-keypairs
/usr/bin/euca-describe-regions
/usr/bin/euca-describe-snapshots
/usr/bin/euca-describe-tags
/usr/bin/euca-describe-volumes
/usr/bin/euca-detach-volume
/usr/bin/euca-disassociate-address
/usr/bin/euca-download-bundle
/usr/bin/euca-get-console-output
/usr/bin/euca-get-password
/usr/bin/euca-get-password-data
/usr/bin/euca-import-keypair
/usr/bin/euca-modify-image-attribute
/usr/bin/euca-monitor-instances
/usr/bin/euca-reboot-instances
/usr/bin/euca-register
/usr/bin/euca-release-address
/usr/bin/euca-reset-image-attribute
/usr/bin/euca-revoke
/usr/bin/euca-run-instances
/usr/bin/euca-start-instances
/usr/bin/euca-stop-instances
/usr/bin/euca-terminate-instances
/usr/bin/euca-unbundle
/usr/bin/euca-unmonitor-instances
/usr/bin/euca-upload-bundle
/usr/bin/euca-version

Viewing all articles
Browse latest Browse all 12

Trending Articles