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 ...
随机推荐
- linux 磁盘管理与文件系统
一.磁盘分区的意义 磁盘分区就是为了将磁盘分成不同的逻辑区域,每个分区可以有不同的文件系统 二. 磁盘分区是按照磁盘的柱面进行分区的,由于盘片在转动时的角速度都是一样的,所以磁头在最外层的磁道上读取信 ...
- Delphi操作XML - 冰雪傲骨
Delphi操作XMl,只要使用 NativeXml.我是用的版本是4..NativeXML的使用方法比较简单,但是功能很强大. XE2的话,要在simdesign.inc后面加上: // Delph ...
- PHP基础陷阱题(变量赋值)
PHP基础陷阱题代码,需要的朋友可以参考下 复制代码 代码如下: <?php $a=3; $b=6; if($a=5||$b=7){ $a++; $b++; } var_dump($a, $ ...
- 简单使用c3p0连接池
首先,c3p0是一个连接池插件 需要jar包: 使用手动配置: /** * 手动配置使用c3p0 * @throws PropertyVetoException * @throws SQLExcept ...
- spring-springMVC-MyBatis整合配置文件
web.xml <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="htt ...
- Java 使用itext生成pdf以及下载
使用方法: 1.需要两个jar包: iText-5.0.6.jar //必须使用该版本,否则缺少相关的方法 TextAsian.jar //是为了文档中正常显示中文所必须引用的包 TextAsi ...
- pandas 学习 —— pivot table
0. DataFrame 的 index.columns.values >> df = pd.DataFrame(np.arange(6).reshape(3, 2), index=['o ...
- 20179203李鹏举 《Linux内核原理与分析》第一周学习笔记
Linux基础入门 一.Linux的基础学习 1.1 Linux的重要基础操作 Linux不同于Windows的纯粹的图形化界面,虽然也有图形桌面的操作但是更多的操作还是通过命令行来进行,当然除了命令 ...
- ACM学习历程—CSU 1216 异或最大值(xor && 贪心 && 字典树)
题目链接:http://acm.csu.edu.cn/OnlineJudge/problem.php?id=1216 题目大意是给了n个数,然后取出两个数,使得xor值最大. 首先暴力枚举是C(n, ...
- http头部解释
If-Modified-Since,If-Node-Match,ETag,Last-Modified 1 属于 Request Headers的是:If-Modified-Since,If-Node- ...