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 ...
随机推荐
- QT 按键处理 快捷键处理 shift + ctrl
原味地址:http://www.cnblogs.com/codingmylife/archive/2010/08/30/1812739.html CTRL+Enter发送信息的实现 在现在的即时聊天程 ...
- NodeJs实现图片上传
关于formidable NodeJs实现图片上传,此处主要用了插件:formidable github上关于formidable的资料如下: https://github.com/felixge/n ...
- json与jsonp详解
前言: 说到AJAX就会不可避免的面临两个问题,第一个是AJAX以何种格式来交换数据?第二个是跨域的需求如何解决?这两个问题目前都有不同的解决方案,比如数据可以用自定义字符串或者用XML来描述,跨域 ...
- JdbcUtils针对事务问题作出的第三次修改
DAO中的事务 其实在DAO中处理事务真的是“小菜一碟” try{ con.commit(); }catch(Exception e){ con.rollback(); } 但是dao层中只能是对账户 ...
- Android中高效的显示图片之三——缓存图片
加载一张图片到UI相对比较简单,如果一次要加载一组图片,就会变得麻烦很多.像ListView,GridView,ViewPager等控件,需要显示的图片和将要显示的图片数量可能会很大. 为了减少内存使 ...
- 倍增模板orz
#include<iostream> #include<cstdio> #include<cstdlib> #include<algorithm> #i ...
- POJ1741 Tree(树的点分治基础题)
Give a tree with n vertices,each edge has a length(positive integer less than 1001).Define dist(u,v) ...
- 【LeetCode】012. Integer to Roman
Given an integer, convert it to a roman numeral. Input is guaranteed to be within the range from 1 t ...
- bzoj 2648 SJY摆棋子——KDtree
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=2648 第一道KDtree! 学习资料:https://blog.csdn.net/zhl30 ...
- docker数据卷(volume)
1.什么是数据卷volume https://blog.csdn.net/dream_broken/article/details/52314993 为了了解什么是Docker Volume,首先我们 ...