当前位置:网站首页>金鱼哥RHCA回忆录:CL210管理OPENSTACK网络--网络配置选项
金鱼哥RHCA回忆录:CL210管理OPENSTACK网络--网络配置选项
2022-08-01 18:19:00 【华为云】
个人简介:大家好,我是 金鱼哥,CSDN运维领域新星创作者,华为云·云享专家,阿里云社区·专家博主
个人资质:CCNA、HCNP、CSNA(网络分析师),软考初级、中级网络工程师、RHCSA、RHCE、RHCA、RHCI、ITIL
格言:努力不一定成功,但要想成功就必须努力支持我:可点赞、可收藏️、可留言
自助服务(租户)网络
自助服务网络中只包含虚拟组件。项目与底层物理网络无关,因为租户网络在默认情况下是隔离的。租户网络可以相互连接,也可以通过路由器(如果需要)连接到外部网络。

当创建一个新的启用VLAN的网络时,无论是由自助服务用户创建的租户网络,还是由管理员创建的提供者网络,都会从配置 network_vlan_range值中分配一个VLAN ID,并设置为提供者:segmentation_id值。segmentation_id字段被所有网络类型(VLAN, Geneve)用于保存它们的协议ID。使用openstack network show命令查看给定网络的这个参数,而不管network_type字段中显示的协议是什么。
[[email protected] ~]$ openstack network show provider-storage+---------------------------+--------------------------------------+| Field | Value |+---------------------------+--------------------------------------+………..| mtu | 1500 || name | provider-storage || port_security_enabled | True || project_id | 42eecbfbaf684f909abfe5304434fc77 || provider:network_type | vlan || provider:physical_network | storage || provider:segmentation_id | 30 |…………
供应商(数据中心)网络
提供者网络通常在数据中心的物理网络vlan上创建,但它们也可以使用覆盖协议构建。红帽OpenStack的默认覆盖协议是Geneve覆盖网络路由到物理网络的其余部分,类似于现有的租户网络的构建方式。租户网络通过使用路由器和NAT表来隔离内部固定地址和外部浮动IP地址,从而允许地址范围重叠。
提供者网络消除了租户网络的路由器、浮动IP和自服务固定IP地址。相反,提供者网络使用直接从物理网络基础设施获取的地址,并依赖物理网络路由器作为其默认网关进行操作。

在这个教室环境中,有两个网桥映射用于供应商网络的使用。接口eth3和eth4分别绑定到br-eth3和br-eth4桥。这些桥被映射到名称vlanprovider1和vlanprovider2,允许的VLAN范围从101到104 (包括104)。这意味着使用vlanprovider1映射创建的提供者网络将通过计算节点上的eth3接口发送流量。
比较租户网络和供应商网络
租户网络和提供者网络之间有几个不同之处。
创建不同的网络类型
租户网络和提供者网络的区别之一是谁有能力创建它们。提供者网络只能由OpenStack管理员创建,然后与租户项目共享。自助服务或租户网络是租户为在其项目中使用而创建的,除非经过OpenStack管理员确认,否则不能在项目之间共享。
网络连接类型
将一个实例附加到一个提供程序网络允许实例拥有一个到组织中上游网络的第二层连接。提供者网络通常是为特定的vlan创建的,使用802.1g 标记,但是也可以使用平面网络段。
连接到租户网络的实例只能连接到组织的上游网络,前提是租户网络连接到连接了外部网络的OpenStack路由器。外部网络是为路由连接而设计的特殊提供者网络,而不是为直接附加实例而设计的。因为租户网络可以使用任何IP寻址方案,当连接到一个外部网络连接的SDN路由器时,网络地址转换将在所有出站流量上执行。
为了允许连接到租户网络的实例的入站流量,您需要分配一个浮动IP地址,然后将其托管在一个OpenStack路由器上,以提供静态NAT。
集中式和分布式路由器
在OpenStack引入分布式虚拟路由器(DVR)之前,所有租户项目流量都被转发到控制或网络节点上配置的软件定义的Laver 3设备。这增加了流量延迟,降低了网络性能。
当使用供应商网络时。来自实例的流量将直接离开计算节点前往上游网络。离开附加到租户网络的实例的流量必须在到达上游网络之前通过一个OpenStack路由器
在自助服务和提供商网络之间进行选择
下面的列表描述了自助服务和提供者网络的一些用例。
当OpenStack平台被组织内的几个项目或业务单位用作通用计算池时,自助服务网络可以减轻管理员的负担。可以预先创建浮动IP地址池并由租户按需分配。
如果将OpenStack平台用于特定用途或应用程序,那么使用提供者网络可能只需要一些初始配置,同时进行的更改较少。当使用VLAN供应商网络时,可以使用外部防火墙将OpenStack承载的应用程序密封到层中。
使用提供者网络可以提高网络性能,因为在实例和上游网络设备之间没有路由器。来自实例的流量将直接从计算节点离开,而不需要通过控制节点或网络节点
子网池
OpenStack是为多租户设计的。单个项目可以单独管理,只允许通过使用NAT和一个管理良好的浮动IP地址池访问内部系统。子网中的重叠地址由OVN管理。
供应商网络需要对IP地址进行更严格的管理。这些网络不会通过NAT路由到外部网络;相反,它们直接位于外部或内部网络上。它们使用物理交换机、路由器和系统上已经确定的现有IP地址范围。IP地址会从不确定的分配池中自动分配。

