上一节学习了NeutronLBaaS的原理,今天开始实践。首先在配置中启用LBaaS服务。Neutron通过lbaasplugin和lbaasagent提供LBa"/>

配置lbaas-每天5分钟玩转openstack(121)

author author     2022-08-16     666

关键词:

技术分享

上一节学习了 Neutron LBaaS 的原理,今天开始实践。首先在配置中启用 LBaaS 服务。

Neutron 通过 lbaas plugin 和 lbaas agent 提供 LBaaS 服务。

技术分享

lbaas plugin 与 Neutron Server 一起运行在控制节点上。 lbaas agent 运行在网络节点上。
对于我们的实验环境,控制节点和网络节点是一个,都是 devstack-controller。

配置 LBaaS agent

Neutron 配置 LBaaS agent 的地方是 /etc/neutron/services/loadbalancer/haproxy/lbaas_agent.ini。

定义 interface_driver:
技术分享

interface_driver 的作用是设置 load balancer 的网络接口驱动,可以有两个选项:

Linux Bridge

interface_driver = neutron.agent.linux.interface.BridgeInterfaceDriver

Open vSwitch

interface_driver = neutron.agent.linux.interface.OVSInterfaceDriver

配置 LBaaS plugin

在 /etc/neutron/neutron.conf 中设置启用 LBaaS plugin

技术分享

在 /etc/neutron/neutron_lbaas.conf 中设置 service provider

技术分享

从注释信息可以看到,除了默认的 HAProxy,Neutron 也支持第三方 provider,比如 radware,VMWareEdge 等。

重启 neutron 服务,确保 LBaaS 正常运行。

技术分享

我们将实践如下 LBaaS 环境。
技术分享

该环境描述如下:
1. 创建一个 Pool “web servers”。
2. 两个 pool member “WEB1” 和 “WEB2”,均为运行 Ubuntu cloud image 的 instance。
3. load balancer VIP 与 floating IP 关联。
4. 位于外网的 client 通过 floating IP 访问 web server。

下一节开始我们将一步一步实现这个 LBaaS。

技术分享

lbaas实现机制-每天5分钟玩转openstack(125)

上一节我们已经配置并测试LBaaS,今天重点分析Neutron是如何用Haproxy来实现负责均衡的。在控制节点上运行ipnetns,我们发现Neutron创建了新的namespaceqlbaas-xxx。该namespace对应我们创建的pool“webservers”。其命名格式为qlbaas-<poolID>... 查看详情

lbaas实现机制-每天5分钟玩转openstack(125)

650)this.width=650;"src="http://7xo6kd.com1.z0.glb.clouddn.com/upload-ueditor-image-20161213-1481631797880012031.jpg"/>上一节我们已经配置并测试LBaaS,今天重点分析Neutron是如何用Haproxy来实现负责均衡的。在控制节点上运行ipnetns,我们发现Neutron创建了 查看详情

理解neutornlbaas-每天5分钟玩转openstack(120)

LoadBalanceasaService(LBaaS)是Neutron提供的一项高级网络服务。LBaaS允许租户在自己的网络中创建和管理loadbalancer。loadbalancer可以说是分布式系统中比较基础的组件。它接收前端发来的请求,然后将请求按照某种均衡策略转发给后端... 查看详情

创建pool&vip-每天5分钟玩转openstack(122)

650)this.width=650;"alt="9.png"src="http://7xo6kd.com1.z0.glb.clouddn.com/upload-ueditor-image-20161206-1481029897926031240.jpg"/>上节完成了LBaaS配置,今天我们开始实现如下LBaaS环境。650)this.width=650;"src="http://7xo6kd. 查看详情

理解neutornlbaas-每天5分钟玩转openstack(120)

650)this.width=650;"src="http://7xo6kd.com1.z0.glb.clouddn.com/upload-ueditor-image-20161201-1480601346539077335.jpg"alt="5.5.png"/>LoadBalanceasaService(LBaaS)是Neutron提供的一项高级网络服务。LBaaS允许租户在自己的网络中创建和管 查看详情

创建pool&vip-每天5分钟玩转openstack(122)

上节完成了LBaaS配置,今天我们开始实现如下LBaaS环境。环境描述如下:1.创建一个Pool“webservers”。2.两个poolmember“WEB1”和“WEB2”,均为运行Ubuntucloudimage的instance。3.loadbalancerVIP与floatingIP关联。4.位于外网的cli... 查看详情

创建monitor并测试-每天5分钟玩转openstack(124)

