跳转至

7. 安装网络服务neutron

0. 介绍

# neutron:允许创建、附加网卡设备,这些设备由其他的openstack服务管理。
# 插件式的实现可以容纳不同的网络设备和软件,为openstack架构与部署提供了灵活性。

# 常用组件:
    neutron-server:接收和响应外部的网络管理请求
    neutron-linuxbridge-agent:负责创建桥接网卡
    neutron-dhcp-agent:负责分配IP
    neutron-metadata-agent:配合nova-metadata-api实现虚拟机的定制化操作
    L3-agent:实现三层网络vxlan(网络层)
## 1.数据库创库授权
## 2.在keystone创建系统用户关联角色
## 3.在keystone创建服务,注册api
## 4.安装相应服务软件包
## 5.修改相应服务的配置文件
## 6.同步数据库
## 7.启动服务

控制节点

1.数据库创库授权

#control
#1.登录
mysql

#2.建库
CREATE DATABASE neutron;

#3.授权
GRANT ALL PRIVILEGES ON neutron.* TO 'neutron'@'localhost' IDENTIFIED BY 'NEUTRON_DBPASS';
GRANT ALL PRIVILEGES ON neutron.* TO 'neutron'@'%' IDENTIFIED BY 'NEUTRON_DBPASS';

#4.退出
exit

2.在keystone创建系统用户关联角色

# 在keystone创建系统用户(glance,nova,neutron)关联角色
openstack user create --domain default --password NEUTRON_PASS neutron

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

3.在keystone创建服务,注册api

#1.创建服务
openstack service create --name neutron --description "OpenStack Networking" network

#2.注册api
openstack endpoint create --region RegionOne network public http://controller:9696
openstack endpoint create --region RegionOne network internal http://controller:9696
openstack endpoint create --region RegionOne network admin http://controller:9696

#3.查看服务
openstack service list
[root@controller ~]# openstack service list
+----------------------------------+----------+----------+
| ID                               | Name     | Type     |
+----------------------------------+----------+----------+
| 51f14d69bcab4d6982ff856d1986669f | glance   | image    |
| 64cb6376edac49938ae5290a4068fdca | neutron  | network  |
| 86060f03a8a64205901419e67d32d600 | nova     | compute  |
| a538eedaa2364bd5904e24ed2cce0928 | keystone | identity |
+----------------------------------+----------+----------+

4.安装相应服务软件包

yum install openstack-neutron openstack-neutron-ml2 openstack-neutron-linuxbridge ebtables -y

5.修改相应服务的配置文件

1. neutron.conf

#1.备份
cp /etc/neutron/neutron.conf{,.bak}

#2.去注释
grep '^[a-Z\[]' /etc/neutron/neutron.conf.bak >/etc/neutron/neutron.conf