要将特定IP地址分配给实例,您需要知道哪些IP地址仍然是空闲的。您需要管理员权限才能查看整个IP列表,以便您可以选择一个可用的。
在创建OpenStack子网池时,用户选择子网范围。
子网池跟踪已经分配的范围,确保地址不会重叠。如果子网地址池是使用外部可路由的地址范围构建的,那么使用此子网池的所有项目都将拥有可路由且唯一的地址。这对于IPv6特别有用,因为它使用全局唯一和可路由的地址,而不使用浮动IP技术。
子网池可以共享,这允许来自多个项目的子网使用子网池。对于IPv4,从相同的子网池创建并连接到相同的路由器的子网可以在这些网络之间进行通信,而无需使用浮动IP地址或遍历外部网络或路由器。项目成员可以创建子网池,只对他们的项目可见。共享子网池需要管理员权限。
课本练习
创建一个VLAN提供者网络。
描述支持VLAN提供者网络所需的组件和配置。
[[email protected] ~]$ lab networking-provisioning setup Setting up workstation for exercise work: • Verifying project: finance.................................. SUCCESS • Creating user environment file: developer1-finance-rc....... SUCCESS • Creating keypair: example-keypair........................... SUCCESS . Creating flavor: default.................................... SUCCESS . Creating image: rhel7....................................... SUCCESS . Creating secgroup: default.................................. SUCCESS • Creating secgroup rule: icmp................................ SUCCESS1. 登录到controller0并确定可以在其中创建提供者网络的可用物理网络。
[[email protected] ~]# ovs-vsctl get open . external-ids:ovn-bridge-mappings"datacentre:br-ex,vlanprovider1:br-eth3,vlanprovider2:br-eth4,storage:br-trunk"[[email protected] ~]# ovs-vsctl show Bridge "br-eth4" fail_mode: standalone Port "br-eth4" Interface "br-eth4" type: internal Port "eth4" Interface "eth4" Bridge "br-eth3" fail_mode: standalone Port "eth3" Interface "eth3" Port "br-eth3" Interface "br-eth3" type: internal[[email protected] ~]# grep ^network_vlan_ranges /var/lib/config-data/puppet-generated/neutron/etc/neutron/plugins/ml2/ml2_conf.ini network_vlan_ranges=datacentre:1:1000,vlanprovider1:101:104,vlanprovider2:101:104,storage:30:302. 使用下表创建一个名为provider1-103的VLAN提供程序网络和一个名为subnet1-103的匹配子网。

