首页 » OpenStack系统架构设计实战 » OpenStack系统架构设计实战全文在线阅读

《OpenStack系统架构设计实战》2.9.3 使用euca2tools工具

关灯直达底部

euca2tools是一个命令行工具包,封装了操作云管理平台的REST接口,用来操作类似于EC2和S3对外提供的REST服务。euca2tools是Eucalyptus提供的操作云的工具包,模拟AWS的客户端请求包。由于OpenStack支持AWS接口,所以OpenStack除了可以使用自用的Nova客户端包外,可以直接拿Eucalyptus的客户端工具包euca2tools来使用。

1)安装euca2tools工具包。

apt-get install euca2ools

2)根据用户身份编写环境变量文件setenv.sh,该文件可以根据自己的喜好命名,并将其加载到环境中。

[email protected]:/var/lib/stackops# cat setenv.sh #!/usr/bin/env bash# Heavily inspired in this: https://github.com/cloudbuilders/devstack/blob/master/openrc# Thanks Vish!#HOST_IP=${HOST_IP:-127.0.0.1}export NOVA_PROJECT_ID=${TENANT:-demo}export NOVA_USERNAME=${USERNAME:-demo}export NOVA_API_KEY=${ADMIN_PASSWORD:-password}export NOVA_URL=${NOVA_URL:-http://$HOST_IP:5000/v2.0/}export NOVA_VERSION=${NOVA_VERSION:-1.1}export NOVA_REGION_NAME=${NOVA_REGION_NAME:-nova}export EC2_URL=${EC2_URL:-http://$HOST_IP:80/services/Cloud}export EC2_ACCESS_KEY=${USERNAME:-demo}export EC2_SECRET_KEY=${ADMIN_PASSWORD:-password}#export NOVACLIENT_DEBUG=1export OS_AUTH_USER=$NOVA_USERNAMEexport OS_AUTH_KEY=$NOVA_API_KEYexport OS_AUTH_TENANT=$NOVA_PROJECT_IDexport OS_AUTH_URL=$NOVA_URLexport OS_AUTH_STRATEGY=$NOVA_AUTH_STRATEGYexport AUTH_TOKEN=`curl -s -d "{/"auth/":{/"passwordCredentials/": {/"username/": /"$NOVA_USERNAME/", /"password/": /"$NOVA_API_KEY/"}}}" -H "Content-type: application/json" http://$HOST_IP:5000/v2.0/tokens | python -c "import sys; import json; tok = json.loads(sys.stdin.read); print tok['access'] ['token']['id'];"[email protected]:/var/lib/stackops# source setenv.sh

此后,就可以使用euca2tools提供的命令行工具操作OpenSatck。在调用OpenStack接口申请虚拟机之前,需要有一个AMI虚拟机映像,我们手工创建一个Ubuntu的AMI映像,上载到OpenStack中。