#3.修改
openstack-config --set /etc/neutron/neutron.conf  DEFAULT core_plugin  ml2
openstack-config --set /etc/neutron/neutron.conf  DEFAULT service_plugins
openstack-config --set /etc/neutron/neutron.conf  DEFAULT rpc_backend  rabbit
openstack-config --set /etc/neutron/neutron.conf  DEFAULT auth_strategy  keystone
openstack-config --set /etc/neutron/neutron.conf  DEFAULT notify_nova_on_port_status_changes  True
openstack-config --set /etc/neutron/neutron.conf  DEFAULT notify_nova_on_port_data_changes  True
openstack-config --set /etc/neutron/neutron.conf  database connection  mysql+pymysql://neutron:NEUTRON_DBPASS@controller/neutron
openstack-config --set /etc/neutron/neutron.conf  keystone_authtoken auth_uri  http://controller:5000
openstack-config --set /etc/neutron/neutron.conf  keystone_authtoken auth_url  http://controller:35357
openstack-config --set /etc/neutron/neutron.conf  keystone_authtoken memcached_servers  controller:11211
openstack-config --set /etc/neutron/neutron.conf  keystone_authtoken auth_type  password
openstack-config --set /etc/neutron/neutron.conf  keystone_authtoken project_domain_name  default
openstack-config --set /etc/neutron/neutron.conf  keystone_authtoken user_domain_name  default
openstack-config --set /etc/neutron/neutron.conf  keystone_authtoken project_name  service
openstack-config --set /etc/neutron/neutron.conf  keystone_authtoken username  neutron
openstack-config --set /etc/neutron/neutron.conf  keystone_authtoken password  NEUTRON_PASS
openstack-config --set /etc/neutron/neutron.conf  nova auth_url  http://controller:35357
openstack-config --set /etc/neutron/neutron.conf  nova auth_type  password 
openstack-config --set /etc/neutron/neutron.conf  nova project_domain_name  default
openstack-config --set /etc/neutron/neutron.conf  nova user_domain_name  default
openstack-config --set /etc/neutron/neutron.conf  nova region_name  RegionOne
openstack-config --set /etc/neutron/neutron.conf  nova project_name  service
openstack-config --set /etc/neutron/neutron.conf  nova username  nova
openstack-config --set /etc/neutron/neutron.conf  nova password  NOVA_PASS
openstack-config --set /etc/neutron/neutron.conf  oslo_concurrency lock_path  /var/lib/neutron/tmp
openstack-config --set /etc/neutron/neutron.conf  oslo_messaging_rabbit rabbit_host  controller
openstack-config --set /etc/neutron/neutron.conf  oslo_messaging_rabbit rabbit_userid  openstack
openstack-config --set /etc/neutron/neutron.conf  oslo_messaging_rabbit rabbit_password  RABBIT_PASS

#4.校验
md5sum /etc/neutron/neutron.conf
# e399b7958cd22f47becc6d8fd6d3521a  /etc/neutron/neutron.conf

#5.查看
cat -n /etc/neutron/neutron.conf
[root@controller ~]# #4.校验
[root@controller ~]# md5sum /etc/neutron/neutron.conf
e399b7958cd22f47becc6d8fd6d3521a  /etc/neutron/neutron.conf
[root@controller ~]# # e399b7958cd22f47becc6d8fd6d3521a  /etc/neutron/neutron.conf
[root@controller ~]#
[root@controller ~]# #5.查看
[root@controller ~]# cat -n /etc/neutron/neutron.conf
     1  [DEFAULT]
     2  core_plugin = ml2
     3  service_plugins =
     4  rpc_backend = rabbit
     5  auth_strategy = keystone
     6  notify_nova_on_port_status_changes = True
     7  notify_nova_on_port_data_changes = True
     8  [agent]
     9  [cors]
    10  [cors.subdomain]
    11  [database]
    12  connection = mysql+pymysql://neutron:NEUTRON_DBPASS@controller/neutron
    13  [keystone_authtoken]
    14  auth_uri = http://controller:5000
    15  auth_url = http://controller:35357
    16  memcached_servers = controller:11211
    17  auth_type = password
    18  project_domain_name = default
    19  user_domain_name = default
    20  project_name = service
    21  username = neutron
    22  password = NEUTRON_PASS
    23  [matchmaker_redis]
    24  [nova]
    25  auth_url = http://controller:35357
    26  auth_type = password
    27  project_domain_name = default
    28  user_domain_name = default
    29  region_name = RegionOne
    30  project_name = service
    31  username = nova
    32  password = NOVA_PASS
    33  [oslo_concurrency]
    34  lock_path = /var/lib/neutron/tmp
    35  [oslo_messaging_amqp]
    36  [oslo_messaging_notifications]
    37  [oslo_messaging_rabbit]
    38  rabbit_host = controller
    39  rabbit_userid = openstack
    40  rabbit_password = RABBIT_PASS
    41  [oslo_policy]
    42  [qos]
    43  [quotas]
    44  [ssl]

2. ml2_conf.ini

#1.备份
cp /etc/neutron/plugins/ml2/ml2_conf.ini{,.bak}

#2.去注释
grep '^[a-Z\[]' /etc/neutron/plugins/ml2/ml2_conf.ini.bak >/etc/neutron/plugins/ml2/ml2_conf.ini

