多外部F5情况下,F5目前的lbaas agent采用的是 1 agent 对 1(套)F5,因此在openstack里起多个 f5-bigip-lbaas-agent 服务实例
启动多F5实例的方法(ubuntu)
1. 复制一份/etc/neutron/f5-bigip-lbaas-agent.ini配置文件,例如复制为/etc/neutron/f5-bigip-lbaas-agent-2.ini
2. 编辑/etc/neutron/f5-bigip-lbaas-agent-2.ini中的配置,对应到另一套bigip
3. cp /etc/init/f5-bigip-lbaas-agent.conf /etc/init/f5-bigip-lbaas-agent-2.conf
4. 修改 /etc/init/f5-bigip-lbaas-agent-2.conf 的配置,将引用的配置文件修改为 /etc/neutron/f5-bigip-lbaas-agent-2.ini 并修改对应的log文件名配置
5. service f5-bigip-lbaas-agent-2 start
6. 修改/etc/neutron/neutron.conf 在default段落中增加:
f5_loadbalancer_pool_scheduler_driver = neutron.services.loadbalancer.drivers.f5.agent_scheduler.TenantScheduler
重启neutron服务
测试情形:
1. demo 租户的LB实例被分配到了ext-big1这台F5上
2. admin 租户的LB实例被分配到了ext-bip2上
3. 创建demo2用户的LB实例,demo2用户与demo用户使用了相同的地址空间10.169.169.0, 且vip也设置相同都为10.169.169.222
demo2的LB实例被分配到ext-bip1上,恰好与demo租户位于同一台F5上,可以看出同一个F5使用了route domain隔离了两个租户,使得两个租户共存于一台F5上,两个租户的配置位于不同的partition下
备注:上述测试过程中,依次创建的LB实例按照round robin方式分配给了不同的F5,而有时候测试发现该调度器有时候似乎不是按照round robin方式来调度的。
另:如果测试不成功,尝试把F5 以及openstack 都配置正确的ntp
文章评论