openstack部署nova

controller

一、创建nova数据库,并设置权限及远程登录

  mysql -u root -p

  CREATE DATABASE nova_api;

  CREATE DATABASE nova;

  CREATE DATABASE nova_cell0;

  GRANT ALL PRIVILEGES ON nova_api.* TO ‘nova‘@‘localhost‘ \ IDENTIFIED BY ‘NOVA_DBPASS‘;

  GRANT ALL PRIVILEGES ON nova_api.* TO ‘nova‘@‘%‘ \ IDENTIFIED BY ‘NOVA_DBPASS‘;

  GRANT ALL PRIVILEGES ON nova.* TO ‘nova‘@‘localhost‘ \ IDENTIFIED BY ‘NOVA_DBPASS‘;

  GRANT ALL PRIVILEGES ON nova.* TO ‘nova‘@‘%‘ \ IDENTIFIED BY ‘NOVA_DBPASS‘;

  GRANT ALL PRIVILEGES ON nova_cell0.* TO ‘nova‘@‘localhost‘ \ IDENTIFIED BY ‘NOVA_DBPASS‘;

  GRANT ALL PRIVILEGES ON nova_cell0.* TO ‘nova‘@‘%‘ \ IDENTIFIED BY ‘NOVA_DBPASS‘;

二、创建nova用户

  ①创建nova用户

  source openrc

  openstack user create --domain default --password=nova nova

  ②将default项目中的nova用户设置成admin角色 

  openstack role add --project service --user nova admin

  ③创建nova服务

  openstack service create --name nova \ --description "OpenStack Compute" compute

  ④创建nova服务端点

  openstack endpoint create --region RegionOne  compute public http://controller:8774/v2.1

  openstack endpoint create --region RegionOne  compute internal http://controller:8774/v2.1

  openstack endpoint create --region RegionOne  compute admin http://controller:8774/v2.1

三、创建placement用户(起到统计资源使用的功能)

  ①创建placement用户

  openstack user create --domain default --password=placement placement

  ②将service项目中的placement用户设置成admin角色

  openstack role add --project service --user placement admin

  ③创建服务

  openstack service create --name placement --description "Placement API" placement

  ④创建服务端点

  openstack endpoint create --region RegionOne placement public http://controller:8778

  openstack endpoint create --region RegionOne placement internal http://controller:8778

  openstack endpoint create --region RegionOne placement admin http://controller:8778

四、安装nova

  ①安装nova服务包

  yum install openstack-nova-api openstack-nova-conductor  openstack-nova-console openstack-nova-novncproxy  openstack-nova-scheduler openstack-nova-placement-api

  ②修改nova配置文件

  cp /etc/nova/nova.conf /etc/nova/nova.conf.bak 

[DEFAULT]
my_ip=192.168.42.120  #控制节点ip
use_neutron = True
firewall_driver = nova.virt.firewall.NoopFirewallDriver         #防火墙驱动
enabled_apis=osapi_compute,metadata
transport_url = rabbit://openstack:[email protected]       #rabbitmq的连接方式

[api]
auth_strategy = keystone

[api_database]
connection = mysql+pymysql://nova:[email protected]/nova_api

[barbican]

[cache]

[cells]

[cinder]
#os_region_name = RegionOne

[cloudpipe]

[conductor]

[console]

[consoleauth]

[cors]

[cors.subdomain]

[crypto]

[database]
connection = mysql+pymysql://nova:[email protected]/nova

[ephemeral_storage_encryption]

[filter_scheduler]

[glance]
api_servers = http://controller:9292

[guestfs]

[healthcheck]

[hyperv]

[image_file_url]

[ironic]

[key_manager]

[keystone_authtoken]
auth_uri = http://controller:5000
auth_url = http://controller:35357
memcached_servers = controller:11211
auth_type = password
project_domain_name = default
user_domain_name = default
project_name = service
username = nova
password = nova

[libvirt]
#virt_type=qemu

[matchmaker_redis]

[metrics]

[mks]