#3.修改
openstack-config --set /etc/neutron/plugins/ml2/ml2_conf.ini  ml2 type_drivers  flat,vlan
openstack-config --set /etc/neutron/plugins/ml2/ml2_conf.ini  ml2 tenant_network_types 
openstack-config --set /etc/neutron/plugins/ml2/ml2_conf.ini  ml2 mechanism_drivers  linuxbridge
openstack-config --set /etc/neutron/plugins/ml2/ml2_conf.ini  ml2 extension_drivers  port_security
openstack-config --set /etc/neutron/plugins/ml2/ml2_conf.ini  ml2_type_flat flat_networks  provider
openstack-config --set /etc/neutron/plugins/ml2/ml2_conf.ini  securitygroup enable_ipset  True

#4.校验
md5sum /etc/neutron/plugins/ml2/ml2_conf.ini
# 2640b5de519fafcd675b30e1bcd3c7d5  /etc/neutron/plugins/ml2/ml2_conf.ini

#5.查看
cat -n /etc/neutron/plugins/ml2/ml2_conf.ini
[root@controller ~]# #4.校验
[root@controller ~]# md5sum /etc/neutron/plugins/ml2/ml2_conf.ini
2640b5de519fafcd675b30e1bcd3c7d5  /etc/neutron/plugins/ml2/ml2_conf.ini
[root@controller ~]# # 2640b5de519fafcd675b30e1bcd3c7d5  /etc/neutron/plugins/ml2/ml2_conf.ini
[root@controller ~]#
[root@controller ~]# #5.查看
[root@controller ~]# cat -n /etc/neutron/plugins/ml2/ml2_conf.ini
     1  [DEFAULT]
     2  [ml2]
     3  type_drivers = flat,vlan
     4  tenant_network_types =
     5  mechanism_drivers = linuxbridge
     6  extension_drivers = port_security
     7  [ml2_type_flat]
     8  flat_networks = provider
     9  [ml2_type_geneve]
    10  [ml2_type_gre]
    11  [ml2_type_vlan]
    12  [ml2_type_vxlan]
    13  [securitygroup]
    14  enable_ipset = True

3. linuxbridge_agent.ini

#1.备份
cp /etc/neutron/plugins/ml2/linuxbridge_agent.ini{,.bak}

#2.去注释
grep '^[a-Z\[]' /etc/neutron/plugins/ml2/linuxbridge_agent.ini.bak >/etc/neutron/plugins/ml2/linuxbridge_agent.ini

#3.修改
openstack-config --set /etc/neutron/plugins/ml2/linuxbridge_agent.ini  linux_bridge physical_interface_mappings  provider:eth0
openstack-config --set /etc/neutron/plugins/ml2/linuxbridge_agent.ini  securitygroup enable_security_group  True
openstack-config --set /etc/neutron/plugins/ml2/linuxbridge_agent.ini  securitygroup firewall_driver  neutron.agent.linux.iptables_firewall.IptablesFirewallDriver
openstack-config --set /etc/neutron/plugins/ml2/linuxbridge_agent.ini  vxlan enable_vxlan  False

#4.校验
md5sum /etc/neutron/plugins/ml2/linuxbridge_agent.ini
# 3f474907a7f438b34563e4d3f3c29538  /etc/neutron/plugins/ml2/linuxbridge_agent.ini

#5.查看
cat -n  /etc/neutron/plugins/ml2/linuxbridge_agent.ini
[root@controller ~]# cat -n  /etc/neutron/plugins/ml2/linuxbridge_agent.ini
     1  [DEFAULT]
     2  [agent]
     3  [linux_bridge]
     4  physical_interface_mappings = provider:eth0
     5  [securitygroup]
     6  enable_security_group = True
     7  firewall_driver = neutron.agent.linux.iptables_firewall.IptablesFirewallDriver
     8  [vxlan]
     9  enable_vxlan = False

4. dhcp_agent.ini

#1.备份
cp /etc/neutron/dhcp_agent.ini{,.bak} 

