1       实验环境

  • Openstack juno版本,一个controller(计算节点也在这个物理节点上)和一个网络节点network
  • 使用haproxy作为代理软件
  • 使用pacemaker作为资源管理工具
  • 因为这里只用这两个节点做实验所以这两个节点即作为openstack节点同事也作为ha的主从节点

2       安装配置haproxy

分别在controller和network上安装

2.1       安装

执行 yum install haproxy –y

2.2       配置

修改 /etc/haproxy/haproxy.cfg,如图:

Global为默认:

主要是添加如下内容:

listen nova_compute_api_cluster  172.16.1.5:8774

balance source

option tcpka

option httpchk

option tcplog

server controller 172.16.1.75:8774 weight 1 check inter 10s rise 2 fall 5

server network 172.16.1.74:8774 weight 1 check inter 10s rise 2 fall 5

listen status 172.16.1.5:8001

stats enable

stats uri /stats

stats auth  admin:123456

stats realm Global\statistic

编辑文件/etc/sysctl.d/haproxy.conf,添加net.ipv4.ip_nonlocal_bind = 1

3       安装和配置pacemaker

在controller和network上都要安装

3.1       安装

执行yum install pacemaker  corosync  pcs  fence-agents-all –y

修改hacluster密码,执行passwd hacluster

执行systemctl enable pcsd.service pacemaker.service corosync.service和systemctl start pcsd.service

3.2       配置

在控制节点执行

pcs cluster auth controller network

pcs cluster setup --start --name openstack-cluster controller network

pcs cluster enable –all

检查一下状态,执行如下命令:

corosync-cfgtool -s

corosync-cmapctl | grep members

pcs status corosync

pcs status

3.3       集群属性设置

执行如下命令:

pcs property set stonith-enabled=false

pcs property set no-quorum-policy=ignore

pcs resource defaults resource-stickiness=100

crm_verify -L –V

3.4       Vip设置

pcs resource create ClusterIP-01 ocf:heartbeat:IPaddr2 ip=172.16.1.78 cidr_netmask=24 op monitor interval=5s

pcs resource create HAproxy systemd:haproxy op monitor interval=5s

pcs resource group add HAproxyIPs ClusterIP-01

pcs constraint colocation add HAproxy HAproxyIPs INFINITY

pcs constraint order HAproxyIPs then HAproxy

3.5       查看crm状态

crm_mon -1

出错,修改一个keystone endpoint, nova的endpoint要使用vip,进入数据修改keystone数据库,执行update endpoint set url='http://172.16.1.78:8774/v2.0enant_id)s' where url='http://controller:8774/v2.0/%(tenant_id)s';

3.6       登录http://172.16.1.78:8001/stats

查看一下界面如下,可以看到正常登录,到此nova-api的HA就完成了。

最新文章

  1. 在Activity之间传递参数(四)
  2. Thrift 个人实战--Thrift 服务化 Client的改造
  3. So easy Webservice 2.WebService介绍
  4. Hive与HBase区别
  5. JAVA逻辑字符串判断真假
  6. libevent中定时器的使用方法
  7. HDU 5629 Clarke and tree dp+prufer序列
  8. Good Bye 2015B
  9. aix 文件大小相关查询
  10. jquery 下拉多选插件
  11. 深和学习导航CSS样式
  12. P2051 [AHOI2009]中国象棋
  13. 01_GIT基础、安装
  14. 优雅使用 illuminate/database 包中的 Collection
  15. CentOS常用命令大全
  16. SSM-SpringMVC-24:SpringMVC异常高级之自定义异常
  17. kendo ui DatePicker 时区转换
  18. width属性
  19. Centos 7最小化Mongodb部署操作
  20. yarn-RM-check-by-curl

热门文章

  1. Python常用变量处理手记(拼接数字,转json)
  2. 2015年多校联合训练第一场OO’s Sequence(hdu5288)
  3. python 基础 6.2 raise 关键字使用
  4. 【BZOJ3110】[Zjoi2013]K大数查询 树套树
  5. android菜鸟学习笔记16----Android项目打包安装过程(Run as Android Application)
  6. 详解Vue 实例中的生命周期钩子
  7. HNOI2017
  8. 【python】python调用shell方法
  9. ubuntu 搭建 tomcat
  10. Database: index