From 2cab499f433e9a88ed4017399f3ca1e66bf8effa Mon Sep 17 00:00:00 2001
From: Tom Cammann <tom.cammann@hp.com>
Date: Tue, 4 Nov 2014 11:11:52 +0000
Subject: [PATCH] Use HAProxy httpchk for openstack services

Instead of the default TCP connection check use the HTTP check. This
provides a more reliable way to tell if the service is up or not, only
2xx and 3xx response codes will signal a healthy service. This check can
also be used in conjunction with check-ssl to enable checks for services
running SSL/TLS in overcloud.

Change-Id: I1581c091b996422fb1374ea4c024d0a88453e10b
---
 overcloud-source.yaml | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/overcloud-source.yaml b/overcloud-source.yaml
index 64deb95bed..5034a940e1 100644
--- a/overcloud-source.yaml
+++ b/overcloud-source.yaml
@@ -732,6 +732,8 @@ resources:
           net_binds:
             - &control_vip {ip: {get_attr: [ControlVirtualIP, fixed_ips, 0, ip_address]}}
             - &public_vip {ip: {get_attr: [PublicVirtualIP, fixed_ips, 0, ip_address]}}
+          options:
+            - option httpchk GET /
           services:
             - name: keystone_admin
               port: 35357
@@ -747,6 +749,7 @@ resources:
               port: 9292
             - name: glance_registry
               port: 9191
+              options: # overwrite options as glace_reg needs auth for http req
             - name: heat_api
               port: 8004
             - name: heat_cloudwatch
@@ -772,8 +775,11 @@ resources:
               port: 6080
             - name: ceilometer
               port: 8777
+              options: # overwrite options as ceil needs auth for http req
             - name: swift_proxy_server
               port: 8080
+              options:
+                - option httpchk GET /info
             - name: rabbitmq
               port: 5672
               net_binds: