OpenStack Ussuri版安装系列—7.1控制节点-Neutron网络服务组件

控制节点网络服务Neutron组件

OpenStack部署系列文章
OpenStack Victoria版 安装部署系列教程
OpenStack Ussuri版 离线安装部署系列教程(全)
OpenStack Train版 离线安装部署系列教程(全)
欢迎留言沟通,共同进步。

官方参考链接

OpenStack安装指南:Install OpenStack services

OpenStack Ussuri Installation Guides

Networking service Installation Guide

CSDN链接

9 Openstack-Ussuri-Neutron控制/计算节点集群部署-centos8

7.1控制节点-Neutron网络服务组件

一、创建neutron相关数据库、服务凭证和API端点

1.创建neutron数据库,授予合适的访问权限

mysql -uroot -proot
CREATE DATABASE neutron;
GRANT ALL PRIVILEGES ON neutron.* TO 'neutron'@'localhost' IDENTIFIED BY 'neutron';
GRANT ALL PRIVILEGES ON neutron.* TO 'neutron'@'%' IDENTIFIED BY 'neutron';
exit

2.创建neutron服务凭据

(1)在keystone上创建neutron用户

cd
source admin-openrc.sh
openstack user create --domain default --password=neutron neutron

#或者

cd
source admin-openrc.sh
openstack user create --domain default --password-prompt neutron
openstack user list
[root@controller ~]# cd
[root@controller ~]# source admin-openrc.sh
[root@controller ~]# openstack user create --domain default --password=neutron neutron
+---------------------+----------------------------------+
| Field               | Value                            |
+---------------------+----------------------------------+
| domain_id           | default                          |
| enabled             | True                             |
| id                  | ee4b390789184b1ea077d0d4f16b643f |
| name                | neutron                          |
| options             | {}                               |
| password_expires_at | None                             |
+---------------------+----------------------------------+
[root@controller ~]# openstack user list
+----------------------------------+-----------+
| ID                               | Name      |
+----------------------------------+-----------+
| 9e981db62a8c42368ab6b9d31f674534 | admin     |
| 61440f3ee54b407e86e16fdbd33ae3bc | glance    |
| 32e1de50af4d476a97475ac0e19f6591 | placement |
| c1cc3224eb5b4d2786ade306f569a354 | nova      |
| ee4b390789184b1ea077d0d4f16b643f | neutron   |
+----------------------------------+-----------+
[root@controller ~]#

(2)将neutron授予admin角色,并添加到service项目
以下命令无输出

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

(3)创建neutron服务实体

openstack service create --name neutron --description "OpenStack Networking" network
openstack service list
[root@controller ~]# openstack role add --project service --user neutron admin
[root@controller ~]# openstack service create --name neutron --description "OpenStack Networking" network
+-------------+----------------------------------+
| Field       | Value                            |
+-------------+----------------------------------+
| description | OpenStack Networking             |
| enabled     | True                             |
| id          | 0ec0d311f93b4d8e9db2292c2cfe3fcd |
| name        | neutron                          |
| type        | network                          |
+-------------+----------------------------------+
[root@controller ~]# openstack service list
+----------------------------------+-----------+-----------+
| ID                               | Name      | Type      |
+----------------------------------+-----------+-----------+
| 0dc21bff96fa471aab0593c15c773a77 | keystone  | identity  |
| 0ec0d311f93b4d8e9db2292c2cfe3fcd | neutron   | network   |
| 9c487f96b6cf4770b765ae827a24ecf3 | nova      | compute   |
| e8f22c3df5154b0998d6a1a166c42344 | placement | placement |
| ecf843c619af4475b491ca85ec5873c3 | glance    | image     |
+----------------------------------+-----------+-----------+
[root@controller ~]#

3.创建neutron网络服务的API端点(endpoint)

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
openstack endpoint list

