在openstack中使用keepalive+haproxy

 

 

keepalived配置

root@dev0 ~]# docker exec -itu0 keepalived bash
 #查看keepalived配置

cat  /etc/keepalived/keepalived.conf 
vrrp_script check_alive {
    script "/check_alive.sh"
    interval 2
    fall 2
    rise 10
}

vrrp_instance kolla_internal_vip_100 {
    state BACKUP
    nopreempt
    interface bond0.129
    virtual_router_id 100
    priority 1
    advert_int 1
    virtual_ipaddress {
        10.128.129.100 dev bond0.129  #vip 和绑定的网卡
    }
    authentication {
        auth_type PASS
        auth_pass ISHAu4MeF6Eu6yUA0Fh1ODBt1OHdH6yjvKJ9pkrS
    }
    track_script {
        check_alive
    }
}


#查看网卡信息
[root@dev0 ~]# ip add|grep bond0.129
9: bond0.129@bond0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    inet 10.128.129.4/24 brd 10.128.129.255 scope global bond0.129
    inet 10.128.129.100/32 scope global bond0.129

keepalived.conf 配置文件说明

[root@bogon ~]# cat > /etc/keepalived/keepalived.conf << EOF
! Configuration File for keepalived

global_defs {
   notification_email {
     acassen@firewall.loc
     failover@firewall.loc
     sysadmin@firewall.loc
   }
   notification_email_from Alexandre.Cassen@firewall.loc
   smtp_server 192.168.200.1
   smtp_connect_timeout 30
   router_id LVS_DEVEL_MASTER           # 两台ID不能一致
   vrrp_skip_check_adv_addr
   vrrp_strict
   vrrp_garp_interval 0
   vrrp_gna_interval 0
}

vrrp_instance VI_1 {
    state MASTER                        # 指定A节点为主节点 备用节点上设置为BACKUP即可
    interface ens160                    # 绑定虚拟IP的网络接口
    virtual_router_id 51                # VRRP组名,两个节点的设置必须一样,以指明各个节点属于同一VRRP组
    priority 100                        # 主节点的优先级(1-254之间),备用节点必须比主节点优先级低
    advert_int 1                        # 组播信息发送间隔,两个节点设置必须一样
    authentication {                    # 设置验证信息,两个节点必须一致
        auth_type PASS					 
        auth_pass 1111					 
    }
    virtual_ipaddress {                 # 指定虚拟IP, 两个节点设置必须一样
            172.16.3.200/24				
} 
}
EOF

haproxy

[root@dev0 ~]# docker exec -itu0  haproxy bash
(haproxy)[root@dev0 /]# ls
anaconda-post.log  bin  dev  etc  home  lib  lib64  media  mnt  opt  proc  root  run  run_command  sbin  srv  sys  tmp  usr  var
(haproxy)[root@dev0 /]# cd /etc/haproxy/
(haproxy)[root@dev0 haproxy]# ls
haproxy.cfg  haproxy_run.sh  services.d

haproxy.cfg

global
    chroot /var/lib/haproxy
    user haproxy
    group haproxy
    daemon
    log 10.128.129.4:5140 local1
    maxconn 40000
    nbproc 1
    stats socket /var/lib/kolla/haproxy/haproxy.sock group kolla mode 660

defaults
    log global
    option redispatch
    retries 3
    timeout http-request 10s
    timeout queue 1m
    timeout connect 10s
    timeout client 1m
    timeout server 1m
    timeout check 10s
    balance roundrobin
    maxconn 10000

listen stats
   bind 10.128.129.4:1984
   mode http
   stats enable
   stats uri /
   stats refresh 15s
   stats realm Haproxy\ Stats
   stats auth openstack:sGX4fqnxs5paScaEoMB5lakd27OTjd5qw79fC8jW

frontend status
    bind 10.128.129.4:61313
    bind 10.128.129.100:61313
    mode http
    monitor-uri /

查看具体配置

(haproxy)[root@dev0 haproxy]# cd services.d/
(haproxy)[root@dev0 services.d]# ls
blazar-api.cfg     heat-api.cfg          keystone.cfg      memcached.cfg         nova-spicehtml5proxy.cfg     rabbitmq.cfg
cinder-api.cfg     heat-api-cfn.cfg      kibana.cfg        neutron-server.cfg    octavia-api.cfg              trove-api.cfg
designate-api.cfg  horizon.cfg           magnum-api.cfg    nova-api.cfg          placement-api.cfg
elasticsearch.cfg  ironic-api.cfg        mariadb.cfg       nova-novncproxy.cfg   prometheus-alertmanager.cfg
glance-api.cfg     ironic-inspector.cfg  masakari-api.cfg  nova-serialproxy.cfg  prometheus-server.cfg
(haproxy)[root@dev0 services.d]# cat trove-api.cfg 

trove-api.cfg 

cat trove-api.cfg 
listen trove_api
    mode http
    http-request del-header X-Forwarded-Proto
    option httplog
    option forwardfor
    http-request set-header X-Forwarded-Proto https if { ssl_fc }
    bind 10.128.129.100:8779
    server dev0 10.128.129.4:8779 check inter 2000 rise 2 fall 5

 


版权声明:本文为qq_42533216原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。