#2.去注释
grep -Ev '^$|#' /etc/neutron/dhcp_agent.ini.bak >/etc/neutron/dhcp_agent.ini

#3.修改
openstack-config --set  /etc/neutron/dhcp_agent.ini  DEFAULT  interface_driver  neutron.agent.linux.interface.BridgeInterfaceDriver
openstack-config --set  /etc/neutron/dhcp_agent.ini  DEFAULT dhcp_driver  neutron.agent.linux.dhcp.Dnsmasq
openstack-config --set  /etc/neutron/dhcp_agent.ini  DEFAULT enable_isolated_metadata  True

#4.校验
md5sum /etc/neutron/dhcp_agent.ini
# d39579607b2f7d92e88f8910f9213520  /etc/neutron/dhcp_agent.ini

#5.查看
cat -n /etc/neutron/dhcp_agent.ini
[root@controller ~]# #4.校验
[root@controller ~]# md5sum /etc/neutron/dhcp_agent.ini
d39579607b2f7d92e88f8910f9213520  /etc/neutron/dhcp_agent.ini
[root@controller ~]# # d39579607b2f7d92e88f8910f9213520  /etc/neutron/dhcp_agent.ini
[root@controller ~]#
[root@controller ~]# #5.查看
[root@controller ~]# cat -n /etc/neutron/dhcp_agent.ini
     1  [DEFAULT]
     2  interface_driver = neutron.agent.linux.interface.BridgeInterfaceDriver
     3  dhcp_driver = neutron.agent.linux.dhcp.Dnsmasq
     4  enable_isolated_metadata = True
     5  [AGENT]

5. metadata_agent.ini

#1.备份
cp /etc/neutron/metadata_agent.ini{,.bak} 

#2.去注释
grep -Ev '^$|#' /etc/neutron/metadata_agent.ini.bak >/etc/neutron/metadata_agent.ini

#3.修改
openstack-config --set /etc/neutron/metadata_agent.ini DEFAULT  nova_metadata_ip  controller
openstack-config --set /etc/neutron/metadata_agent.ini DEFAULT  metadata_proxy_shared_secret  METADATA_SECRET

#4.校验
md5sum /etc/neutron/metadata_agent.ini
# e1166b0dfcbcf4507d50860d124335d6  /etc/neutron/metadata_agent.ini

#5.查看
cat -n /etc/neutron/metadata_agent.ini
[root@controller ~]# #4.校验
[root@controller ~]# md5sum /etc/neutron/metadata_agent.ini
e1166b0dfcbcf4507d50860d124335d6  /etc/neutron/metadata_agent.ini
[root@controller ~]# # e1166b0dfcbcf4507d50860d124335d6  /etc/neutron/metadata_agent.ini
[root@controller ~]#
[root@controller ~]# #5.查看
[root@controller ~]# cat -n /etc/neutron/metadata_agent.ini
     1  [DEFAULT]
     2  nova_metadata_ip = controller
     3  metadata_proxy_shared_secret = METADATA_SECRET
     4  [AGENT]

6. nova.conf

#1. 再次修改/etc/nova/nova.conf
openstack-config --set /etc/nova/nova.conf  neutron url  http://controller:9696
openstack-config --set /etc/nova/nova.conf  neutron auth_url  http://controller:35357
openstack-config --set /etc/nova/nova.conf  neutron auth_type  password
openstack-config --set /etc/nova/nova.conf  neutron project_domain_name  default
openstack-config --set /etc/nova/nova.conf  neutron user_domain_name  default
openstack-config --set /etc/nova/nova.conf  neutron region_name  RegionOne
openstack-config --set /etc/nova/nova.conf  neutron project_name  service
openstack-config --set /etc/nova/nova.conf  neutron username  neutron
openstack-config --set /etc/nova/nova.conf  neutron password  NEUTRON_PASS
openstack-config --set /etc/nova/nova.conf  neutron service_metadata_proxy  True
openstack-config --set /etc/nova/nova.conf  neutron metadata_proxy_shared_secret  METADATA_SECRET

