Devstack配置负载均衡,负载均衡版本V2
本文为minxihou的翻译文章,转载请注明出处Bob Hou: http://blog.csdn.net/minxihou
JmilkFan:minxihou的技术博文方向是 算法&Openstack自动化 ,写得很好,值得推荐。 : )
目录
本文为博主翻译文章,转载请注明出处Bob Hou: http://blog.csdn.net/minxihou
负载均衡项目在openstack开源之后就一直在开发,早先neutron LBaaS V1的版本已经不在适用,现在使用的是LBaaS V2的版本。 LBaaS V2 API开发参照Octavia。
阶段1:创建Devstack + 2个nova实例
首先,创建一个至少8G内存16G磁盘空间的虚拟机,确保虚机更新(原文是: make sure it is updated,译者认为是需要yum update来更新组件。)安装git组件和任何你认为有用的开发组件。
安装devstack
git clone https://git.openstack.org/openstack-dev/devstack cd devstack
参照下列配置编辑你的local.conf文件
[[local|localrc]] # Load the external LBaaS plugin. enable_plugin neutron-lbaas https://git.openstack.org/openstack/neutron-lbaas enable_plugin octavia https://git.openstack.org/openstack/octavia # ===== BEGIN localrc ===== DATABASE_PASSWORD=password ADMIN_PASSWORD=password SERVICE_PASSWORD=password RABBIT_PASSWORD=password # Enable Logging LOGFILE=$DEST/logs/stack.sh.log VERBOSE=True LOG_COLOR=True SCREEN_LOGDIR=$DEST/logs # Pre-requisite ENABLED_SERVICES=rabbit,mysql,key # Horizon ENABLED_SERVICES+=,horizon # Nova ENABLED_SERVICES+=,n-api,n-crt,n-cpu,n-cond,n-sch # Glance ENABLED_SERVICES+=,g-api,g-reg # Neutron ENABLED_SERVICES+=,q-svc,q-agt,q-dhcp,q-l3,q-meta # Enable LBaaS v2 ENABLED_SERVICES+=,q-lbaasv2 ENABLED_SERVICES+=,octavia,o-cw,o-hk,o-hm,o-api # Cinder ENABLED_SERVICES+=,c-api,c-vol,c-sch # Tempest ENABLED_SERVICES+=,tempest # ===== END localrc =====
运行stack.sh然后做完整性检查
./stack.sh . ./openrc neutron net-list # should show public and private networks
在nova中创建两个实例用作测试http服务器
#create nova instances on private network nova boot --image $(nova image-list | awk '/ cirros-.*-x86_64-uec / {print $2}') --flavor 1 --nic net-id=$(neutron net-list | awk '/ private / {print $2}') node1 nova boot --image $(nova image-list | awk '/ cirros-.*-x86_64-uec / {print $2}') --flavor 1 --nic net-id=$(neutron net-list | awk '/ private / {print $2}') node2 nova list # should show the nova instances just created #add secgroup rules to allow ssh etc.. neutron security-group-rule-create default --protocol icmp neutron security-group-rule-create default --protocol tcp --port-range-min 22 --port-range-max 22 neutron security-group-rule-create default --protocol tcp --port-range-min 80 --port-range-max 80
在创建的两个节点上每个节点配置一个简单的web服务器。使用ssh链接到每个实例中(用户名:“cirros”,密码:“cubswin”)
MYIP=$(ifconfig eth0|grep 'inet addr'|awk -F: '{print $2}'| awk '{print $1}') while true; do echo -e "HTTP/1.0 200 OK\r\n\r\nWelcome to $MYIP" | sudo nc -l -p 80 ; done&
阶段2:创建你的负载均衡
neutron lbaas-loadbalancer-create --name lb1 private-subnet neutron lbaas-loadbalancer-show lb1 # Wait for the provisioning_status to be ACTIVE. neutron lbaas-listener-create --loadbalancer lb1 --protocol HTTP --protocol-port 80 --name listener1 sleep 10 # Sleep since LBaaS actions can take a few seconds depending on the environment. neutron lbaas-pool-create --lb-algorithm ROUND_ROBIN --listener listener1 --protocol HTTP --name pool1 sleep 10 neutron lbaas-member-create --subnet private-subnet --address 10.0.0.3 --protocol-port 80 pool1 sleep 10 neutron lbaas-member-create --subnet private-subnet --address 10.0.0.5 --protocol-port 80 pool1
请注意在上面命令行中的“10.0.0.3”和“10.0.0.5”IP地址是你创建出来的两个实例机器的IP地址(这个以实际你创建出来虚机的IP地址为准)。创建出来负载均衡的VIP会在lbass-loadbalancer-create中以vip_address的开头形式报告出来。一个快速检测LB的方法是使用curl指令测试这个LB的IP,这个指令应该会交替的访问实际两个虚机节点的IP地址。(从配置文件中不难看出是使用的round robin轮询方式来访问)
译者注: 在linux中curl是一个利用URL规则在命令行下工作的文件传输工具。
原文地址:http://docs.openstack.org/developer/devstack/guides/devstack-with-lbaas-v2.html

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
使用Devstack部署neutron网络节点
本文为minxihou的翻译文章,转载请注明出处Bob Hou: http://blog.csdn.net/minxihou JmilkFan:minxihou的技术博文方向是 算法&Openstack自动化 ,写得很好,值得推荐。 : ) 目录 目录 单网卡的网络节点配置 1 物理网卡设置 2 Devstack配置 3 多计算节点 31 物理网络设置 4 Devstack计算节点配置 配置Open vSwith 和 networks 1 物理网络设置 2 配置服务 3 Devstack配置 注意事项 1 配置非标准MTU的物理网络 2 禁用除iptables之外的防火墙 3 配置ML2拓展插件 4 使用自带网桥替代Open vSwitch 5 使用MacVTap来取代Open vSwitch 51 使用配置驱动外部L3dhcp来提供网络服务的单节点模型 52 配置了MacVTap计算节点的多节点模式 译者在自动化部署的时候遇到了很多问题,这个时候不得不求向devstack官档。所以翻译出来以备以后查询。翻译中很多不足之处还望指教。写这个的老外用词有点抽象和狂野…. 本文为博主...
- 下一篇
阿里云专有网络与弹性公网IP
阿里云服务器经典网络和专有网络究竟有什么区别? 在用户提交订单购买阿里云ECS云服务器时,会面临怎样选择网络类型的烦恼,阿里云服务器定制购买时,网络类型里的经典网络和专有网络(VPC)是什么含义,该怎样选择适合自己的网络类型呢?万维景盛高级工程师为您分析解答。 其实,阿里云官网已经给出了关于这两种网络的简单介绍: 网络类型:仅是 ECS 产品功能上区分,与运营商公网接入网络质量无关,任何网络类型的运营商接入均为 BGP 线路,请您放心使用,并根据自己需要进行选择。经典网络: IP地址由阿里云统一分配,配置简便,使用方便,适合对操作易用性要求比较高、需要快速使用 ECS 的用户。专有网络: 是指逻辑隔离的私有网络,您可以自定义网络拓扑和 IP 地址,支持通过专线连接。适合于熟悉网络管理的用户。 只不过,这个介绍对于很多人来讲,还是看的云里雾里,看完了也不知道该怎么选。 其实,可以这样简单地理解,从公网ip来讲,经典网络和专有网络没有区别;从内网ip来讲,经典网络是DHIP,也就是自动分配局域网ip地址,而专有网络则是手工分配局域网ip地址,这样方便有多台云服务器的用户自行定义内网ip结构...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Docker安装Oracle12C,快速搭建Oracle学习环境
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- SpringBoot2整合Redis,开启缓存,提高访问速度
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- CentOS7设置SWAP分区,小内存服务器的救世主
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- CentOS7安装Docker,走上虚拟化容器引擎之路
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- CentOS关闭SELinux安全模块