五、OpenStack安装Nova

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介:

计算服务

计算服务是云算机控制器,它是IaaS系统的主要部分,用它来承载和管理云计算系统,主模块是用python来实现的,与keystone验证,对于图像服务以及dashboard和管理接口,获取镜像是通过项目和用户配额限制,如实例数量,


组件:

API

Nova-api请求和回复一个用户计算的API,支持openstack 计算API,Amazon EC2 apiAdmin Api对特权用户执行管理操作,另外启动最新的任务,如运行一个实例,安装一个虚拟机

Nova-api-metadata 接受来自实例的元数据请求


Comput core

Nova-comput 进程,一个守护进程,通过虚拟机管理程序的API创建和终止虚拟机实例,如xenapi for xenserver/xcp libvirt适用于kvm qemu vmwareapi 适用于vmware

Nova-scheduler 进程,调度,从消息队列中取一个虚拟机实例的请求,并执行在其虚拟主机上。

Nova-conductor 模式,介于nova-computerdatabase之间,设计目的在于消除直接nova-computer直接访问云数据库。


Networking for VMs

Nova-network 工作守护进程,类nova-computer它接受消息队列中的任务闭幕式执行,如设立桥接接口或者更改iptables规则,

Nova-dhcpbridge 脚本,跟踪IP地址租约,并通过使用dnsmasqDHCP脚本记录在数据库中。


Console interface

Noca-consoleauth 守护进程,由用户的console控制台代理提供授权tokens,两种模式nova-novncproxynova-xvpnvcproxy

nova-novncproxy 守护进程,提供了VNC连接访问正在运行的实例的代表,基于novnc客户浏览器

Nova-console 已经弃用,被 nova-xvpnvncproxy取代

nova-xvpnvncproxy 守护进程,通过vnc连接访问正在运行的实例代理,支持专门设计的Openstackjava客户端

Nova-cert 守护进程,管理x509证书


Image management

nova-objectstore 提供了一个用于注册S3接口的镜像服务,主要必须支持euca2ools安装,nova-objectstore转换S3请求镜像服务的请求

Euca2ools 客户端,一组命令解释器来管理云资源,可以配置nova-api来支持EC2接口。

Command-line clients and other interfaces

Nova 客户端 使用户、租客管理员提交命令

Nova-manage 客户端,使云管理员提交命令


Other components

The queue 消息队列 rabbitmq,apache qpid zeromq

Sql database 数据库mysql,sqlite,PostgreSQL

逻辑图:

wKioL1LGdVjz5lMHAABydgb4nlI238.jpg



安装

可以配置在一个节点或多个节点。

1、安装包

# apt-get install nova-novncproxy novnc nova-api   nova-ajax-console-proxy nova-cert nova-conductor   nova-consoleauth nova-doc nova-scheduler   python-novaclient

2、配置连接数据库/etc/nova/nova.conf和注册keystone服务

[database]

connection = mysql://nova:stack@controller/nova

[keystone_authtoken]

auth_host = controller

auth_port = 35357

auth_protocol = http

admin_tenant_name = service

admin_user = nova

admin_password = stack

wKiom1LGdW6BWK-fAAA0qru62mA288.jpg

3、配置使用消息队列rabbitmq

rpc_backend = nova.rpc.impl_kombu

rabbit_host = controller

rabbit_password = rabbit

wKioL1LGdWqSb0JnAAAWQEOva0s728.jpg


4、删除默认数据库

# rm /var/lib/nova/nova.sqlite

5、创建数据库以及授权访问

mysql> create database nova;

mysql> GRANT ALL PRIVILEGES ON nova.* TO 'nova'@'localhost' IDENTIFIED BY 'stack';

mysql> GRANT ALL PRIVILEGES ON nova.* TO 'nova'@'controller' IDENTIFIED BY 'stack';

wKiom1LGdYDjM4xoAABUWnyWUN8569.jpg

6、同步计算服务数据表

# nova-manage db sync

wKioL1LGdXzxDoB5AAFf1cCPXyE980.jpg

查看数据库的表

wKiom1LGdbXD_aSiAABrIeqcVqs255.jpg

7、设制自己的IP以及其它VNC监控的项

wKioL1LGdbTxfV5VAAAgj7d549o478.jpg

8、keystone中注册nova

# keystone user-create --name=nova --pass=stack --email=zwhset@163.com

# keystone user-role-add --user=nova --tenant=service --role=admin