[root@controller ~]# openstack endpoint create --region RegionOne network public http://controller:9696
+--------------+----------------------------------+
| Field        | Value                            |
+--------------+----------------------------------+
| enabled      | True                             |
| id           | 785e5d53244348e78c6a5347ba5ffa9c |
| interface    | public                           |
| region       | RegionOne                        |
| region_id    | RegionOne                        |
| service_id   | 0ec0d311f93b4d8e9db2292c2cfe3fcd |
| service_name | neutron                          |
| service_type | network                          |
| url          | http://controller:9696           |
+--------------+----------------------------------+
[root@controller ~]# openstack endpoint create --region RegionOne network internal http://controller:9696
+--------------+----------------------------------+
| Field        | Value                            |
+--------------+----------------------------------+
| enabled      | True                             |
| id           | 3c746e2a3e054ef59daf86987b7eecab |
| interface    | internal                         |
| region       | RegionOne                        |
| region_id    | RegionOne                        |
| service_id   | 0ec0d311f93b4d8e9db2292c2cfe3fcd |
| service_name | neutron                          |
| service_type | network                          |
| url          | http://controller:9696           |
+--------------+----------------------------------+
[root@controller ~]# openstack endpoint create --region RegionOne network admin http://controller:9696
+--------------+----------------------------------+
| Field        | Value                            |
+--------------+----------------------------------+
| enabled      | True                             |
| id           | e103384ffb52449ab9d7d751c8eb9f29 |
| interface    | admin                            |
| region       | RegionOne                        |
| region_id    | RegionOne                        |
| service_id   | 0ec0d311f93b4d8e9db2292c2cfe3fcd |
| service_name | neutron                          |
| service_type | network                          |
| url          | http://controller:9696           |
+--------------+----------------------------------+
[root@controller ~]# openstack endpoint list
+----------------------------------+-----------+--------------+--------------+---------+-----------+-----------------------------+
| ID                               | Region    | Service Name | Service Type | Enabled | Interface | URL                         |
+----------------------------------+-----------+--------------+--------------+---------+-----------+-----------------------------+
| 0185dcdefe5742dd91c94b411c3ae972 | RegionOne | glance       | image        | True    | public    | http://controller:9292      |
| 26ebb984fe214376960e2d6af1d0f7db | RegionOne | nova         | compute      | True    | internal  | http://controller:8774/v2.1 |
| 2aea6c495e9c4ddc829ec19c35ae95a4 | RegionOne | placement    | placement    | True    | internal  | http://controller:8778      |
| 3c746e2a3e054ef59daf86987b7eecab | RegionOne | neutron      | network      | True    | internal  | http://controller:9696      |
| 45f532c92b8e43e58489d7244762074d | RegionOne | keystone     | identity     | True    | public    | http://controller:5000/v3/  |
| 49be584717ff4c91a47a10ad8608ee88 | RegionOne | nova         | compute      | True    | admin     | http://controller:8774/v2.1 |
| 74b4810114d241d593b0c351f119ac44 | RegionOne | glance       | image        | True    | admin     | http://controller:9292      |
| 785e5d53244348e78c6a5347ba5ffa9c | RegionOne | neutron      | network      | True    | public    | http://controller:9696      |
| 7db879e2ab674124b1c256c740f32e11 | RegionOne | placement    | placement    | True    | public    | http://controller:8778      |
| a5a629b20cb347c3a98b0f991cd6765b | RegionOne | keystone     | identity     | True    | internal  | http://controller:5000/v3/  |
| a681d225ff184188a735d9168d43368a | RegionOne | nova         | compute      | True    | public    | http://controller:8774/v2.1 |
| ae9a8c8f28b14b238aca197d8f924e92 | RegionOne | glance       | image        | True    | internal  | http://controller:9292      |
| bea67b53815943358b49f88d11b847ad | RegionOne | keystone     | identity     | True    | admin     | http://controller:5000/v3/  |
| c253bf39039146f4acdedcadabb43413 | RegionOne | placement    | placement    | True    | admin     | http://controller:8778      |
| e103384ffb52449ab9d7d751c8eb9f29 | RegionOne | neutron      | network      | True    | admin     | http://controller:9696      |
+----------------------------------+-----------+--------------+--------------+---------+-----------+-----------------------------+
[root@controller ~]#

