改善OpenStack上DHCP的性能

2019-11-06 12:03 来源:未知

您有未有遇上过OpenStack中,VM失去IP地址的难点?若是有的话,你了然这或然是怎么着难点
——极其是只要您具有多量的节点和VM。你的客商会因为还未有刚烈原因却断了与VM的连年而认为到 挫败。以至云的扶植协会会为log文件里不曾提醒却现身难题深感挫败。

听起来很熟识?

在此篇blog里,作者将会享用本人的部分关于Openstack互连网的经验,特别是背负为VM分配IP地址的义务的DHCP子组件。

何以大家会把标题归纳于DHCP组件?因为这几个特定的问平时都以由那几个小但明显一丝一毫的OpenStack组件引致的。

在Ubuntu 12.10 上设置配备Openstack http://www.linuxidc.com/Linux/2013-08/88184.htm

Ubuntu 12.04 OpenStack 斯维夫特单节点布置手册 http://www.linuxidc.com/Linux/2013-08/88182.htm

OpenStack云总结飞快入门教程 http://www.linuxidc.com/Linux/2013-08/88186.htm

商家配备OpenStack:该做与不应该做的事 http://www.linuxidc.com/Linux/2013-09/90428.htm

CentOS 6.5 x64bit 飞快安装OpenStack http://www.linuxidc.com/Linux/2014-06/103775.htm

DHCP agent和DNSmasq

在OpenStack中,neutron-dhcp-agent为实例提供ip地址。理论上,neutron-dhcp-agent能够扶助四种