[neutron]
#url = http://controller:9696
#auth_url = http://controller:35357
#auth_type = password
#project_domain_name = default
#user_domain_name = default
#region_name = RegionOne
#project_name = service
#username = neutron
#password = neutron
#service_metadata_proxy = true
#metadata_proxy_shared_secret = METADATA_SECRET

[notifications]

[osapi_v21]

[oslo_concurrency]
lock_path=/var/lib/nova/tmp         #临时文件保存位置

[oslo_messaging_amqp]

[oslo_messaging_kafka]

[oslo_messaging_notifications]

[oslo_messaging_rabbit]

[oslo_messaging_zmq]

[oslo_middleware]

[oslo_policy]

[pci]
[placement]
os_region_name = RegionOne
auth_type = password
auth_url = http://controller:35357/v3      #认证的地址
project_name = service
project_domain_name = Default
username = placement
password = placement
user_domain_name = Default

[quota]

[rdp]

[remote_debug]

[scheduler]

[serial_console]

[service_user]

[spice]

[ssl]

[trusted_computing]

[upgrade_levels]

[vendordata_dynamic_auth]

[vmware]

[vnc]   #可以连接虚拟机
enabled=true
vncserver_listen=$my_ip      #监听ip地址
vncserver_proxyclient_address=$my_ip    #vnc代理服务监听地址
#novncproxy_base_url = http://172.16.254.63:6080/vnc_auto.html

[workarounds]

[wsgi]

[xenserver]

[xvp]

vim /etc/noa/nova.conf

  ③创建一个服务追踪的配置文件(补充到文件的末尾)

vim /etc/httpd/conf.d/00-nova-placement-api.conf<Directory /usr/bin>
   <IfVersion >= 2.4>
      Require all granted
   </IfVersion>
   <IfVersion < 2.4>
      Order allow,deny
      Allow from all
   </IfVersion>
</Directory>

  ④重启httpd服务

  systemctl restart httpd

  ⑤同步api、cell0数据库

  su -s /bin/sh -c "nova-manage api_db sync" nova

  su -s /bin/sh -c "nova-manage cell_v2 map_cell0" nova

  ⑥创建cell证书的id

  su -s /bin/sh -c "nova-manage cell_v2 create_cell --name=cell1 --verbose" nova

  ⑦同步nova数据库

  su -s /bin/sh -c "nova-manage db sync" nova

  ⑧列示cell证书列表

  nova-manage cell_v2 list_cells

  ⑨重启并设置开机自启

  systemctl enable openstack-nova-api.service  openstack-nova-consoleauth.service openstack-nova-scheduler.service  openstack-nova-conductor.service openstack-nova-novncproxy.service
  systemctl start openstack-nova-api.service  openstack-nova-consoleauth.service openstack-nova-scheduler.service  openstack-nova-conductor.service openstack-nova-novncproxy.service

compute  

openstack的库都建立在控制节点上,其他节点不需要建库

  ①安装nova包(先解决依赖)yum安装

  qemu-img-ev-2.9.0-16.el7_4.8.1.x86_64.rpm         qemu-kvm-ev-2.9.0-16.el7_4.8.1.x86_64.rpm         qemu-kvm-common-ev-2.9.0-16.el7_4.8.1.x86_64.rpm
  yum install openstack-nova-compute

  ②编辑nova配置文件

  cp /etc/nova/nova.conf /etc/nova/nova.conf.bak

[DEFAULT]
my_ip=192.168.42.121      #管理网卡的ip地址
use_neutron = True
firewall_driver = nova.virt.firewall.NoopFirewallDriver
enabled_apis=osapi_compute,metadata
transport_url = rabbit://openstack:[email protected]

[api]
#auth_strategy = keystone

[api_database]
#connection = mysql+pymysql://nova:[email protected]/nova_api

[barbican]

[cache]

[cells]

[cinder]
#os_region_name = RegionOne

[cloudpipe]

[conductor]

[console]

[consoleauth]

[cors]

[cors.subdomain]