二、neutron相关软件安装与配置

现在可以做好网络名称的规划

供应商网络名称provider networks name:
供应商网络子网1名称provider networks subnet1 name:
供应商网络子网2名称provider networks subnet2 name:

自服务私有网络名称self-service networks name:
自服务私有网络子网1名称self-service networks subnet1 name:
自服务私有网络子网2名称self-service networks subnet2 name:

路由名称router name:

1.安装neutron相关软件

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

2.配置网络选项一:Provider networks

environment-networking-rdo

controller-install-option1-rdo

(1)配置neutron服务组件

/etc/neutron/neutron.conf
网络服务组件的配置包括数据库、身份验证机制、消息队列,拓扑更改通知和插件。

备份neutron配置

cd 
cp /etc/neutron/neutron.conf /etc/neutron/neutron.conf.bak
egrep -v "^$|^#" /etc/neutron/neutron.conf.bak >/etc/neutron/neutron.conf

配置neutron配置文件,在对应项底下增加以下字段

vim /etc/neutron/neutron.conf
[DEFAULT]
core_plugin= ml2
service_plugins
transport_url = rabbit://openstack:openstack@controller
auth_strategy = keystone
notify_nova_on_port_status_changes = True
notify_nova_on_port_data_changes = True

[cors]
[database]
connection = mysql+pymysql://neutron:neutron@controller/neutron

