openstack self network使用(小节14)

388 阅读2分钟

@[TOC](openstack self network使用(小节14))

controller2

参考文件:'neutron.conf' 注意这个文件一定要有颜色区分,否则后期会出问题

[root@controller2 ~]# vim /etc/neutron/neutron.conf
[DEFAULT]
service_plugins = router    <--修改此项
allow_overlapping_ips = true    <--允许网络叠加

启用vxlan、参考文件:'ml2_conf.ini'

[root@controller2 ~]# vim /etc/neutron/plugins/ml2/ml2_conf.ini

[ml2]
type_drivers = flat,vlan,vxlan    <--添加'vxlan'
tenant_network_types = vxlan    <--
mechanism_drivers = linuxbridge,l2population    <--

[ml2_type_vxlan]
vni_ranges = 1:10000

参考文件:'linuxbridge_agent.ini'

[root@controller2 ~]# vim /etc/neutron/plugins/ml2/linuxbridge_agent.ini

[vxlan]
enable_vxlan = true
local_ip = 192.168.37.102    <--外网地址
l2_population = true

[securitygroup]
enable_security_group = false

参考文件:'l3_agent.ini'

[root@controller2 ~]# vim /etc/neutron/l3_agent.ini

[DEFAULT]
interface_driver = linuxbridge    <--

重启服务

[root@controller2 ~]# systemctl restart openstack-nova-api.service

启动服务并设置为开机启动

[root@controller2 ~]# systemctl start neutron-server.service neutron-linuxbridge-agent.service neutron-dhcp-agent.service neutron-metadata-agent.service
[root@controller2 ~]# systemctl enable neutron-server.service neutron-linuxbridge-agent.service neutron-dhcp-agent.service neutron-metadata-agent.service

[root@controller2 ~]# systemctl start neutron-l3-agent.service
[root@controller2 ~]# systemctl enable neutron-l3-agent.service

重启服务器

[root@controller2 ~]# reboot

node1和node2

安装包

[root@node1 ~]# yum install -y openstack-neutron-linuxbridge ebtables ipset

节点:参考文件'linuxbridge_agent.ini'

[root@node1 ~]# vim /etc/neutron/plugins/ml2/linuxbridge_agent.ini

[vxlan]
enable_vxlan = true
local_ip = 192.168.37.103     <--改成自己IP地址
l2_population = true

[securitygroup]
enable_security_group = false   <--关闭
firewall_driver = neutron.agent.linux.iptables_firewall.IptablesFirewallDriver

重启节点服务器

[root@node1 ~]# reboot

controller2

导入变量'admin变量'

[root@controller2 ~]# source scripts/admin_stein.sh

验证:是否有'L3'

[root@controller2 ~]# openstack network agent list
+--------------------------------------+--------------------+-------------+-------------------+-------+-------+---------------------------+
| ID                                   | Agent Type         | Host        | Availability Zone | Alive | State | Binary                    |
+--------------------------------------+--------------------+-------------+-------------------+-------+-------+---------------------------+
| 05db94e9-e31c-490f-b325-1a0863b45db6 | DHCP agent         | controller1 | nova              | :-)   | UP    | neutron-dhcp-agent        |
| 21688e80-5017-4690-a601-9cf1c3412f5b | L3 agent           | controller2 | nova              | :-)   | UP    | neutron-l3-agent          |    <--
| 2982e4fd-5d5e-4845-813b-7fef0e60749d | Linux bridge agent | controller2 | None              | :-)   | UP    | neutron-linuxbridge-agent |
| 2e5da0fa-1913-45e8-b91a-0b4b5c7d7f1e | DHCP agent         | controller2 | nova              | :-)   | UP    | neutron-dhcp-agent        |
| 40534044-59b1-481f-b40a-83f6b50ad873 | Linux bridge agent | node1       | None              | :-)   | UP    | neutron-linuxbridge-agent |
| 4065d193-9361-4753-9cc1-41a7bbc73555 | Linux bridge agent | node130     | None              | XXX   | UP    | neutron-linuxbridge-agent |
| 48ce5abe-e6d1-4ae0-bac8-1ba29f6964e2 | Metadata agent     | controller1 | None              | :-)   | UP    | neutron-metadata-agent    |
| 7275d501-018f-400a-a3a9-d90bad789afd | Linux bridge agent | controller1 | None              | :-)   | UP    | neutron-linuxbridge-agent |
| d66a07b1-b573-4d5b-89e8-8e3557486107 | Metadata agent     | controller2 | None              | :-)   | UP    | neutron-metadata-agent    |
| f3329100-cbee-46b4-9f51-445b8dd783c6 | Linux bridge agent | node2       | None              | :-)   | UP    | neutron-linuxbridge-agent |
+--------------------------------------+--------------------+-------------+-------------------+-------+-------+---------------------------+