650)this.width=650;"src="http://7xo6kd.com1.z0.glb.clouddn.com/upload-ueditor-image-20161211-1481452902897070024.jpg"/>前面我们创建了Pool,VIP并添加了Member。今天将创建Monitor,然后测试LBaaS是否能够正常工作。创建MonitorLBaaS可以创建monito 查看详情

创建monitor并测试-每天5分钟玩转openstack(124)

前面我们创建了Pool,VIP并添加了Member。今天将创建Monitor,然后测试LBaaS是否能够正常工作。创建MonitorLBaaS可以创建monitor,用于监控PoolMember健康状态。如果某个member不能正常工作,monitor会将其状态设置为down,从而避免将后续请... 查看详情

配置dhcp服务-每天5分钟玩转openstack(89)

前面章节我们看到instance在启动过程中能够从Neutron的DHCP服务获得IP,本节将详细讨论其内部实现机制。Neutron提供DHCP服务的组件是DHCPagent。DHCPagent在网络节点运行上,默认通过dnsmasq实现DHCP功能。配置DHCPagentDHCPagent的配置文件位... 查看详情

配置dhcp服务-每天5分钟玩转openstack(89)

前面章节我们看到instance在启动过程中能够从Neutron的DHCP服务获得IP,本节将详细讨论其内部实现机制。Neutron提供DHCP服务的组件是DHCPagent。DHCPagent在网络节点运行上,默认通过dnsmasq实现DHCP功能。配置DHCPagentDHCPagent的配置文件位... 查看详情

每天5分钟玩转openstack

最近在学习OpenStack的相关知识,一直苦于OpenStack的体系庞大以及复杂程度,学习没有进度,停滞不前。偶然机会在51CTO上发现了一个热点的专题关于OpenStack的,题目叫做《每天5分钟玩转OpenStack》,抱着试试的态度看了几篇,被文... 查看详情

为instance配置静态ip-每天5分钟玩转openstack(157)

这是OpenStack实施经验分享系列的第7篇。传统运维中为服务器配置静态IP是再常见不过的了。但在OpenStack环境下只能指定network,IP都是Neutron从subnetIP池中自动分配的。有同学就会想办法了:等instance起来后手工把IP改掉行不行?非... 查看详情

whynamespace?-每天5分钟玩转openstack(102)

上一节我们讨论了Neutron将虚拟router放置到namespace中实现了不同subnet之间的路由。今天探讨为什么要用namespace封装router?回顾一下前面的网络逻辑结构图:我们需要讨论一个深层次的问题:为什么不直接在tape17162c5-00和tapd568ba1a-74... 查看详情

用configdrive配置网络-每天5分钟玩转openstack(173)

上一节最后问了大家一个问题:如果subnet没有开DHCP,会是怎样一个情况?在其他条件不变的情况下,cloud-init依然会完成那3个步骤,也就是说网卡还是会被配置成dhcp模式,只是最后网卡没办法获得IP而已。不开DHCP也是一个常见... 查看详情

配置l2population-每天5分钟玩转openstack(114)

650)this.width=650;"src="http://7xo6kd.com1.z0.glb.clouddn.com/upload-ueditor-image-20161117-1479336953209034672.jpg"/>前面我们学习了L2Population的原理,今天讨论如何在Neutron中配置和启用此特性。目前L2Population支持VXLANwithLinuxbrid 查看详情

配置l3agent-每天5分钟玩转openstack(99)

650)this.width=650;"style="float:none;"title="http://7xo6kd.com1.z0.glb.clouddn.com/upload-ueditor-image-20161013-1476364049953074742.png"src="http://7xo6kd.com1.z0.glb.clouddn.com/upload-ueditor-imag 查看详情

创建vxlan-每天5分钟玩转openstack(111)

前面我们讨论了VXLAN的理论知识,并且在ML2中完成了相关配置。今天将通过WebUI创建vxlan100_net并观察节点网络结构的变化。打开菜单Admin->Networks,点击“CreateNetwork”按钮显示创建页面。ProviderNetworkType选择“VXLAN”SegmentationID即VN... 查看详情

访问外网ml2的配置-每天5分钟玩转openstack(103)

650)this.width=650;"style="float:none;"title="http://7xo6kd.com1.z0.glb.clouddn.com/upload-ueditor-image-20161023-1477217720838080461.png"src="http://7xo6kd.com1.z0.glb.clouddn.com/upload-ueditor-imag 查看详情