neutron负载均衡高可用测试
对工作中,实验环境的一个小总结
1、创建高可用负载均衡器------创建高可用的时候,添加上ha-mode参数即可
neutron lb-pool-create --lb-method ROUND_ROBIN \
--name mypool-ckf4879-ha --protocol HTTP --subnet-id 83747f17-f688-4f7a-a711-e838484ff055 \
--ha-mode true
通过neutron lb-pool-list命令行可以查看到你创建的负载均衡器,
通过neutron lb-agent-hosting-pool dfd107b5-a17f-4148-93f7-e295d6d322d3命令,可以查看到你创建的负载均衡器都分布在哪些物理节点上
此时查看负载均衡器的状态是standby状态,因为需要创建vip之后负载均衡器才会被激活,也就是才会在agent上生成namespace空间
2、创建vip
neutron lb-vip-create --name myvip-ckf4879-ha --protocol-port 80
--protocol HTTP --subnet-id 83747f17-f688-4f7a-a711-e838484ff055 --address 192.168.0.55 \
dfd107b5-a17f-4148-93f7-e295d6d322d3
3、添加后端成员1
neutron lb-member-create --address 192.168.0.56 \
--protocol-port 80 dfd107b5-a17f-4148-93f7-e295d6d322d3
4、添加后端成员2
neutron lb-member-create --address 192.168.0.57 \
--protocol-port 80 dfd107b5-a17f-4148-93f7-e295d6d322d3
5、健康检查和负载均衡器pool进行关联
neutron lb-healthmonitor-associate c83125fb-bd4f-4f11-a3e5-b0b1b75477c1 dfd107b5-a17f-4148-93f7-e295d6d322d3
6、添加实际的虚机成员1
nova boot lb-test-host1-ha --flavor 1 --image f06bf8fc-55e5-42b4-81eb-008b04e4afcb \
--nic net-id=ffd15fc9-3528-404c-945c-6e3ba40fc92d,v4-fixed-ip=192.168.0.56 \
--availability-zone az01.cell01.ceshihuanjing:AZ01C03.PUB.CS
7、添加实际的虚机成员2
nova boot lb-test-host2-ha --flavor 1 --image f06bf8fc-55e5-42b4-81eb-008b04e4afcb \
--nic net-id=ffd15fc9-3528-404c-945c-6e3ba40fc92d,v4-fixed-ip=192.168.0.57 \
--availability-zone az01.cell01.ceshihuanjing:AZ01C03.PUB.CS
8、在后端成员1上模拟web服务
while true;
do echo -e "HTTP/1.0 200 OK\r\n\r\nWelcome to 192.168.0.56" | sudo nc -l -p 80 ;
done&
9、在后端成员2上模拟web服务
while true;
do echo -e "HTTP/1.0 200 OK\r\n\r\nWelcome to 192.168.0.57" | sudo nc -l -p 80 ;
done
10、创建测试的虚机
nova boot lb-test-host1 --flavor 1 --image f06bf8fc-55e5-42b4-81eb-008b04e4afcb \
--nic net-id=ffd15fc9-3528-404c-945c-6e3ba40fc92d,v4-fixed-ip=192.168.0.50 \
--availability-zone az01.cell01.ceshihuanjing:AZ01C03.PUB.CS
11、在测试虚机上通过vip访问后端成员
for k in $( seq 1 10000 )
do
sleep 1
curl http://192.168.0.55
done
后端成员的信息轮训呈现
Welcome to 192.168.0.56
Welcome to 192.168.0.57
Welcome to 192.168.0.56
Welcome to 192.168.0.57
12、通过命令neutron lb-agent-hosting-pool dfd107b5-a17f-4148-93f7-e295d6d322d3查看,主负载均衡运行在哪个物理节点上
13、通过ssh登录到该物理节点上
14、通过ip netns list 命令显示出负载均衡器
15、通过ip netns exec qlbxxx ip add显示网卡信息
16、通过ip netns exec qlbaas-dfd107b5-a17f-4148-93f7-e295d6d322d3 ip link set ha-d9d48550-c3 down 命令,把接受高可用心跳报文的网卡down掉
从而引起从负载均衡切换为主负载均衡,接管vip
17、在测试主机上仍然可以看到,在正常的访问web服务
后端成员的信息轮训呈现
Welcome to 192.168.0.56
Welcome to 192.168.0.57
Welcome to 192.168.0.56
Welcome to 192.168.0.57
neutron负载均衡高可用测试的更多相关文章
- 实现基于Haproxy+Keepalived负载均衡高可用架构
1.项目介绍: 上上期我们实现了keepalived主从高可用集群网站架构,随着公司业务的发展,公司负载均衡服务已经实现四层负载均衡,但业务的复杂程度提升,公司要求把mobile手机站点作为单独的服务 ...
- Lvs+keepAlived实现负载均衡高可用集群(DR实现)
第1章 LVS 简介 1.1 LVS介绍 LVS是Linux Virtual Server的简写,意为Linux虚拟服务器,是虚拟的服务器集群系统,可在UNIX/LINUX平台下实现负载均衡集群功能. ...
- Nginx+Keepalived负载均衡高可用
Nginx+Keepalived负载均衡高可用方案: Nginx 使用平台:unix.linux.windows. 功能: A.www web服务 http 80 b.负载均衡(方向代理proxy) ...
- JAVAEE——宜立方商城03:Nginx负载均衡高可用、Keepalived+Nginx实现主备
1 nginx负载均衡高可用 1.1 什么是负载均衡高可用 nginx作为负载均衡器,所有请求都到了nginx,可见nginx处于非常重点的位置,如果nginx服务器宕机后端web服务将无法提供服务, ...
- Nginx负载均衡高可用
1. Nginx负载均衡高可用 首先介绍一下Keepalived,它是一个高性能的服务器高可用或热备解决方案,Keepalived主要来防止服务器单点故障的发生问题,可以通过其与Nginx的配合实 ...
- Keepalived+Nginx实现负载均衡高可用
一.负载均衡高可用 Nginx作为负载均衡器,所有请求都到了Nginx,可见Nginx处于非常重点的位置,如果Nginx服务器宕机后端web服务将无法提供服务,影响严重. 为了避免负载均衡服务器的宕机 ...
- LVS+Keepalived-DR模式负载均衡高可用集群
LVS+Keepalived DR模式负载均衡+高可用集群架构图 工作原理: Keepalived采用VRRP热备份协议实现Linux服务器的多机热备功能. VRRP,虚拟路由冗余协议,是针对路由器的 ...
- Nginx+keepalived实现负载均衡高可用配置
1. 什么是负载均衡高可用 nginx作为负载均衡器,所有请求都到了nginx,可见nginx处于非常重点的位置,如果nginx服务器宕机后端web服务将无法提供服务,影响严重. 为了屏蔽负载均衡服务 ...
- Nginx负载均衡高可用---架构
1. Nginx负载均衡高可用 首先介绍一下Keepalived,它是一个高性能的服务器高可用或热备解决方案,Keepalived主要来防止服务器单点故障的发生问题,可以通过其与Nginx的配合实现w ...
随机推荐
- jQuery绿色下拉网站导航
jQuery,下拉菜单,网站导航,绿色导航,菜单导航,jQuery绿色下拉网站导航是一款基于jquery实现的鼠标滑过下拉显示二级菜单. jquery特效代码:http://www.huiyi8.co ...
- Cocos2d-x中手动构造Json::Value
由于项目需要Json::Value 不是由服务器传送过来,而是自己手动构造. 带数组的json Json::Value items; for(int i=0,i<2;i++) { items[i ...
- Linux 基本命令总结
0.平时自己用的命令 在跑一些程序,例如deep learning的时候,总是希望查看一下cpu.gpu.内存的使用率. (1)cpu.内存情况:使用top命令: (2)查看gpu:使用 nvidia ...
- Php处理大文件-分割和合并
分割文件 /* * 分割文件 * 默认大小 2M=10485760/5 */ function file_split($file,$block_size=10485760/5) { $block_in ...
- node Express安装和使用
1:在cmd命令行下执行npm install -g express,安装全局的express 2:进入需要创建项目的目录下执行express nodeExpressProject,创建express ...
- hadoop_学习_01_入门准备
一.入门准备 1.零基础学习Hadoop 2.大数据初学者应该知道的知识
- JavaUtil_01_MD5加密
一.百度翻译MD5工具类 昨天做java微信开发,引用百度翻译API给公众号添加翻译功能时,需要使用MD5生成签名.注意,使用MD5生成签名后一定要转成小写,不然百度翻译后台不会认你这个签名的,会报无 ...
- 关键字volidate和transient(转)
Volatile修饰的成员变量在每次被线程访问时,都强迫从主内存中重读该成员变量的值.而且,当成员变量发生变化时,强迫线程将变化值回写到主内存.这样在任何时刻,两个不同的线程总是看到某个成员变量的同一 ...
- HDU 6231 (K-th Number)
题目链接:https://cn.vjudge.net/problem/HDU-6231 思路:二分+双指针: #include <stdio.h> #include <iostrea ...
- Java进阶06 容器
Java中有一些对象被称为容器(container).容器中可以包含多个对象,每个对象称为容器中的一个元素.容器是用对象封装的数据结构(data structure). 充满梦想的容器 不同的数据结构 ...