[[email protected] ~]$ source admin-rc[[email protected] ~]$ openstack network create --external --share --provider-network-type vlan --provider-physical-network vlanprovider1 --provider-segment 103 provider1-103+---------------------------+--------------------------------------+| Field | Value |+---------------------------+--------------------------------------+| admin_state_up | UP || availability_zone_hints | || availability_zones | || created_at | 2020-10-28T01:24:26Z || description | || dns_domain | None || id | 63d2ae76-c574-4225-8577-02beae2a753c || ipv4_address_scope | None || ipv6_address_scope | None || is_default | False || is_vlan_transparent | None || mtu | 1500 || name | provider1-103 || port_security_enabled | True || project_id | 42eecbfbaf684f909abfe5304434fc77 || provider:network_type | vlan || provider:physical_network | vlanprovider1 || provider:segmentation_id | 103 || qos_policy_id | None || revision_number | 6 || router:external | External || segments | None || shared | True || status | ACTIVE || subnets | || tags | || updated_at | 2020-10-28T01:24:26Z |+---------------------------+--------------------------------------+[[email protected] ~]$ openstack subnet create --dhcp --subnet-range=10.0.103.0/24 --allocation-pool=start=10.0.103.100,end=10.0.103.149 --network provider1-103 subnet1-103+-------------------+--------------------------------------+| Field | Value |+-------------------+--------------------------------------+| allocation_pools | 10.0.103.100-10.0.103.149 || cidr | 10.0.103.0/24 || created_at | 2020-10-28T01:25:52Z || description | || dns_nameservers | || enable_dhcp | True || gateway_ip | 10.0.103.1 || host_routes | || id | 0ad40f2e-aab1-4597-9841-f4efe3a20cbb || ip_version | 4 || ipv6_address_mode | None || ipv6_ra_mode | None || name | subnet1-103 || network_id | 63d2ae76-c574-4225-8577-02beae2a753c || project_id | 42eecbfbaf684f909abfe5304434fc77 || revision_number | 0 || segment_id | None || service_types | || subnetpool_id | None || tags | || updated_at | 2020-10-28T01:25:52Z |+-------------------+--------------------------------------+[[email protected] ~]$ openstack network list+--------------------------------------+---------------------+--------------------------+| ID | Name | Subnets +--------------------------------------+---------------------+--------------------------+| 63d2ae76-c574-4225-8577-02beae2a753c | provider1-103 | 0ad40f2e-aab1-4597-9841-f4efe3a20cbb || 7a6556ab-6083-403e-acfc-79caf3873660 | finance-network1 | 4836a9dd-e01f-4a33-a971-fa49dec9ffd5 || 9838d8ed-3e64-4196-87f0-a4bc59059be9 | lb-mgmt-net | e0db6f1e-70be-4360-8210-0435a47e3a88 || d55f6d1e-c29e-4825-8de4-01dd95f8a220 | provider-storage | 6e5af9b0-67ef-4e1e-9eda-7d6633091d11 || e14d713e-c1f5-4800-8543-713563d7e82e | production-network1 | f0c54c6a-5094-4386-9e97-b8564ba31a93 || fc5472ee-98d9-4f6b-9bc9-544ca18aefb3 | provider-datacentre | 30c03fa5-0897-426a-8c81-75cf9cc333f1 |+--------------------------------------+---------------------+--------------------------+3. 部署一个附加到provider1-103网络的实例。

