Ubuntu搭建Openstack平台(kilo)(四.nova)
1、安装nova组件2、启动nova服务3、创建虚拟机实例4、总结在搭建OpenStack平台中,一、安装nova组件1. 安装nova-api服务首先需要安装nova-api服务。
在搭建OpenStack平台中,nova是其中非常重要的一个组件。它是OpenStack中虚拟机管理的核心服务,负责虚拟机的创建、管理、销毁等操作。本文将介绍如何在Ubuntu系统上搭建OpenStack平台,并详细讲解nova组件的安装和配置。
一、安装nova组件
1. 安装nova-api服务
首先需要安装nova-api服务,它是与用户互动并处理API请求的一部分。可以通过以下命令进行安装:
“`
sudo apt-get install nova-api nova-cert nova-conductor nova-consoleauth
nova-novncproxy nova-scheduler python-novaclient
2. 配置数据库
Nova使用数据库来存储各种信息,包括虚拟机实例等信息。因此需要配置数据库以便Nova可以正确地使用和存储数据。
首先需要创建一个新用户并授权:
mysql -u root -p
mysql> CREATE DATABASE nova;
mysql> GRANT ALL PRIVILEGES ON nova.* TO ‘nova’@’localhost’
IDENTIFIED BY ‘NOVA_DBPASS’;
mysql> GRANT ALL PRIVILEGES ON nova.* TO ‘nova’@’%’
这里我们创建了名为“nova”的新用户,并授予其对于“nova”数据库所有权限。
接下来需要编辑Nova配置文件/etc/nova/nova.conf,进行数据库配置。
[database]
connection = mysql+pymysql://nova:NOVA_DBPASS@controller/nova
其中“NOVA_DBPASS”为我们指定的密码,“controller”为数据库服务器的名称或IP地址。
3. 配置消息代理
Nova使用消息代理来在各个服务之间传递消息。这里我们使用RabbitMQ作为消息代理。可以通过以下命令进行安装:
sudo apt-get install rabbitmq-server
安装后需要创建一个新用户并授权:
sudo rabbitmqctl add_user openstack RABBIT_PASS
sudo rabbitmqctl set_permissions openstack “.*” “.*” “.*”
其中“RABBIT_PASS”为我们指定的密码。
接下来需要编辑Nova配置文件/etc/nova/nova.conf,进行消息代理配置。
[DEFAULT]
transport_url = rabbit://openstack:RABBIT_PASS@controller
[oslo_messaging_rabbit]
rabbit_host = controller
rabbit_userid = openstack
rabbit_password = RABBIT_PASS
“`
4. 配置认证和授权
Nova使用Keystone作为认证和授权服务。因此需要将Nova与Keystone集成,并在Nova中添加相应的API端点和用户权限等信息。
首先需要编辑Keystone配置文件/etc/keystone/keystone.conf,启用相应服务:
[token]
provider=fernet
driver=sql
expiration=300
[revoke]
[catalog]
driver=mysql
[assignment]
[policy]
enforce_scope=True
[sso]
enabled=False
“`
然后重启Keystone服务:
sudo service apache2 restart
接下来需要创建一个新用户并授权:
export OS_PROJECT_DOMAIN_NAME=default
export OS_USER_DOMAIN_NAME=default
export OS_PROJECT_NAME=admin
export OS_USERNAME=admin
export OS_PASSWORD=ADMIN_PASS
export OS_AUTH_URL=
export OS_IDENTITY_API_VERSION=3
openstack user create –domain default –password-prompt nova
openstack role add –project service –user nova admin
openstack service create –name nova
–description “OpenStack Compute” compute
openstack endpoint create –region RegionOne
compute public (tenant_id)s
compute internal (tenant_id)s
compute admin (tenant_id)s
其中“ADMIN_PASS”为我们指定的密码,“RegionOne”为区域名称。
5. 配置Nova服务
最后需要编辑Nova配置文件/etc/nova/nova.conf,进行Nova服务的配置。
enabled_apis = osapi_compute,metadata
auth_strategy = keystone
my_ip = CONTROLLER_IP_ADDRESS
[api_database]
connection = mysql+pymysql://nova:NOVA_DBPASS@controller/nova_api
[glance]
api_servers =
[oslo_concurrency]
lock_path=/var/lib/nova/tmp
[keystone_authtoken]
auth_uri =
auth_url =
memcached_servers = controller:11211
auth_type = password
project_domain_name = default
user_domain_name = default
project_name = service
username = nova
password = NOVA_PASS
[vnc]
enabled=True
vncserver_listen=0.0.0.0
vncserver_proxyclient_address=CONTROLLER_IP_ADDRESS
[neutron]
url=
auth_strategy=keystone
其中“NOVA_PASS”为我们指定的密码,“CONTROLLER_IP_ADDRESS”为控制节点的IP地址。
二、启动nova服务
完成nova组件的安装和配置后,可以通过以下命令启动nova服务:
sudo service nova-api restart
sudo service nova-cert restart
sudo service nova-consoleauth restart
sudo service nova-scheduler restart
sudo service nova-conductor restart
sudo service nova-novncproxy restart
三、创建虚拟机实例
在完成Nova组件的安装和配置后,就可以开始创建虚拟机实例了。可以使用Horizon Dashboard或者OpenStack客户端进行操作。
1. 使用Horizon Dashboard创建虚拟机实例
首先登录Horizon Dashboard,并进入“Project”->“Compute”->“Instances”,点击“Launch Instance”。
在弹出窗口中输入相应信息,包括镜像、flavor、网络等,并设置密码等信息。最后点击“Launch Instance”,即可开始创建虚拟机实例。
2. 使用OpenStack客户端创建虚拟机实例
首先需要安装OpenStack客户端:
pip install python-openstackclient
然后可以使用以下命令创建虚拟机实例:
openstack server create –flavor FLAVOR_NAME –image IMAGE_NAME
–key-name KEY_PAIR_NAME INSTANCE_NAME
其中“FLAVOR_NAME”为虚拟机规格,“IMAGE_NAME”为镜像名称,“KEY_PAIR_NAME”为密钥对名称,“INSTANCE_NAME”为虚拟机实例名称。
四、总结
本文介绍了如何在Ubuntu系统上搭建OpenStack平台,并详细讲解了nova组件的安装和配置过程。同时还介绍了如何使用Horizon Dashboard或者OpenStack客户端创建虚拟机实例。希望本文能够帮助读者更加深入地理解和掌握OpenStack技术。