[crypto]

[database]
#connection = mysql+pymysql://nova:[email protected]/nova

[ephemeral_storage_encryption]

[filter_scheduler]

[glance]
api_servers = http://controller:9292

[guestfs]

[healthcheck]

[hyperv]

[image_file_url]

[ironic]

[key_manager]

[keystone_authtoken]
auth_uri = http://controller:5000
auth_url = http://controller:35357
memcached_servers = controller:11211
auth_type = password
project_domain_name = default
user_domain_name = default
project_name = service
username = nova
password = nova

[libvirt]
virt_type=qemu   #调用后台虚拟化

[matchmaker_redis]

[metrics]

[mks]

[neutron]
#url = http://controller:9696
#auth_url = http://controller:35357
#auth_type = password
#project_domain_name = default
#user_domain_name = default
#region_name = RegionOne
#project_name = service
#username = neutron
#password = neutron
#service_metadata_proxy = true
#metadata_proxy_shared_secret = METADATA_SECRET

[notifications]

[osapi_v21]

[oslo_concurrency]
lock_path=/var/lib/nova/tmp

[oslo_messaging_amqp]

[oslo_messaging_kafka]

[oslo_messaging_notifications]

[oslo_messaging_rabbit]

[oslo_messaging_zmq]

[oslo_middleware]

[oslo_policy]

[pci]
[placement]
os_region_name = RegionOne
auth_type = password
auth_url = http://controller:35357/v3
project_name = service
project_domain_name = Default
username = placement
password = placement
user_domain_name = Default

[quota]

[rdp]

[remote_debug]

[scheduler]

[serial_console]

[service_user]

[spice]

[ssl]

[trusted_computing]

[upgrade_levels]

[vendordata_dynamic_auth]

[vmware]

[vnc]
enabled=true
vncserver_listen=0.0.0.0
vncserver_proxyclient_address=$my_ip
novncproxy_base_url = http://controller:6080/vnc_auto.html     #控制节点地址

[workarounds]

[wsgi]

[xenserver]

[xvp]

vim /etc/nova/nova.conf

  ③过滤计算节点是否开启虚拟化

  egrep -c ‘(vmx|svm)‘ /proc/cpuinfo

  ④重启并设置开启自启

  systemctl enable libvirtd.service openstack-nova-compute.service

·   systemctl start libvirtd.service openstack-nova-compute.service          #启不来查看日志,具体错误具体解决

  ⑤列示openstack管理虚拟化类型

  openstack hypervisor list

  ⑥数据库同步计算接节点

  su -s /bin/sh -c "nova-manage cell_v2 discover_hosts --verbose" nova

  ⑦在控制节点查看计算服务的工作状态

    openstack compute service list(enable表示开启,up运行)

    openstack catalog list (查看服务列表)

    openstack image list  (查看镜像列表)

    nova-status upgrade check  (nova状态服务检测)

      显示都成功即可

  

原文地址:https://www.cnblogs.com/daisyyang/p/10976062.html

时间: 2024-11-08 23:50:22

openstack部署nova的相关文章

queens版本openstack部署nova报错解决

根据官方文档:https://docs.openstack.org/nova/queens/install/controller-install-rdo.html,部署nova服务. 到最后的几步时,也就是同步api数据库"Populate the nova-api database"时,出现报错. [[email protected] ~]# su -s /bin/sh -c "nova-manage api_db sync" nova /usr/lib/pyth

openstack部署

环境准备 1.openstack部署 - 硬件要求 实验环境:至少两台机器. Controller Node: 1 processor, 2 GB memory, and 5 GB storage Compute Node: 1 processor, 2 GB memory, and 10 GB storage 2.openstack部署 - 前期准备 关闭selinux setenforce 0 关闭iptables systemctl dissystemctl stop firewalld

网易OpenStack部署运维实战