#2. 校验
md5sum /etc/nova/nova.conf
# 6334f359655efdbcf083b812ab94efc1  /etc/nova/nova.conf

#3.查看
cat -n /etc/nova/nova.conf
[root@controller ~]# #2. 校验
[root@controller ~]# md5sum /etc/nova/nova.conf
0c5c423c98abbbc08cc7d031221199fc  /etc/nova/nova.conf
[root@controller ~]# # 6334f359655efdbcf083b812ab94efc1  /etc/nova/nova.conf
[root@controller ~]#
[root@controller ~]# #3.查看
[root@controller ~]# cat -n /etc/nova/nova.conf
     1  [DEFAULT]
     2  enabled_apis = osapi_compute,metadata
     3  rpc_backend = rabbit
     4  auth_strategy = keystone
     5  my_ip = 192.168.178.11
     6  use_neutron = True
     7  firewall_driver = nova.virt.firewall.NoopFirewallDriver
     8  [api_database]
     9  connection = mysql+pymysql://nova:NOVA_DBPASS@controller/nova_api
    10  [barbican]
    11  [cache]
    12  [cells]
    13  [cinder]
    14  [conductor]
    15  [cors]
    16  [cors.subdomain]
    17  [database]
    18  connection = mysql+pymysql://nova:NOVA_DBPASS@controller/nova
    19  [ephemeral_storage_encryption]
    20  [glance]
    21  api_servers = http://controller:9292
    22  [guestfs]
    23  [hyperv]
    24  [image_file_url]
    25  [ironic]
    26  [keymgr]
    27  [keystone_authtoken]
    28  auth_uri = http://controller:5000
    29  auth_url = http://controller:35357
    30  memcached_servers = controller:11211
    31  auth_type = password
    32  project_domain_name = default
    33  user_domain_name = default
    34  project_name = service
    35  username = nova
    36  password = NOVA_PASS
    37  [libvirt]
    38  [matchmaker_redis]
    39  [metrics]
    40  [neutron]
    41  url = http://controller:9696
    42  auth_url = http://controller:35357
    43  auth_type = password
    44  project_domain_name = default
    45  user_domain_name = default
    46  region_name = RegionOne
    47  project_name = service
    48  username = neutron
    49  password = NEUTRON_PASS
    50  service_metadata_proxy = True
    51  metadata_proxy_shared_secret = METADATA_SECRET
    52  [osapi_v21]
    53  [oslo_concurrency]
    54  lock_path = /var/lib/nova/tmp
    55  [oslo_messaging_amqp]
    56  [oslo_messaging_notifications]
    57  [oslo_messaging_rabbit]
    58  rabbit_host = controller
    59  rabbit_userid = openstack
    60  rabbit_password = RABBIT_PASS
    61  [oslo_middleware]
    62  [oslo_policy]
    63  [rdp]
    64  [serial_console]
    65  [spice]
    66  [ssl]
    67  [trusted_computing]
    68  [upgrade_levels]
    69  [vmware]
    70  [vnc]
    71  vncserver_listen = $my_ip
    72  vncserver_proxyclient_address = $my_ip
    73  [workarounds]
    74  [xenserver]

6.同步数据库

#1.创建链接
ln -s /etc/neutron/plugins/ml2/ml2_conf.ini /etc/neutron/plugin.ini

#2.同步
su -s /bin/sh -c "neutron-db-manage --config-file /etc/neutron/neutron.conf \
  --config-file /etc/neutron/plugins/ml2/ml2_conf.ini upgrade head" neutron

#3.查看
mysql neutron -e "show tables;"

7.启动服务

#1.重启nova服务
systemctl restart openstack-nova-api.service

#2.开机自启neutron服务
systemctl enable neutron-server.service \
  neutron-linuxbridge-agent.service neutron-dhcp-agent.service \
  neutron-metadata-agent.service

#3.启动neutron服务
systemctl start neutron-server.service \
  neutron-linuxbridge-agent.service neutron-dhcp-agent.service \
  neutron-metadata-agent.service