创建admin用户网络

[root@controller2 ~]# openstack network create admin-net
+---------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Field                     | Value                                                                                                                                                                              |
+---------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| admin_state_up            | UP                                                                                                                                                                                 |
| availability_zone_hints   |                                                                                                                                                                                    |
| availability_zones        |                                                                                                                                                                                    |
| created_at                | 2022-10-22T18:10:29Z                                                                                                                                                               |
| description               |                                                                                                                                                                                    |
| dns_domain                | None                                                                                                                                                                               |
| id                        | 7d656dad-2afa-4fc8-9949-fdb2c55fddf4                                                                                                                                               |
| ipv4_address_scope        | None                                                                                                                                                                               |
| ipv6_address_scope        | None                                                                                                                                                                               |
| is_default                | False                                                                                                                                                                              |
| is_vlan_transparent       | None                                                                                                                                                                               |
| location                  | Munch({'project': Munch({'domain_name': 'Default', 'domain_id': None, 'name': 'admin', 'id': u'7a42de14ea7d4bcf80f60e19e1bc2de4'}), 'cloud': '', 'region_name': '', 'zone': None}) |
| mtu                       | 1450                                                                                                                                                                               |
| name                      | admin-net                                                                                                                                                                          |
| port_security_enabled     | True                                                                                                                                                                               |
| project_id                | 7a42de14ea7d4bcf80f60e19e1bc2de4                                                                                                                                                   |
| provider:network_type     | vxlan                                                                                                                                                                              |
| provider:physical_network | None                                                                                                                                                                               |
| provider:segmentation_id  | 1                                                                                                                                                                                  |
| qos_policy_id             | None                                                                                                                                                                               |
| revision_number           | 1                                                                                                                                                                                  |
| router:external           | Internal                                                                                                                                                                           |
| segments                  | None                                                                                                                                                                               |
| shared                    | False                                                                                                                                                                              |
| status                    | ACTIVE                                                                                                                                                                             |
| subnets                   |                                                                                                                                                                                    |
| tags                      |                                                                                                                                                                                    |
| updated_at                | 2022-10-22T18:10:30Z                                                                                                                                                               |
+---------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

创建子网

[root@controller2 ~]# openstack subnet create --network admin-net --dns-nameserver 223.5.5.5 --gateway 10.20.0.254 --subnet-range 10.20.0.0/24 admin-sube
+-------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Field             | Value                                                                                                                                                                              |
+-------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| allocation_pools  | 10.20.0.1-10.20.0.253                                                                                                                                                              |
| cidr              | 10.20.0.0/24                                                                                                                                                                       |
| created_at        | 2022-10-22T18:17:03Z                                                                                                                                                               |
| description       |                                                                                                                                                                                    |
| dns_nameservers   | 223.5.5.5                                                                                                                                                                          |
| enable_dhcp       | True                                                                                                                                                                               |
| gateway_ip        | 10.20.0.254                                                                                                                                                                        |
| host_routes       |                                                                                                                                                                                    |
| id                | 3139a02b-4966-4538-b010-488ac544813e                                                                                                                                               |
| ip_version        | 4                                                                                                                                                                                  |
| ipv6_address_mode | None                                                                                                                                                                               |
| ipv6_ra_mode      | None                                                                                                                                                                               |
| location          | Munch({'project': Munch({'domain_name': 'Default', 'domain_id': None, 'name': 'admin', 'id': u'7a42de14ea7d4bcf80f60e19e1bc2de4'}), 'cloud': '', 'region_name': '', 'zone': None}) |
| name              | admin-sube                                                                                                                                                                         |
| network_id        | 7d656dad-2afa-4fc8-9949-fdb2c55fddf4                                                                                                                                               |
| prefix_length     | None                                                                                                                                                                               |
| project_id        | 7a42de14ea7d4bcf80f60e19e1bc2de4                                                                                                                                                   |
| revision_number   | 0                                                                                                                                                                                  |
| segment_id        | None                                                                                                                                                                               |
| service_types     |                                                                                                                                                                                    |
| subnetpool_id     | None                                                                                                                                                                               |
| tags              |                                                                                                                                                                                    |
| updated_at        | 2022-10-22T18:17:03Z                                                                                                                                                               |
+-------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