防伪码:没有所谓的命运,只有不同的选择. OpenStack简介 OpenStack 是一个开源的 IaaS 实现,它由一些相互关联的子项目组成,主要包括计算.存储.网络. 由于以 Apache 协议发布,自 2010 年项目成立以来,超过 200 个公司加入了 OpenStack 项目,其中包括 AT&T.AMD.Cisco.Dell.IBM.Intel.Red Hat 等. 目前参与 OpenStack 项目的开发人员有 17,000+,来自 139 个国家,这一数字还在不断增长中. Ope

Openstack部署工具

Openstack发展很猛,很多朋友都很认同,2013年,会很好的解决OpenStack部署的问题,让安装,配置变得更加简单易用. 很多公司都投入人力去做这个,新浪也计划做一个Openstack的iso,集成OS,当你决定去做这个的时候,那么先了解一下目前的现状.说到部 署,肯定和OS有关,对于Openstack来说,无非就是Ubuntu还是CentOS,当然也会和OpenStack版本有关. 其实部署工具,最麻烦的地方,不是软件的配置和安装,而且网络.用户的网络情况太多,还有Openstack

OpenStack部署到Hadoop的四种方案

随着企业开始同时利用云计算和大数据技术,现在应当考虑如何将这些工具结合使用.在这种情况下,企业将实现最佳的分析处理能力,同时利用私有云的快速弹性 (rapid elasticity) 和单一租赁的特性.如何协同效用和实现部署,是本文希望解决的问题. 一些基础知识 第一是OpenStack .作为目前最流行的开源云版本,它包括控制器.计算 (Nova).存储 (Swift).消息队列 (RabbitMQ) 和网络 (Quantum) 组件.图 1 提供了这些组件的一个图示(不包含 Quantum

五,openstack之nova服务的安装(计算节点)

目录 openstack之nova服务的安装(计算节点) 一,计算节点安装部署nova 1,openstack安装服务的通用步骤 2,安装nova 3,修改nova的相关配置文件 4,确认计算节点是否支持虚拟机硬件加速 5,启动Compute服务及其相关服务,并将其配置为在系统启动时自动启动 6,查看程序启动状态 openstack之nova服务的安装(计算节点) 一,计算节点安装部署nova 1,openstack安装服务的通用步骤 1,创库授权 2,在keystone创建用户,关联角色 3,

Openstack针对nova,cinder,glance使用ceph的虚拟机创建机制优化

 今天在开源中国社区看到有如下一个问题: 已经成功把ceph作为cinder和 glance的后端,但是如果作为nova的后端,虚拟机启动速度非常慢,网上查了一下是因为openstack创建虚拟机的时候通过ceph取镜像创建虚拟机再把虚拟机存回ceph的步骤浪费了很多时间,是否有办法不把镜像取到本地,而是直接在ceph的存储池里完成虚拟机的创建呢? 实际上,我当前也是把ceph作为nova,cinder,glance三者的后端,创建虚拟机速度非常慢.查了一下相关和资料,是有新的处理方式,当前

OpenStack部署工具总结

目前感觉比较简单直观的部署工具有RDO.devstack.Fuel等: 1. RDO https://openstack.redhat.com/Quickstart REDHAT出品,支持Redhat.CentOS等系统.RDO基于puppet部署各个组件,支持单节点或多节点部署,在Redhat系操作系统上使用非常方便. 2. devstack http://docs.openstack.org/developer/devstack/ 这个应该是最老的Openstack部署工具了,可以用来快速部

Openstack之Nova分析

前言  Openstack作为一个虚拟机管理平台,核心功能自然是虚拟机的生命周期的管理,而负责虚机管理的模块就是 Nova. 本文就是openstack中Nova模块的分析,所以本文重点是以下三点: 先了解Openstack的整体架构,搞清楚为什么要用这样的架构: 然后再了解架构中的各个组件,组件提供的主要功能与各个组件之间的交互: 了解虚机的启动过程,能在遇到问题时发现问题出在哪个模块中的哪个组件. Nova组件介绍 接下来进行详细介绍,如有错误,欢迎拍砖! 下图为创建虚拟机的一个大概流程图.