[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

[neutron]

[nova]
auth_url = http://controller:5000
auth_type = password
project_domain_name = default
user_domain_name = default
region_name = RegionOne
project_name = service
username = nova
password = nova

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

[oslo_messaging_amqp]
[oslo_messaging_kafka]
[oslo_messaging_notifications]
[oslo_messaging_rabbit]
[oslo_middleware]
[oslo_policy]
[privsep]
[ssl]
egrep -v "^#|^$" /etc/neutron/neutron.conf
(2)配置模块化层2(ML2)插件

/etc/neutron/plugins/ml2/ml2_conf.ini
ML2插件使用Linux桥接器机制为实例构建第2层(桥接和交换)虚拟网络基础结构。

cd 
cp /etc/neutron/plugins/ml2/ml2_conf.ini /etc/neutron/plugins/ml2/ml2_conf.ini.bak
egrep -v "^$|^#" /etc/neutron/plugins/ml2/ml2_conf.ini.bak >/etc/neutron/plugins/ml2/ml2_conf.ini

vim /etc/neutron/plugins/ml2/ml2_conf.ini
[DEFAULT]
[ml2]
type_drivers = flat,vlan
tenant_network_types = 
mechanism_drivers = linuxbridge
extension_drivers = port_security

[ml2_type_flat]
flat_networks = provider

[securitygroup]
enable_ipset = true
egrep -v "^#|^$" /etc/neutron/plugins/ml2/ml2_conf.ini
(3)配置Linux网桥代理

/etc/neutron/plugins/ml2/linuxbridge_agent.ini
Linux网桥代理为实例构建第2层(桥接和交换)虚拟网络基础结构并处理安全组。

cd 
cp /etc/neutron/plugins/ml2/linuxbridge_agent.ini /etc/neutron/plugins/ml2/linuxbridge_agent.ini.bak
egrep -v "^$|^#" /etc/neutron/plugins/ml2/linuxbridge_agent.ini.bak >/etc/neutron/plugins/ml2/linuxbridge_agent.ini

vim /etc/neutron/plugins/ml2/linuxbridge_agent.ini
[DEFAULT]
[linux_bridge]
physical_interface_mappings = provider:ens34

[vxlan]
enable_vxlan = False

[securitygroup]
enable_security_group = True 
firewall_driver = neutron.agent.linux.iptables_firewall.IptablesFirewallDriver
echo "Result of Configuration"
egrep -v '(^$|^#)' /etc/neutron/plugins/ml2/linuxbridge_agent.ini

加载br_netfilter内核模块。要启用网络桥接器支持,通常br_netfilter内核模块需要加载。参考Centos7网络桥接内核模块配置

echo net.bridge.bridge-nf-call-iptables = 1 >> /etc/sysctl.conf
echo net.bridge.bridge-nf-call-ip6tables = 1 >> /etc/sysctl.conf

cat /etc/sysctl.conf
sysctl -p
modprobe br_netfilter
ls /proc/sys/net/bridge
sysctl -p

sysctl net.bridge.bridge-nf-call-iptables
sysctl net.bridge.bridge-nf-call-ip6tables
(4)配置DHCP代理

/etc/neutron/dhcp_agent.ini
DHCP代理为虚拟网络提供DHCP服务。

cd
cp /etc/neutron/dhcp_agent.ini /etc/neutron/dhcp_agent.ini.bak
egrep -v "^$|^#" /etc/neutron/dhcp_agent.ini.bak >/etc/neutron/dhcp_agent.ini
vim /etc/neutron/dhcp_agent.ini
[DEFAULT]
interface_driver = linuxbridge
dhcp_driver = neutron.agent.linux.dhcp.Dnsmasq
enable_isolated_metadata = True 
echo "Result of Configuration"
egrep -v '(^$|^#)' /etc/neutron/dhcp_agent.ini

安装完成后,进入继续下一步创建。或者返回控制节点进行配置/etc/neutron/metadata_agent.ini文件,参考链接

此处我们选择先进入下一步,并且:第3和5项中,两种创建网络,实际操作都调整,至,网络配置,第五步控制节点最终确定安装各种服务启动之后。

ok ,下面跳到第4步 :4.配置网络选项二:Self-service networks

3.创建网络选项一:provider networks

配置:https://docs.openstack.org/neutron/train/install/controller-install-option1-rdo.html

创建:https://docs.openstack.org/install-guide/launch-instance-networks-provider.html

完成配置后,或者选择进入dashboard进行网络创建。

启动一个实例,官方文档launch-instance之launch-instance-networks,博客:启动一个实例启动一个实例

4.配置网络选项二:Self-service networks

配置:https://docs.openstack.org/neutron/train/install/controller-install-option2-rdo.html
创建:https://docs.openstack.org/install-guide/launch-instance-networks-selfservice.html

(1)配置neutron服务组件

/etc/neutron/neutron.conf
在之前创建provider网络时已经配置过,但self网络也有特定的配置,下面会标出不同的地方。

#add detail
openstack-config --set  /etc/neutron/neutron.conf DEFAULT service_plugins router
#add new
openstack-config --set  /etc/neutron/neutron.conf DEFAULT allow_overlapping_ips true
(2)配置模块化层2(ML2)插件

/etc/neutron/plugins/ml2/ml2_conf.ini
在之前创建provider网络时已经配置过,但self网络也有特定的配置,下面会标出不同的地方。

[DEFAULT]
[ml2]
type_drivers = flat,vlan,vxlan
tenant_network_types = vxlan
mechanism_drivers = linuxbridge,l2population
extension_drivers = port_security

[ml2_type_flat]
flat_networks = provider

[ml2_type_vxlan]
vni_ranges = 1:1000

[securitygroup]
enable_ipset = true
echo "Result of Configuration"
egrep -v "^#|^$" /etc/neutron/plugins/ml2/ml2_conf.ini
(3)配置Linux网桥代理

/etc/neutron/plugins/ml2/linuxbridge_agent.ini
Linux网桥代理为实例构建第2层(桥接和交换)虚拟网络基础结构并处理安全组。
在之前创建provider网络时已经配置过,但self网络也有特定的配置,下面会标出不同的地方。

[DEFAULT]
[linux_bridge]
physical_interface_mappings = provider:ens34

[vxlan]
enable_vxlan = True
local_ip = 192.168.139.101
l2_population = true
[securitygroup]
enable_security_group = True 
firewall_driver = neutron.agent.linux.iptables_firewall.IptablesFirewallDriver

echo "Result of Configuration"
egrep -v '(^$|^#)' /etc/neutron/plugins/ml2/linuxbridge_agent.ini

加载br_netfilter内核模块。要启用网络桥接器支持,通常br_netfilter内核模块需要加载。参考Centos7网络桥接内核模块配置

echo net.bridge.bridge-nf-call-iptables = 1 >> /etc/sysctl.conf
echo net.bridge.bridge-nf-call-ip6tables = 1 >> /etc/sysctl.conf

cat /etc/sysctl.conf
sysctl -p
modprobe br_netfilter
ls /proc/sys/net/bridge
sysctl -p

sysctl net.bridge.bridge-nf-call-iptables
sysctl net.bridge.bridge-nf-call-ip6tables
(4)配置第3层L3代理

/etc/neutron/l3_agent.ini

cp /etc/neutron/l3_agent.ini /etc/neutron/l3_agent.ini.bak
vim /etc/neutron/l3_agent.ini

---
[DEFAULT]
interface_driver = linuxbridge
---
(5)配置DHCP代理

DHCP代理为虚拟网络提供DHCP服务。
/etc/neutron/dhcp_agent.ini
在之前创建provider网络时已经配置过,此处self网络的配置与其相同。

cd
cp /etc/neutron/dhcp_agent.ini /etc/neutron/dhcp_agent.ini.bak

---
[DEFAULT]
interface_driver = linuxbridge
dhcp_driver = neutron.agent.linux.dhcp.Dnsmasq
enable_isolated_metadata = True
---

echo "Result of Configuration"
egrep -v '(^$|^#)' /etc/neutron/dhcp_agent.ini

5.创建网络选项二:Self-service networks

配置:https://docs.openstack.org/neutron/train/install/controller-install-option2-rdo.html
创建:https://docs.openstack.org/install-guide/launch-instance-networks-selfservice.html

完成配置后,或者选择进入dashboard进行网络创建。

三、配置元数据代理

neutron-controller-install-rdo
configure-the-metadata-agent
/etc/neutron/metadata_agent.ini
元数据代理提供配置信息,例如实例的凭据。

cp -a /etc/neutron/metadata_agent.ini{,.bak}

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


vim /etc/neutron/metadata_agent.ini

---
[DEFAULT]
nova_metadata_host = controller
metadata_proxy_shared_secret = neutron
---

echo "Result of Configuration"
egrep -v '(^$|^#)' /etc/neutron/metadata_agent.ini

四、配置控制节点的计算服务,使其能够使用网络服务

Configure the Compute service to use the Networking service
控制节点必须安装Nova计算服务才能完成此步骤。
/etc/nova/nova.conf

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

---
[neutron]
# ...
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
---

echo "Result of Configuration"
egrep -v '(^$|^#)' /etc/nova/nova.conf

五、控制节点最终确定安装

1.初始化安装网络插件

创建网络插件的软连接,初始化网络的脚本插件会用到/etc/neutron/plugin.ini,需要使用ML2的插件进行提供

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

最后输出OK。

3.重新启动Compute API服务

systemctl restart openstack-nova-api.service

4.启动neutron网络服务并设置开机启动

neutron-server.service必须在填充数据库之后才能启动成功。

systemctl start neutron-server.service \
  neutron-linuxbridge-agent.service neutron-dhcp-agent.service \
  neutron-metadata-agent.service
  
systemctl status neutron-server.service \
  neutron-linuxbridge-agent.service neutron-dhcp-agent.service \
  neutron-metadata-agent.service

systemctl enable neutron-server.service \
  neutron-linuxbridge-agent.service neutron-dhcp-agent.service \
  neutron-metadata-agent.service

systemctl list-unit-files |grep neutron* |grep enabled

如果(四)配置网络选项时,使用选项2,还应再启动第3层服务

systemctl start neutron-l3-agent.service
systemctl enable neutron-l3-agent.service

3.创建网络选项一:provider networks

配置:https://docs.openstack.org/neutron/train/install/controller-install-option1-rdo.html

创建:https://docs.openstack.org/install-guide/launch-instance-networks-provider.html

完成配置后,或者选择进入dashboard进行网络创建。

启动一个实例,官方文档launch-instance之launch-instance-networks,博客:启动一个实例启动一个实例

(1)加载环境变量
cd
source admin-openrc.sh
(2)创建网络:provider

创建的虚拟网络名称为:providernet

openstack network create --share --external --provider-physical-network provider --provider-network-type flat providernet
#查看网络
openstack network list

参数说明:

参数说明:
--share 指明所有项目都可以使用这个网络,否则只有创建者能使用  
--external 指明是外部网络  
--provider-physical-network provider  指明物理网络的提供者,与下面neutron的配置文件对应,其中provider是标签,可以更改为其他,但是2个地方必须要统一。
[ml2_type_flat]
flat_networks = provider
 --provider-network-type flat  指明这里创建的网络是flat类型,即实例连接到此网络时和物理网络是在同一个网段,无vlan等功能。
vm-network 网络名称

旧版的命令(在这个版本中会少创建一些东西),可以参考

neutron net-create --shared --provider:physical_network [自定义的物理网卡的名称] --provider:network_type flat(单一扁平网络) [创建的虚拟网络名称]
neutron net-create --shared --provider:physical_network provider  --provider:network_type flat providernet

(3)检查确认网络配置

/etc/neutron/plugins/ml2/ml2_conf.ini

vim /etc/neutron/plugins/ml2/ml2_conf.ini
-----------------------------
[ml2_type_flat]
flat_networks = provider
-----------------------------

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

vim /etc/neutron/plugins/ml2/linuxbridge_agent.ini
-----------------------------
[linux_bridge]
physical_interface_mappings = provider:ens34
-----------------------------
(4)创建子网:subnet

在父网络providernet中创建子网络名称providernet-subnet1

openstack subnet create --network providernet \
  --allocation-pool start=192.168.2.220,end=192.168.2.230 \
  --dns-nameserver 1.1.1.1 --gateway 192.168.2.1 \
  --subnet-range 192.168.2.0/24 providernet-subnet1
#查看子网
openstack subnet list

参数说明:

openstack subnet create --network provider \
  --allocation-pool start=START_IP_ADDRESS,end=END_IP_ADDRESS \
  --dns-nameserver DNS_RESOLVER --gateway PROVIDER_NETWORK_GATEWAY \
  --subnet-range PROVIDER_NETWORK_CIDR provider
参数:
--network 指明父网络
--allocation-pool start=10.8.20.50,end=10.8.20.60 指明子网起始地址和终止地址
--dns-nameserver 指明dns服务器
--gateway 指明网关地址
--subnet-range 指明子网网段
vm-subnetwork 子网名称

同一个父网络下也支持创建多个子网络。

openstack subnet create --network provider --no-dhcp --allocation-pool start=192.168.1.210,end=192.168.1.220 --dns-nameserver 4.4.4.4 --gateway 192.168.1.1 --subnet-range 192.168.1.0/24 provider-subnet01

openstack subnet create --network provider --dhcp --subnet-range 192.168.2.0/24 provider-subnet02

openstack subnet list

进入三。或者而后可以,
Launch an instance - Create virtual networks.
先进入三

或者继续,第4步:创建网络选项二

5.创建网络选项二:Self-service networks

配置:https://docs.openstack.org/neutron/train/install/controller-install-option2-rdo.html
创建:https://docs.openstack.org/install-guide/launch-instance-networks-selfservice.html

完成配置后,或者选择进入dashboard进行网络创建。

(1)加载环境变量
source admin-openrc.sh
(2)创建网络:selfservice
openstack network create selfservicenet
(3)检查确认网络配置

/etc/neutron/plugins/ml2/ml2_conf.ini
可以考虑在安装neutron网络服务的时候进行,该参数的配置。下面确认参数如下

vim /etc/neutron/plugins/ml2/ml2_conf.ini
---------------------------------------------------------
[ml2]
tenant_network_types = vxlan

[ml2_type_vxlan]
vni_ranges = 1:1000
---------------------------------------------------------

遇到的问题:openstack neutron-server.service启动出错

下面是/etc/neutron/plugins/ml2/ml2_conf.ini配置的一个例子:

#  cat /etc/neutron/plugins/ml2/ml2_conf.ini
[ml2]
type_drivers = flat,vlan,vxlan
tenant_network_types = vxlan
mechanism_drivers = linuxbridge,l2population
extension_drivers = port_security

[ml2_type_flat]
flat_networks = provider

[ml2_type_vxlan]
vni_ranges = 1:1000

[securitygroup]
enable_ipset = True
(4)创建子网:subnet

在父网络selfservicenet中创建子网络selfservicenet-subnet1

openstack subnet create --network selfservicenet \
  --dns-nameserver 8.8.4.4 --gateway 172.16.1.1 \
  --subnet-range 172.16.1.0/24 selfservicenet-subnet1
#查看子网
openstack subnet list

参数解释:

openstack subnet create --network selfservice \
  --dns-nameserver DNS_RESOLVER --gateway SELFSERVICE_NETWORK_GATEWAY \
  --subnet-range SELFSERVICE_NETWORK_CIDR selfservice
#私有网络建议使用https://tools.ietf.org/html/rfc1918
#10.0.0.0        -   10.255.255.255  (10/8 prefix)
#172.16.0.0      -   172.31.255.255  (172.16/12 prefix)
#192.168.0.0     -   192.168.255.255 (192.168/16 prefix)
(5)创建路由器:router

launch-instance-networks-selfservice
完成配置后,或者选择进入dashboard进行网络创建。
有些服务需要重启,才能创建成功,这里直接重启服务器,待完善。
自助服务网络使用通常执行双向NAT的虚拟路由器连接到提供商网络。每个路由器均包含至少一个自助服务网络上的接口和提供商网络上的网关。
提供者网络必须包括router:external允许自助服务路由器将其用于连接到外部网络(例如Internet)的选项。
本admin或其他特权用户必须包括网络创建过程中,此选项或以后添加。
在这种情况下,该 router:external选项是–external在创建provider网络时通过使用参数来设置的。

#加载环境变量
source admin-openrc.sh

#创建路由器
#创建
openstack router create router1

#将自助服务网络的子网添加为路由器上的接口:
openstack router add subnet router1 selfservicenet-subnet1

#在路由器的提供商网络上设置网关:
openstack router set router1 --external-gateway providernet

#等待100s

#验证路由器
#列出网络名称空间。您应该看到一个qrouter名称空间和两个 qdhcp名称空间
ip netns

#列出路由器上的端口,以确定提供商网络上的网关IP地址:
openstack port list --router router1

#从控制器节点或物理提供商网络上的任何主机ping此IP地址
ping -c 4 192.168.2.220中的那个路由地址

进入三。或者而后可以, Launch an instance - Create virtual networks.

先进入三

安装完成后返回:控制节点进行配置/etc/neutron/metadata_agent.ini
https://docs.openstack.org/neutron/train/install/controller-install-rdo.html#neutron-controller-metadata-agent-rdo

六、控制节点Neutron网络服务安装完成

至此,控制端的neutron网络服务就安装完成,之后需要在计算节点安装网络服务组件,使计算节点可以连接到openstack集群。
请打开下一篇教程文件,开始计算节点的网络服务配置与安装。【也包括供应商网络和私有网络】

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

北观止

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值