创建路由

[root@controller2 ~]# openstack router create admin-router
+-------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Field                   | Value                                                                                                                                                                              |
+-------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| admin_state_up          | UP                                                                                                                                                                                 |
| availability_zone_hints |                                                                                                                                                                                    |
| availability_zones      |                                                                                                                                                                                    |
| created_at              | 2022-10-22T18:18:13Z                                                                                                                                                               |
| description             |                                                                                                                                                                                    |
| distributed             | False                                                                                                                                                                              |
| external_gateway_info   | None                                                                                                                                                                               |
| flavor_id               | None                                                                                                                                                                               |
| ha                      | False                                                                                                                                                                              |
| id                      | bfa96a42-1498-41bf-8cf4-5dcfae7fd7c5                                                                                                                                               |
| location                | Munch({'project': Munch({'domain_name': 'Default', 'domain_id': None, 'name': 'admin', 'id': u'7a42de14ea7d4bcf80f60e19e1bc2de4'}), 'cloud': '', 'region_name': '', 'zone': None}) |
| name                    | admin-router                                                                                                                                                                       |
| project_id              | 7a42de14ea7d4bcf80f60e19e1bc2de4                                                                                                                                                   |
| revision_number         | 1                                                                                                                                                                                  |
| routes                  |                                                                                                                                                                                    |
| status                  | ACTIVE                                                                                                                                                                             |
| tags                    |                                                                                                                                                                                    |
| updated_at              | 2022-10-22T18:18:13Z                                                                                                                                                               |
+-------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

将子网关联到路由

[root@controller2 ~]# neutron router-interface-add admin-router admin-sube
neutron CLI is deprecated and will be removed in the future. Use openstack CLI instead.
Added interface 5ad89982-12f5-44e1-8bc3-6ca5cda29577 to router admin-router.

将路由关联到外网(外网名称可用'openstack network list'查看)

[root@controller2 ~]# openstack network list
+--------------------------------------+--------------+--------------------------------------+
| ID                                   | Name         | Subnets                              |
+--------------------------------------+--------------+--------------------------------------+
| 1b280d8a-006d-4bd3-9d4b-6ccceb4f3f8d | external-net | 5d5ea056-9ceb-4d36-8e95-0febe09c127e |
| 7d656dad-2afa-4fc8-9949-fdb2c55fddf4 | admin-net    | 3139a02b-4966-4538-b010-488ac544813e |
| a42a6ec2-9959-4b1c-a80e-b9c03dd7a301 | internal-net | e4fdcfa5-a48f-4d2e-b86d-7312af712bab |
+--------------------------------------+--------------+--------------------------------------+

[root@controller2 ~]# neutron router-gateway-set admin-router external-net
neutron CLI is deprecated and will be removed in the future. Use openstack CLI instead.
Set gateway for router admin-router

打开一个新的窗口导入'demo'变量

[root@controller2 ~]# source scripts/demo_stein.sh

创建demo用户网络

[root@controller2 ~]# openstack network create demo-net
+---------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Field                     | Value                                                                                                                                                                             |
+---------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| admin_state_up            | UP                                                                                                                                                                                |
| availability_zone_hints   |                                                                                                                                                                                   |
| availability_zones        |                                                                                                                                                                                   |
| created_at                | 2022-10-22T18:40:56Z                                                                                                                                                              |
| description               |                                                                                                                                                                                   |
| dns_domain                | None                                                                                                                                                                              |
| id                        | 00237978-18b7-40e2-a571-37f579cd023a                                                                                                                                              |
| ipv4_address_scope        | None                                                                                                                                                                              |
| ipv6_address_scope        | None                                                                                                                                                                              |
| is_default                | False                                                                                                                                                                             |
| is_vlan_transparent       | None                                                                                                                                                                              |
| location                  | Munch({'project': Munch({'domain_name': 'Default', 'domain_id': None, 'name': 'demo', 'id': u'3eeeee82ef594949974e0b461b0146d8'}), 'cloud': '', 'region_name': '', 'zone': None}) |
| mtu                       | 1450                                                                                                                                                                              |
| name                      | demo-net                                                                                                                                                                          |
| port_security_enabled     | True                                                                                                                                                                              |
| project_id                | 3eeeee82ef594949974e0b461b0146d8                                                                                                                                                  |
| provider:network_type     | None                                                                                                                                                                              |
| provider:physical_network | None                                                                                                                                                                              |
| provider:segmentation_id  | None                                                                                                                                                                              |
| qos_policy_id             | None                                                                                                                                                                              |
| revision_number           | 1                                                                                                                                                                                 |
| router:external           | Internal                                                                                                                                                                          |
| segments                  | None                                                                                                                                                                              |
| shared                    | False                                                                                                                                                                             |
| status                    | ACTIVE                                                                                                                                                                            |
| subnets                   |                                                                                                                                                                                   |
| tags                      |                                                                                                                                                                                   |
| updated_at                | 2022-10-22T18:40:56Z                                                                                                                                                              |
+---------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

