用于创建虚拟机的节点;

0、配置openstack版本yum源:

yum install centos-release-openstack-rocky

1、nova-compute的安装;

(1)安装包:

yum install openstack-nova-compute

(2)编辑配置文件:

计算节点的/etc/nova/nova.conf配置文件和控制节点的配置文件比较相似,只要改变

部分配置即可:

1)将控制节点的配置拷贝到计算节点上:

scp -P22 /etc/nova/nova.conf root@172.16.1.12:/etc/nova/

chown -R root.nova /etc/nova/nova.conf

ls -l /etc/nova/nova.conf

-rw-r----- 1 root nova 389725 3月 29 23:59 /etc/nova/nova.conf

2)修改:

vim /etc/nova/nova.conf

[DEFAULT]

enabled_apis = osapi_compute,metadata

#启用计算和元数据的api;

transport_url = rabbit://openstack:openstack@controller

#启用RabbitMQ消息队列;

use_neutron = true

#启用neutron管理网络;

firewall_driver = nova.virt.firewall.NoopFirewallDriver

#关闭nova的防火墙使用neutron的防火墙;

[api_database]

#connection = mysql+pymysql://nova:nova@controller/nova_api

[database]

#connection = mysql+pymysql://nova:nova@controller/nova

[placement_database]

#connection = mysql+pymysql://placement:placement@controller/placement

#配置数据库;

#删除配置的数据库,由控制节点连接数据库;

[api]

auth_strategy = keystone

[keystone_authtoken]

auth_url = http://controller:5000/v3

memcached_servers = controller:11211

auth_type = password

project_domain_name = default

user_domain_name = default

project_name = service

username = nova

password = nova

#配置身份服务访问;

[vnc]

enabled = true

server_listen = 0.0.0.0

#vnc监听的网卡;

server_proxyclient_address = compute1

#vnc_proxy使用;

#vnc需要配置为本地;
novncproxy_base_url = http://controller:6080/vnc_auto.html

#URL指示您可以使用Web浏览器访问此计算节点上的实例的远程控制台的位置;

[glance]

api_servers = http://controller:9292

#配置glance;

[oslo_concurrency]

lock_path = /var/lib/nova/tmp

#锁路径;

[placement]

region_name = RegionOne

project_domain_name = Default

project_name = service

auth_type = password

user_domain_name = Default

auth_url = http://controller:5000/v3

username = placement

password = placement

[libvirt]

virt_type = qemu
#egrep -c '(vmx|svm)' /proc/cpuinfo

#如果返回的结果为0,说明该机器不支持
#虚拟化,使用的参数是virt_type = qemu

#特别注意:在虚拟机的环境下,虽然开机了虚拟化但是还是创建不

#了虚拟你,需要改为qemu;

(3)将服务加入到开机自启动并开启服务:

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

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

(4)将计算节点添加到控制节点的单元数据库(很重要):

openstack compute service list --service nova-compute

+----+--------------+----------+------+---------+-------+----------------------------+

| ID | Binary | Host | Zone | Status | State | Updated At |

+----+--------------+----------+------+---------+-------+----------------------------+

| 6 | nova-compute | compute1 | nova | enabled | up | 2019-03-29T16:11:03.000000 |

+----+--------------+----------+------+---------+-------+----------------------------+

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

Found 2 cell mappings.

Skipping cell0 since it does not contain hosts.

Getting computes from cell 'cell1': e92cce3a-5fee-4e90-b7fe-1ef7fdfa6c69

Checking host mapping for compute host 'compute1': 36976a76-bf81-4300-900c-b4b0abbb573b

Creating host mapping for compute host 'compute1': 36976a76-bf81-4300-900c-b4b0abbb573b

Found 1 unmapped computes in cell: e92cce3a-5fee-4e90-b7fe-1ef7fdfa6c69

openstack image list

+--------------------------------------+--------+--------+

| ID | Name | Status |

+--------------------------------------+--------+--------+

| a036ec33-6df8-45ec-adbe-4b0ac189dc8c | cirros | active |

+--------------------------------------+--------+--------+

说明: 计算节点的主机名必需唯一,且在计算节点在控制节点注册后就不能再改计算节点的主机名,否则控制节点

会把改名的计算当做一台新的计算节点进行注册;

添加新计算节点时,必须在控制器节点上运行以注册这些新计算节点。或者可以设置适当的间隔;

vim /etc/nova/nova.conf

[scheduler]

discover_hosts_in_cells_interval = 300

2、neutron服务:

(1)安装软件包:

yum install openstack-neutron-linuxbridge ebtables ipset

(2)配置公共组件:

vim /etc/neutron/neutron.conf

[DEFAULT]

transport_url = rabbit://openstack:openstack@controller

#消息队列连接;

auth_strategy = keystone

#身份验证模式;

[keystone_authtoken]

www_authenticate_uri = http://controller:5000

auth_url = http://controller:5000

memcached_servers = controller:11211

auth_type = password

project_domain_name = default

user_domain_name = default