后端,但现行反革命它只补助dnsmasq。当运维二个实例时,分配和布局(ip卡塔 尔(阿拉伯语:قطر‎的次第富含三个在dnsmasq config中积存ip地址的长河,接着运行或重载dnsmasq。日常,OpenStack在每种网络中只有二个neutron-dhcp-agent担当spawn三个dnsmasq,所以一个大而无当的互连网(包括全数子网卡塔尔国中只会有二个dnsmasq提供劳动。理论上,并且依照实用的实验室测量检验,dnsmasq应该能每秒管理1000个DHCP乞求,但这里某事实要评释下:

1.租用时间。私下认可意况下是120s,你大致会领悟,在租借时间内,dhcp客商端会尝试中途延长租费时间。这意味着各个VM会一分钟更新叁遍他们的ip地址。

2.去运行一个包罗655叁拾七个静态租借的DNSmasq实例差不离必要4分钟(3分43秒卡塔 尔(阿拉伯语:قطر‎。常常那会生出在neutron为新的VM分配新的ip地址,接着强行reload DNSmasq时。在这里时,将从未DHCP服务会为相应的私人民居房Neutron网络提供劳务。

3.比如您未以往在dnsmasq的布局中央银行使no-ping选项——那是应归属对林芝怀想的OpenStack的暗中认可设置——你会因不胜慢的劳动进程感觉伤心,因为在dnsmasq中,二个分手的pinger进程会被用来检查所提供的ip地址是还是不是业已在利用中。包罗no-ping选项,dnsmasq将能在10分钟内为1伍十九个乞求提供服务况兼不会错失它们,固然那信赖于大旨(core卡塔 尔(英语:State of Qatar)速度和CPU速度。

4.Ubuntu和CentOS有mac地址表(neighbour table卡塔 尔(英语:State of Qatar)被界定到/128/512/1024(net.ipv4.neigh.default.gc_thresh58%/3卡塔 尔(英语:State of Qatar)个记录。因为这么,一时常使用的 IP 记录将会非凡敏捷老化(IP records that are not frequently used will age abnormally fast卡塔 尔(英语:State of Qatar)那会潜移暗化互联网品质并拖慢系统把流量发送至dhcp agent所在节点上的科学的mac地址的力量。

5.企图通过分明的加码ip的承包租售时间去消除这几个质量难题,这会招致neutron释放ip地址那方面包车型大巴大主题材料(如果您的云负载均衡地改善)。暗中认可景况下,neutron会为一个VM分配叁个ip地址达24钟头(neutron will allocate an IP address to a VM for 24 hours卡塔尔国,独立于实际的租用时间。当然,暗许情形下,neutron不会为曾经终止了的实例提供ip地址直至24时辰。

你能够接纳的措施
正好的是,你能够做点事解决难题,要是您接受openstack并具备多个地方空间大于251个地点(/24卡塔尔的私人商品房互连网,

任何时候你应当思谋调解dnsmasq和network节点自个儿的默认参数。

1.扩展ip的租费时间以减掉每秒来自VM的尝试更新ip地址的央求数量。依据平时的气象总结新的承包租售时间,
难忘虚构机生命周期的平均时间。由于多少个Bug,设置太大的租费时间值会强迫OpenStack在数据库中保存那些ip地址为“used”的气象。就算VM已经被删除,因为neutron的租用时间在数据库中,neutron将不会释放这么些ip地址。

2.日增MAC地址表的尺码使其能服务起码风流倜傥千个主机。要到位那样,规范地,你能够安装dhcp-agent所在主机
的sysctl变量(常常在/etc/sysctl.conf卡塔尔。视景况,你能够在有着与网络关于的节点实施以下操作,那几个变量

这么设置:

net.ipv4.neigh.default.gc_thresh1 = 1024

net.ipv4.neigh.default.gc_thresh2 = 4096

net.ipv4.neigh.default.gc_thresh3 = 8192

3.为DNSmasq的暗中同意参数加上no-ping选项。这些更换能够使其每秒管理多10-贰12个必要,因为在被实际分配在此之前,dnsmasq没有必要再品尝ping那三个ip。假使您接受OpenStack作为你的基础设备的一片段,记住,你一定要稳重地思索那么些选项。举个例子,假令你正利用提供者网络(provider networks卡塔尔况且你的VM与其余物理服务器、设备、等等是单生龙活虎L2域的组成都部队分,IP冲突是恐怕产生的的,能够形成严重破坏。

Neutron社区必需思忖的改观

不幸地,在neutron中从不其余方式能为客户解决24小时ip分配的主题素材(the problem of 24 hour IP allocation卡塔 尔(英语:State of Qatar),那么些标题应当从neutron本身的更改去消除。八个简便的减轻办法是在neutron或dhcp-agent中增添叁个可配备的参数以修正租费时间,并把它看做neutron数据库中的分配周期。那一个点子表面看起来很周密但是留意检查一下,你会发觉到那会大大扩大neutron-api/neutron-db的负载。所以那不是二个不利或不科学的不二秘技去消除难点。

代表的是,neutron应该在实例被终止时简短地从数据库中移除ip地址。那会一挥而就全体毛病并在云上达成

动态负载和ip地址的康健重用。【实际上,那无独有偶是Icehouse版本的动静,固然最近主题材料负有减轻】

结论

正如本人说的,笔者的所述只是覆盖了贰个极小的OpenStack网络的子组件——DHCP服务。正如你所看见的, 借使配置不得法,非常是当您采纳了DNSmasq的暗许选项将会促成数不清翻来覆去。下边作者所推荐的盼望能协理你 了然怎么选取具体的DNSmasq选项和什么依据气象调治他们。

Linux系统下构建DHCP服务器 http://www.linuxidc.com/Linux/2013-06/86531.htm

CentOS下布置宗旨DNS服务器以至DHCP下的DDNS http://www.linuxidc.com/Linux/2013-06/85634.htm

SUSE Linux 11 pxe+DHCP+tftp+ftp 无人值守安装 http://www.linuxidc.com/Linux/2013-06/85481.htm

Linux下架设DHCP服务器进程及3种测验 http://www.linuxidc.com/Linux/2013-05/84832.htm

Linux上一步一步实现DHCP服务器 http://www.linuxidc.com/Linux/2013-04/82244.htm

正文恒久更新链接地址:http://www.linuxidc.com/Linux/2014-08/105501.htm

图片 1

TAG标签:
版权声明:本文由990888藏宝阁发布于计算机网络,转载请注明出处:改善OpenStack上DHCP的性能