创建demo子网

[root@controller2 ~]# openstack subnet create --network demo-net --dns-nameserver 223.5.5.5 --gateway 10.20.0.254 --subnet-range 10.20.0.0/24 demo-sube
+-------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Field             | Value                                                                                                                                                                             |
+-------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| allocation_pools  | 10.20.0.1-10.20.0.253                                                                                                                                                             |
| cidr              | 10.20.0.0/24                                                                                                                                                                      |
| created_at        | 2022-10-22T18:43:56Z                                                                                                                                                              |
| description       |                                                                                                                                                                                   |
| dns_nameservers   | 223.5.5.5                                                                                                                                                                        |
| enable_dhcp       | True                                                                                                                                                                              |
| gateway_ip        | 10.20.0.254                                                                                                                                                                       |
| host_routes       |                                                                                                                                                                                   |
| id                | d7c37882-2dc8-4234-8dd1-f3d67e407c8a                                                                                                                                              |
| ip_version        | 4                                                                                                                                                                                 |
| ipv6_address_mode | None                                                                                                                                                                              |
| ipv6_ra_mode      | None                                                                                                                                                                              |
| location          | Munch({'project': Munch({'domain_name': 'Default', 'domain_id': None, 'name': 'demo', 'id': u'3eeeee82ef594949974e0b461b0146d8'}), 'cloud': '', 'region_name': '', 'zone': None}) |
| name              | demo-sube                                                                                                                                                                         |
| network_id        | 00237978-18b7-40e2-a571-37f579cd023a                                                                                                                                              |
| prefix_length     | None                                                                                                                                                                              |
| project_id        | 3eeeee82ef594949974e0b461b0146d8                                                                                                                                                  |
| revision_number   | 0                                                                                                                                                                                 |
| segment_id        | None                                                                                                                                                                              |
| service_types     |                                                                                                                                                                                   |
| subnetpool_id     | None                                                                                                                                                                              |
| tags              |                                                                                                                                                                                   |
| updated_at        | 2022-10-22T18:43:56Z                                                                                                                                                              |
+-------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

创建dome路由

[root@controller2 ~]# openstack router create demo-router
+-------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Field                   | Value                                                                                                                                                                             |
+-------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| admin_state_up          | UP                                                                                                                                                                                |
| availability_zone_hints |                                                                                                                                                                                   |
| availability_zones      |                                                                                                                                                                                   |
| created_at              | 2022-10-22T18:46:16Z                                                                                                                                                              |
| description             |                                                                                                                                                                                   |
| external_gateway_info   | None                                                                                                                                                                              |
| flavor_id               | None                                                                                                                                                                              |
| id                      | 0f6ef108-74c5-4d3c-aa5b-ca877a0e9c56                                                                                                                                              |
| location                | Munch({'project': Munch({'domain_name': 'Default', 'domain_id': None, 'name': 'demo', 'id': u'3eeeee82ef594949974e0b461b0146d8'}), 'cloud': '', 'region_name': '', 'zone': None}) |
| name                    | demo-router                                                                                                                                                                       |
| project_id              | 3eeeee82ef594949974e0b461b0146d8                                                                                                                                                  |
| revision_number         | 1                                                                                                                                                                                 |
| routes                  |                                                                                                                                                                                   |
| status                  | ACTIVE                                                                                                                                                                            |
| tags                    |                                                                                                                                                                                   |
| updated_at              | 2022-10-22T18:46:16Z                                                                                                                                                              |
+-------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

将子网关联到路由