[[email protected] ~(developer1-finance)]$ openstack server create --flavor default --image rhel7 --key-name example-keypair --network provider1-103 --wait finance-server1+-----------------------------+---------------------------------------------------------+| Field | Value +-----------------------------+---------------------------------------------------------+| OS-DCF:diskConfig | MANUAL | OS-EXT-AZ:availability_zone | nova | OS-EXT-STS:power_state | Running| OS-EXT-STS:task_state | None| OS-EXT-STS:vm_state | active | OS-SRV-USG:launched_at | 2020-10-28T01:31:12.000000| OS-SRV-USG:terminated_at | None | accessIPv4 | | accessIPv6 | | addresses | provider1-103=10.0.103.107| adminPass | 6AXRM2MURo26 | config_drive | | created | 2020-10-28T01:30:41Z| flavor | default (e04380ed-b027-4a72-a697-4307bc014b6c)| hostId | c439f7c83de10e6a305fc9bc9caefdef52c9f503e4aa5733eae8573c| id | 77613dad-6f1e-4165-8b76-9d59e3bc2326 | image | rhel7 (6b0128a9-4481-4ceb-b34e-ffe92e0dcfdd)| key_name | example-keypair| name | finance-server1 | progress | 0 | project_id | 3c003f65d8d64914a053f178fbbf953c| properties | | security_groups | name='default'| status | ACTIVE | updated | 2020-10-28T01:31:13Z| user_id | e4035d555f6b88cf42ca4cacb9fa9999dca9787392222d2eb0875e4e34e6d76f| volumes_attached | +-----------------------------+---------------------------------------------------------+4. 在utility中,使用ping命令来测试从OpenStack外部可以在provider1-103网络上访问finance-server1。
[[email protected] ~]$ ssh utilityWarning: Permanently added 'utility,172.25.250.220' (ECDSA) to the list of known hosts.[[email protected] ~]$ ping -c3 10.0.103.107PING 10.0.103.107 (10.0.103.107) 56(84) bytes of data.64 bytes from 10.0.103.107: icmp_seq=1 ttl=64 time=0.713 ms64 bytes from 10.0.103.107: icmp_seq=2 ttl=64 time=0.591 ms64 bytes from 10.0.103.107: icmp_seq=3 ttl=64 time=0.392 ms--- 10.0.103.107 ping statistics ---3 packets transmitted, 3 received, 0% packet loss, time 2000msrtt min/avg/max/mdev = 0.392/0.565/0.713/0.133 ms清除实验
[[email protected] ~]$ lab networking-provisioning cleanup总结
RHCA认证需要经历5门的学习与考试,还是需要花不少时间去学习与备考的,好好加油,可以噶🤪。

以上就是【金鱼哥】对 第六章 管理OPENSTACK网络–网络配置选项 的简述和讲解。希望能对看到此文章的小伙伴有所帮助。
红帽认证专栏系列:
RHCSA专栏:戏说 RHCSA 认证
RHCE专栏:戏说 RHCE 认证
此文章收录在RHCA专栏:RHCA 回忆录
如果这篇【文章】有帮助到你,希望可以给【金鱼哥】点个赞,创作不易,相比官方的陈述,我更喜欢用【通俗易懂】的文笔去讲解每一个知识点。
如果有对【运维技术】感兴趣,也欢迎关注️️️ 【金鱼哥】️️️,我将会给你带来巨大的【收获与惊喜】!

边栏推荐
- 【无标题】setInterval和setTimeout详解
- opencv real-time face detection
- Detailed explanation of DBPack SQL Tracing function and data encryption function
- How to build a CMDB driven by consumption scenarios?
- 云原生全景图详解
- Leetcode75. Color Classification
- C#/VB.NET:从 PDF 文档中提取所有表格
- 成都理工大学&电子科技大学|用于强化学习的域自适应状态表示对齐
- 打开微信客服
- SQL的ROUND函数用法及其实例
猜你喜欢

What is the JVM runtime data area and the JMM memory model

How many steps does it take to convert an ENS domain name into music?

How opencv implements image skew correction

ExcelPatternTool: Excel表格-数据库互导工具

三种方案解决:npm WARN config global --global, --local are deprecated. Use --location=global instead.

B011 - 51-based multifunctional fingerprint smart lock

opencv语法Mat类型总结

直播系统聊天技术(八):vivo直播系统中IM消息模块的架构实践

【Day_12 0507】二进制插入

C#/VB.NET: extracted from the PDF document all form
随机推荐
golang json returns null
2022年 PHP面试问题记录
Topology零部件拆解3D可视化解决方案
Tower Defense Shoreline User Agreement
WinRAR | Generate multiple installers into one installer
LeetCode 0151.颠倒字符串中的单词
bat 批示处理详解-2
【报错】Uncaught (in promise) TypeError: Cannot read properties of undefined (reading ‘concat‘)
解决MySQL插入不了中文数据问题
How to use the Golang coroutine scheduler scheduler
LeetCode 1374.生成每种字符都是奇数个的字符串
QLineEdit学习与使用
Solve the problem that MySQL cannot insert Chinese data
SQL function TO_DATE (2)
MySQL关系型数据库事务的ACID特性与实现方法
【Day_12 0507】二进制插入
Leetcode74. Search 2D Matrix
What is the implementation principle of Go iota keyword and enumeration type
关于单应性矩阵的若干思考
用VS2013编译带boost库程序时提示 fatal error C1001: 编译器中发生内部错误