From 2c93ac868a5c8c7acb1d09ec0e52d35abca49a5b Mon Sep 17 00:00:00 2001 From: caiyixiang Date: Thu, 6 Apr 2017 09:31:38 +0800 Subject: [PATCH] add a example for haproxy_custom_configuration fix some error --- .../custom-configuration/haproxy/README.md | 27 +++++++++++++ .../haproxy/haproxy-custom-configuration.yaml | 39 +++++++++++++++++++ 2 files changed, 66 insertions(+) create mode 100644 examples/customization/custom-configuration/haproxy/README.md create mode 100644 examples/customization/custom-configuration/haproxy/haproxy-custom-configuration.yaml diff --git a/examples/customization/custom-configuration/haproxy/README.md b/examples/customization/custom-configuration/haproxy/README.md new file mode 100644 index 000000000..1c0c8dd30 --- /dev/null +++ b/examples/customization/custom-configuration/haproxy/README.md @@ -0,0 +1,27 @@ +# Customize the HAProxy configuration + +This example use a [ConfigMap](https://kubernetes.io/docs/user-guide/configmap/) to customize the HAProxy configuration. + +## Prerequisites + +This document has the following prerequisites: + +* Deploy a service named `ingress-default-backend` to be used as default backend service +* Create a [TLS secret](/examples/PREREQUISITES.md#tls-certificates) named `tls-secret` to be used as default TLS certificate + +As mentioned in the deployment instructions, you MUST turn down any existing +ingress controllers before running HAProxy Ingress. + +## Customize the HAProxy configuration + +Using a [ConfigMap](https://kubernetes.io/docs/user-guide/configmap/) is possible to customize the HAProxy configuration + +For example, if we want to change the syslog-endpoint we need to create a ConfigMap: + +``` +$ kubectl create configmap haproxy-conf --from-literal=syslog-endpoint=172.17.8.101 +``` + +Please check the example `haproxy-custom-configuration.yaml` + +If the Configmap it is updated, HAProxy will be reloaded with the new configuration. diff --git a/examples/customization/custom-configuration/haproxy/haproxy-custom-configuration.yaml b/examples/customization/custom-configuration/haproxy/haproxy-custom-configuration.yaml new file mode 100644 index 000000000..694179f73 --- /dev/null +++ b/examples/customization/custom-configuration/haproxy/haproxy-custom-configuration.yaml @@ -0,0 +1,39 @@ +apiVersion: extensions/v1beta1 +kind: Deployment +metadata: + labels: + run: haproxy-ingress + name: haproxy-ingress +spec: + replicas: 1 + selector: + matchLabels: + run: haproxy-ingress + template: + metadata: + labels: + run: haproxy-ingress + spec: + containers: + - name: haproxy-ingress + image: quay.io/jcmoraisjr/haproxy-ingress + args: + - --default-backend-service=default/ingress-default-backend + - --default-ssl-certificate=default/tls-secret + - --configmap=default/haproxy-conf + ports: + - name: http + containerPort: 80 + - name: https + containerPort: 443 + - name: stat + containerPort: 1936 + env: + - name: POD_NAME + valueFrom: + fieldRef: + fieldPath: metadata.name + - name: POD_NAMESPACE + valueFrom: + fieldRef: + fieldPath: metadata.namespace