8. 验证

neutron agent-list
[root@controller ~]# neutron agent-list
+--------------------------------------+--------------------+------------+-------------------+-------+----------------+---------------------------+
| id                                   | agent_type         | host       | availability_zone | alive | admin_state_up | binary                    |
+--------------------------------------+--------------------+------------+-------------------+-------+----------------+---------------------------+
| 5ced1c10-a583-412b-ac9f-04472690e23a | Linux bridge agent | controller |                   | :-)   | True           | neutron-linuxbridge-agent |
| d8af3511-2fa3-4a87-80ea-e79979021aae | Metadata agent     | controller |                   | :-)   | True           | neutron-metadata-agent    |
| dfaa1c3b-06a7-4687-9470-23bd1131b96e | DHCP agent         | controller | nova              | :-)   | True           | neutron-dhcp-agent        |
+--------------------------------------+--------------------+------------+-------------------+-------+----------------+---------------------------+

计算节点

1. 安装

##计算节点上:
yum install openstack-neutron-linuxbridge ebtables ipset -y

2. 配置文件

#1.备份
cp /etc/neutron/neutron.conf{,.bak}

#2.去注释
grep '^[a-Z\[]' /etc/neutron/neutron.conf.bak >/etc/neutron/neutron.conf

#3.修改
openstack-config --set /etc/neutron/neutron.conf  DEFAULT rpc_backend  rabbit
openstack-config --set /etc/neutron/neutron.conf  DEFAULT auth_strategy  keystone
openstack-config --set /etc/neutron/neutron.conf  keystone_authtoken auth_uri  http://controller:5000
openstack-config --set /etc/neutron/neutron.conf  keystone_authtoken auth_url  http://controller:35357
openstack-config --set /etc/neutron/neutron.conf  keystone_authtoken memcached_servers  controller:11211
openstack-config --set /etc/neutron/neutron.conf  keystone_authtoken auth_type  password
openstack-config --set /etc/neutron/neutron.conf  keystone_authtoken project_domain_name  default
openstack-config --set /etc/neutron/neutron.conf  keystone_authtoken user_domain_name  default
openstack-config --set /etc/neutron/neutron.conf  keystone_authtoken project_name  service
openstack-config --set /etc/neutron/neutron.conf  keystone_authtoken username  neutron
openstack-config --set /etc/neutron/neutron.conf  keystone_authtoken password  NEUTRON_PASS
openstack-config --set /etc/neutron/neutron.conf  oslo_concurrency lock_path  /var/lib/neutron/tmp
openstack-config --set /etc/neutron/neutron.conf  oslo_messaging_rabbit rabbit_host  controller
openstack-config --set /etc/neutron/neutron.conf  oslo_messaging_rabbit rabbit_userid  openstack
openstack-config --set /etc/neutron/neutron.conf  oslo_messaging_rabbit rabbit_password  RABBIT_PASS

#4.校验
md5sum /etc/neutron/neutron.conf
# 77ffab503797be5063c06e8b956d6ed0  /etc/neutron/neutron.conf

#5.查看
cat -n /etc/neutron/neutron.conf
[root@compute1 ~]# #4.校验
[root@compute1 ~]# md5sum /etc/neutron/neutron.conf
77ffab503797be5063c06e8b956d6ed0  /etc/neutron/neutron.conf
[root@compute1 ~]# # 77ffab503797be5063c06e8b956d6ed0  /etc/neutron/neutron.conf
[root@compute1 ~]#
[root@compute1 ~]# #5.查看
[root@compute1 ~]# cat -n /etc/neutron/neutron.conf
     1  [DEFAULT]
     2  rpc_backend = rabbit
     3  auth_strategy = keystone
     4  [agent]
     5  [cors]
     6  [cors.subdomain]
     7  [database]
     8  [keystone_authtoken]
     9  auth_uri = http://controller:5000
    10  auth_url = http://controller:35357
    11  memcached_servers = controller:11211
    12  auth_type = password
    13  project_domain_name = default
    14  user_domain_name = default
    15  project_name = service
    16  username = neutron
    17  password = NEUTRON_PASS
    18  [matchmaker_redis]
    19  [nova]
    20  [oslo_concurrency]
    21  lock_path = /var/lib/neutron/tmp
    22  [oslo_messaging_amqp]
    23  [oslo_messaging_notifications]
    24  [oslo_messaging_rabbit]
    25  rabbit_host = controller
    26  rabbit_userid = openstack
    27  rabbit_password = RABBIT_PASS
    28  [oslo_policy]
    29  [qos]
    30  [quotas]
    31  [ssl]

