在openstack 中部署keepalived 高可用集群

 

 

在openstack云环境中部署keepalved主备集群时,会发现vip无法ping通,即使在相同网络也无法ping通,直接对云主机一张网卡配置两个IP进行测试也是同样的结果,

我想的是可能是keepalived创建的vip不被neutron认可,后来查询得到openstack的port所在的宿主机上iptables 对 MAC地址和IP进行了限制。是为了防止arp欺骗,我想总不能把宿主机iptables关了吧。生产环境决不能允许这等操作。

最终找到一个不错的方法(源头是参考一个国外博客Aaron’s Blog. )
方法是用的Havana版本的一新特性 “Allowed-Address-Pairs”,简单来说,就是在每个vm关联一个openstack创建ip,这样就解决了上面说的问题了;相当适合keepalived使用场景。

首先登陆openstack的horizon创建一个端口

这里我已经创建好了

创较好是这样的状态,接下来我们要进行cli命令行操作。可是笔者这里并不能远程直接对宿主机操作。接下来就是用到我们openstack的RC文件了

请看我另一条博文。openstack RC文件的使用

用 allwed_address_pairs 参数关联所创建的ip 192.168.111.44

--allowed-address-pair的用法:

neutron port-update --allowed-address-pair ip_address=[CIDR] [port_id]

在我们的环境中给两个keeplived执行操作:

neutron port-update --allowed-address-pair ip_address=192.168.111.44 c5a456dc-94fa-4f7d-a9a7-e9933afef632
neutron port-update --allowed-address-pair ip_address=192.168.111.44 aea3e3af-5bb0-4ad7-b1a0-0463d7290bd1

然后可以查看一下端口状态

neutron port-show c5a456dc-94fa-4f7d-a9a7-e9933afef632

可以看到allowed_address_pairs 属性 已经绑定   ,两个mac地址是一样的

到这一步为止,云主机内配置上面的 vip 就已经可以使用了。

接下来我们给vip绑定浮点ip

同样登陆openstack的horizon创建浮点ip

 

然后将分配的浮点ip进行绑定,选择事先创建好的vip就可以了

这个是绑定后的状态

并没有显示绑定到哪,不用管,这样vip就可以与外网通讯啦

转载于:https://www.cnblogs.com/heitaoq/p/8973260.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值