project_name = service

username = neutron

password = neutron

#身份验证;

[oslo_concurrency]

lock_path = /var/lib/neutron/tmp

#锁定路径;

(3)配置网络选项1-提供商网络:

vim /etc/neutron/plugins/ml2/linuxbridge_agent.ini

[linux_bridge]

physical_interface_mappings = provider:eth0

#配置提供物理网络的接口名称;

[vxlan]

enable_vxlan = false

#禁用vxlan重叠网络;

[securitygroup]

enable_security_group = true

firewall_driver = neutron.agent.linux.iptables_firewall.IptablesFirewallDriver

#启用安全组,并配置linux网桥iptables防火墙驱动程序;

以下参数在启动neutron-linuxbridge-agent.service的时候会自动设置为1,以确保

linux内核支持网桥过滤器;

sysctl net.bridge.bridge-nf-call-iptables

sysctl net.bridge.bridge-nf-call-ip6tables

(4)配置Compute服务以使用Networking服务:

vim /etc/nova/nova.conf

[neutron]

url = http://controller:9696

auth_url = http://controller:5000

auth_type = password

project_domain_name = default

user_domain_name = default

region_name = RegionOne

project_name = service

username = neutron

password = neutron

(5)重启compute服务:

systemctl restart openstack-nova-compute.service

(6)启动Linux网桥代理并将其配置为在系统引导时启动:

systemctl enable neutron-linuxbridge-agent.service

systemctl start neutron-linuxbridge-agent.service

(7)验证:

在控制节点进行验证:

openstack network agent list

+--------------------------------------+--------------------+------------+-------------------+-------+-------+---------------------------+

| ID | Agent Type | Host | Availability Zone | Alive | State | Binary |

+--------------------------------------+--------------------+------------+-------------------+-------+-------+---------------------------+

| 1210dc27-0620-49d4-850e-2d3c86cf6a43 | DHCP agent | controller | nova | :-) | UP | neutron-dhcp-agent |

| 2aed088c-e3a4-4714-a63d-3056eabddafa | Linux bridge agent | controller | None | :-) | UP | neutron-linuxbridge-agent |

| 2ccc602e-29d4-46b2-a501-19a17a6a9b8f | Metadata agent | controller | None | :-) | UP | neutron-metadata-agent |

| 7021bdb8-e775-4c88-8976-06c1549f0440 | Linux bridge agent | compute1 | None | :-) | UP | neutron-linuxbridge-agent |

+--------------------------------------+--------------------+------------+-------------------+-------+-------+---------------------------+

openstack compute service list

+----+------------------+------------+----------+---------+-------+----------------------------+

| ID | Binary | Host | Zone | Status | State | Updated At |

+----+------------------+------------+----------+---------+-------+----------------------------+

| 1 | nova-consoleauth | controller | internal | enabled | up | 2019-03-30T09:56:26.000000 |

| 2 | nova-conductor | controller | internal | enabled | up | 2019-03-30T09:56:31.000000 |

| 3 | nova-scheduler | controller | internal | enabled | up | 2019-03-30T09:56:25.000000 |

| 6 | nova-compute | compute1 | nova | enabled | up | 2019-03-30T09:56:26.000000 |

+----+------------------+------------+----------+---------+-------+----------------------------+

最新文章

  1. MVC 教程汇总
  2. Maven使用笔记(五)Sonatype Nexus 搭建Maven 私服
  3. catalan数及笔试面试里那些相关的问题(转)
  4. hdu 1509 Windows Message Queue
  5. [设计模式] .NET设计模式笔记 - 了解设计模式
  6. 面试常考的数据结构Java实现
  7. 把 图片 资源文件 编译到dll
  8. ThinkPHP内置函数详解D、F、S、C、L、A、I
  9. php 分页类(1)
  10. POJ 2031 Building a Space Station 最小生成树模板
  11. DELPHI XE8 远程调试
  12. ./runInstaller: Permission denied
  13. C#进度条简单应用
  14. mongodb常用的sql语句总结
  15. C语言---指针变量详解1
  16. js 精确验证身份证(地址编码、出生日期、校验位验证)
  17. 购物demo
  18. matplotlib绘图不显示问题解决plt.show()
  19. node.js+ react + redux 环境搭建
  20. Java JDBC调用存储过程:无参、输入带参、输出及输出带参

热门文章

  1. [bug] Shell:paths must precede expression
  2. [bug] maven“1.5不支持diamond运算符,请使用source 7或更高版本以启用diamond运算符”
  3. [刷题] 454 4Sum II
  4. QT 资源链家暂存
  5. 通过format学习,python的内部方法是面象对象的-python面向对象
  6. [rhel-media] :Yum软件仓库唯一标识符,避免与其他仓库冲突。
  7. Redis 为什么使用跳跃表
  8. STM32 中的HARDFAULT 的查找方法
  9. 并发王者课-青铜7:顺藤摸瓜-如何从synchronized中的锁认识Monitor
  10. Pycharm搜索导航之文件名、符号名搜索