2. linuxbridge_agent.ini

#1.备份
cp /etc/neutron/plugins/ml2/linuxbridge_agent.ini{,.bak}

#2.去注释
grep '^[a-Z\[]' /etc/neutron/plugins/ml2/linuxbridge_agent.ini.bak >/etc/neutron/plugins/ml2/linuxbridge_agent.ini

#3.修改
openstack-config --set /etc/neutron/plugins/ml2/linuxbridge_agent.ini  linux_bridge physical_interface_mappings  provider:eth0
openstack-config --set /etc/neutron/plugins/ml2/linuxbridge_agent.ini  securitygroup enable_security_group  True
openstack-config --set /etc/neutron/plugins/ml2/linuxbridge_agent.ini  securitygroup firewall_driver  neutron.agent.linux.iptables_firewall.IptablesFirewallDriver
openstack-config --set /etc/neutron/plugins/ml2/linuxbridge_agent.ini  vxlan enable_vxlan  False

#4.校验
md5sum /etc/neutron/plugins/ml2/linuxbridge_agent.ini
# 3f474907a7f438b34563e4d3f3c29538  /etc/neutron/plugins/ml2/linuxbridge_agent.ini

#5.查看
cat -n /etc/neutron/plugins/ml2/linuxbridge_agent.ini
[root@compute1 ~]# #4.校验
[root@compute1 ~]# md5sum /etc/neutron/plugins/ml2/linuxbridge_agent.ini
3f474907a7f438b34563e4d3f3c29538  /etc/neutron/plugins/ml2/linuxbridge_agent.ini
[root@compute1 ~]# # 3f474907a7f438b34563e4d3f3c29538  /etc/neutron/plugins/ml2/linuxbridge_agent.ini
[root@compute1 ~]#
[root@compute1 ~]# #5.查看
[root@compute1 ~]# cat -n /etc/neutron/plugins/ml2/linuxbridge_agent.ini
     1  [DEFAULT]
     2  [agent]
     3  [linux_bridge]
     4  physical_interface_mappings = provider:eth0
     5  [securitygroup]
     6  enable_security_group = True
     7  firewall_driver = neutron.agent.linux.iptables_firewall.IptablesFirewallDriver
     8  [vxlan]
     9  enable_vxlan = False

3. nova.conf

#1.再次修改nova.conf
openstack-config --set /etc/nova/nova.conf  neutron url  http://controller:9696
openstack-config --set /etc/nova/nova.conf  neutron auth_url  http://controller:35357
openstack-config --set /etc/nova/nova.conf  neutron auth_type  password
openstack-config --set /etc/nova/nova.conf  neutron project_domain_name  default
openstack-config --set /etc/nova/nova.conf  neutron user_domain_name  default
openstack-config --set /etc/nova/nova.conf  neutron region_name  RegionOne
openstack-config --set /etc/nova/nova.conf  neutron project_name  service
openstack-config --set /etc/nova/nova.conf  neutron username  neutron
openstack-config --set /etc/nova/nova.conf  neutron password  NEUTRON_PASS

#2.校验
md5sum /etc/nova/nova.conf
# 328cd5f0745e26a420e828b0dfc2934e  /etc/nova/nova.conf