[root@controller2 ~]# neutron router-interface-add demo-router demo-sube
neutron CLI is deprecated and will be removed in the future. Use openstack CLI instead.
Added interface a82c05b7-e8e6-4902-8459-164e17c0e4ee to router demo-router.

将路由关联到外网

[root@controller2 ~]# neutron router-gateway-set demo-router external-net
neutron CLI is deprecated and will be removed in the future. Use openstack CLI instead.
Set gateway for router demo-router

配置第三层网络

[root@controller2 ~]# vim /etc/openstack-dashboard/local_settings

#全部改成'True'
OPENSTACK_NEUTRON_NETWORK = {
    'enable_router': True,
    'enable_quotas': True,
    'enable_ipv6': True,
    'enable_distributed_router': True,
    'enable_ha_router': True,
    'enable_fip_topology_check': True,

重启httpd服务

[root@controller2 ~]# systemctl restart httpd

此时可用看到路由 图片.png

创建虚拟机 图片.png

图片.png

图片.png

图片.png

图片.png

图片.png 创建浮动IP 图片.png

关联 图片.png

图片.png

此时能否ping通、但是不能ssh(远程连接)

[root@controller2 ~]# ping 192.168.37.202 -c 2
PING 192.168.37.202 (192.168.37.202) 56(84) bytes of data.
64 bytes from 192.168.37.202: icmp_seq=1 ttl=63 time=1.12 ms
64 bytes from 192.168.37.202: icmp_seq=2 ttl=63 time=0.659 ms

--- 192.168.37.202 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1000ms
rtt min/avg/max/mdev = 0.659/0.889/1.120/0.232 ms

图片.png

配置此步后可SSH(远程连接)

图片.png

[root@controller2 ~]# ssh 192.168.37.202
root@192.168.37.202's password:     <--输入对方密码:123456
Last login: Tue Oct 25 18:38:43 2022

#查看IP地址
[root@self-vm-1 ~]# ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1450
        inet 10.20.0.180  netmask 255.255.255.0  broadcast 10.20.0.255
        inet6 fe80::f816:3eff:fe5c:1893  prefixlen 64  scopeid 0x20<link>
        ether fa:16:3e:5c:18:93  txqueuelen 1000  (Ethernet)
        RX packets 348  bytes 41629 (40.6 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 373  bytes 37118 (36.2 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 0  (Local Loopback)
        RX packets 6  bytes 416 (416.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 6  bytes 416 (416.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

#ping外网
[root@self-vm-1 ~]# ping jd.com -c 2
PING jd.com (211.144.27.126) 56(84) bytes of data.
64 bytes from 211.144.27.126: icmp_seq=1 ttl=127 time=6.79 ms
64 bytes from 211.144.27.126: icmp_seq=2 ttl=127 time=5.73 ms

--- jd.com ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1002ms
rtt min/avg/max/mdev = 5.731/6.264/6.797/0.533 ms

切换到demo用户登录,创建2个虚拟机 图片.png

图片.png

图片.png

图片.png

图片.png

图片.png

如果IP地址满了?如何添加?

切换到admin用户登录 图片.png

图片.png

图片.png 添加不同的网络 图片.png

添加接口

图片.png

图片.png

在创建两个虚拟机测试一下

图片.png

图片.png

图片.png

图片.png

图片.png

图片.png

创建新的网络

图片.png

图片.png

图片.png

新网络创建完成 图片.png

新建虚拟机测试1

图片.png

图片.png

图片.png

图片.png 创建完成已有IP地址 图片.png

测试能否通信

#不通
[root@self-vm-1 ~]# ping 10.20.2.124 -c 2
PING 10.20.2.124 (10.20.2.124) 56(84) bytes of data.

--- 10.20.2.124 ping statistics ---
2 packets transmitted, 0 received, 100% packet loss, time 1000ms

绑定一下

图片.png

再次测试能否通信

#通信成功
[root@self-vm-1 ~]# ping 10.20.2.124 -c 2
PING 10.20.2.124 (10.20.2.124) 56(84) bytes of data.
64 bytes from 10.20.2.124: icmp_seq=1 ttl=63 time=2.59 ms
64 bytes from 10.20.2.124: icmp_seq=2 ttl=63 time=0.781 ms

--- 10.20.2.124 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1002ms
rtt min/avg/max/mdev = 0.781/1.689/2.598/0.909 ms

‘test3’分配浮动IP

图片.png

图片.png

分配IP

图片.png

关联

图片.png

关联完成 图片.png