wKiom1LGdcugdIR9AABbDt6KMZg620.jpg



9、配置使用keystone验证以及更改nova_pass密码 [DEFAULT]项里

auth_strategy=keystone

wKioL1LGdcjTomj_AAAIpKJ6E40332.jpg


10、添加认证方式和密码等文件/etc/nova/api-paste.ini

[filter:authtoken]

paste.filter_factory = keystoneclient.middleware.auth_token:filter_factory

auth_host = controller

auth_port = 35357

auth_protocol = http

admin_tenant_name = service

admin_user = nova

admin_password = stack

wKiom1LGdd2xDoetAAArnw5jNGY575.jpg

注意:在nova.conf文件里有这个文件的指向:

wKioL1LGddiwrOnUAAAm5vpiBUg168.jpg


11、注册keystone服务让其它服务找到他,并且创建终端。

# keystone service-create --name=nova --type=compute --description="Nova Compute service"

wKiom1LGde6To3x4AABVN8ILXB8491.jpg

使用刚才的ID创建终端,

keystone endpoint-create \

>   --service-id=2c4823bba2a0455ab1f45ab956cd830a \

>   --publicurl=http://controller:8774/v2/%\(tenant_id\)s \

>   --internalurl=http://controller:8774/v2/%\(tenant_id\)s \

>   --adminurl=http://controller:8774/v2/%\(tenant_id\)s

wKiom1LGdfew8q4_AAEE-uBMLww358.jpg

12、重启计算服务

# service nova-api restart

# service nova-cert restart

# service nova-consoleauth restart

# service nova-scheduler restart

# service nova-conductor restart

# service nova-novncproxy restart

wKiom1LGdgHBfyXvAADlWIo28Oc459.jpg


13、列出计算可用的镜像


wKiom1LGdgqxwLEtAABcNG2m8Ug494.jpg







本文转自 煮酒品茶 51CTO博客,原文链接:http://blog.51cto.com/cwtea/1348218,如需转载请自行联系原作者
目录
相关文章
|
8月前
|
IDE Linux KVM
云计算|OpenStack|社区版OpenStack---基本概念科普(kvm的驱动类别和安装)
云计算|OpenStack|社区版OpenStack---基本概念科普(kvm的驱动类别和安装)
303 0
|
8月前
|
存储 消息中间件 数据库
云计算|OpenStack|社区版OpenStack安装部署文档(八--- 存储服务cinder的安装部署---Rocky版)
云计算|OpenStack|社区版OpenStack安装部署文档(八--- 存储服务cinder的安装部署---Rocky版)
340 0
|
8月前
|
云计算 数据安全/隐私保护 虚拟化
云计算|OpenStack|社区版OpenStack安装部署文档(十一--- 如何获取镜像---Rocky版)
云计算|OpenStack|社区版OpenStack安装部署文档(十一--- 如何获取镜像---Rocky版)
231 0
|
5月前
|
存储 网络协议 Linux
如何安装OpenStack?
【8月更文挑战第21天】
721 1
|
5月前
|
存储 API 调度
OpenStack的计算服务(Nova)
【8月更文挑战第23天】
376 9
|
5月前
|
API 调度 数据库
OpenStack核心组件Nova
【8月更文挑战第4天】
288 9
|
8月前
|
云计算
云计算|OpenStack|社区版OpenStack安装部署文档(十--- 调整配额限制和解决建虚拟机报错---No valid host was found---Rocky版)
云计算|OpenStack|社区版OpenStack安装部署文档(十--- 调整配额限制和解决建虚拟机报错---No valid host was found---Rocky版)
316 0
|
8月前
|
弹性计算 Linux 网络安全
云计算|OpenStack|社区版OpenStack安装部署文档(九--- 创建一个虚拟机实例---Rocky版)
云计算|OpenStack|社区版OpenStack安装部署文档(九--- 创建一个虚拟机实例---Rocky版)
110 0
|
8月前
|
Linux API 数据库
云计算|OpenStack|社区版OpenStack安装部署文档(六 --- 网络服务neutron的安装部署---Rocky版)
云计算|OpenStack|社区版OpenStack安装部署文档(六 --- 网络服务neutron的安装部署---Rocky版)
240 0
|
8月前
|
存储 云计算 虚拟化
云计算|OpenStack|使用VMware安装华为云的R006版CNA和VRM---初步使用(二)
云计算|OpenStack|使用VMware安装华为云的R006版CNA和VRM---初步使用(二)
357 0