#3.查看
cat -n /etc/nova/nova.conf
[root@compute1 ~]# #2.校验
[root@compute1 ~]# md5sum /etc/nova/nova.conf
9c6d01ff285b0011e5b0071fb5d95296  /etc/nova/nova.conf
[root@compute1 ~]# # 328cd5f0745e26a420e828b0dfc2934e  /etc/nova/nova.conf
[root@compute1 ~]#
[root@compute1 ~]# #3.查看
[root@compute1 ~]# cat -n /etc/nova/nova.conf
     1  [DEFAULT]
     2  enabled_apis = osapi_compute,metadata
     3  rpc_backend = rabbit
     4  auth_strategy = keystone
     5  my_ip = 192.168.178.31
     6  use_neutron = True
     7  firewall_driver = nova.virt.firewall.NoopFirewallDriver
     8  [api_database]
     9  [barbican]
    10  [cache]
    11  [cells]
    12  [cinder]
    13  [conductor]
    14  [cors]
    15  [cors.subdomain]
    16  [database]
    17  [ephemeral_storage_encryption]
    18  [glance]
    19  api_servers = http://controller:9292
    20  [guestfs]
    21  [hyperv]
    22  [image_file_url]
    23  [ironic]
    24  [keymgr]
    25  [keystone_authtoken]
    26  auth_uri = http://controller:5000
    27  auth_url = http://controller:35357
    28  memcached_servers = controller:11211
    29  auth_type = password
    30  project_domain_name = default
    31  user_domain_name = default
    32  project_name = service
    33  username = nova
    34  password = NOVA_PASS
    35  [libvirt]
    36  [matchmaker_redis]
    37  [metrics]
    38  [neutron]
    39  url = http://controller:9696
    40  auth_url = http://controller:35357
    41  auth_type = password
    42  project_domain_name = default
    43  user_domain_name = default
    44  region_name = RegionOne
    45  project_name = service
    46  username = neutron
    47  password = NEUTRON_PASS
    48  [osapi_v21]
    49  [oslo_concurrency]
    50  lock_path = /var/lib/nova/tmp
    51  [oslo_messaging_amqp]
    52  [oslo_messaging_notifications]
    53  [oslo_messaging_rabbit]
    54  rabbit_host = controller
    55  rabbit_userid = openstack
    56  rabbit_password = RABBIT_PASS
    57  [oslo_middleware]
    58  [oslo_policy]
    59  [rdp]
    60  [serial_console]
    61  [spice]
    62  [ssl]
    63  [trusted_computing]
    64  [upgrade_levels]
    65  [vmware]
    66  [vnc]
    67  enabled = True
    68  vncserver_listen = 0.0.0.0
    69  vncserver_proxyclient_address = $my_ip
    70  novncproxy_base_url = http://controller:6080/vnc_auto.html
    71  [workarounds]
    72  [xenserver]

3.启动

systemctl restart openstack-nova-compute.service
systemctl enable neutron-linuxbridge-agent.service
systemctl start neutron-linuxbridge-agent.service

4. 再次验证

#controller
neutron agent-list
#出现4个笑脸,则说明成功!(host列,多出一个compute1)
[root@controller ~]# neutron agent-list
+--------------------------------------+--------------------+------------+-------------------+-------+----------------+---------------------------+
| id                                   | agent_type         | host       | availability_zone | alive | admin_state_up | binary                    |
+--------------------------------------+--------------------+------------+-------------------+-------+----------------+---------------------------+
| 5ced1c10-a583-412b-ac9f-04472690e23a | Linux bridge agent | controller |                   | :-)   | True           | neutron-linuxbridge-agent |
| 787e9938-4d41-4735-afc3-cd2c066d495c | Linux bridge agent | compute1   |                   | :-)   | True           | neutron-linuxbridge-agent |
| d8af3511-2fa3-4a87-80ea-e79979021aae | Metadata agent     | controller |                   | :-)   | True           | neutron-metadata-agent    |
| dfaa1c3b-06a7-4687-9470-23bd1131b96e | DHCP agent         | controller | nova              | :-)   | True           | neutron-dhcp-agent        |
+--------------------------------------+--------------------+------------+-------------------+-------+----------------+---------------------------+

最后更新: 2022-02-20 04:00:12