From f1a0119b222b17ce08fd2244e1682de50c89d4b0 Mon Sep 17 00:00:00 2001 From: Joao Morais Date: Wed, 10 May 2017 21:35:52 -0300 Subject: [PATCH 1/2] deploy web app as an optional step on haproxy deploy --- examples/deployment/haproxy/README.md | 28 ++++++++++++++------------- 1 file changed, 15 insertions(+), 13 deletions(-) diff --git a/examples/deployment/haproxy/README.md b/examples/deployment/haproxy/README.md index b03541e66..7ff1199fb 100644 --- a/examples/deployment/haproxy/README.md +++ b/examples/deployment/haproxy/README.md @@ -12,18 +12,8 @@ they will fight for Ingresses. This includes any cloudprovider controller. This document has also the following prerequisites: -* Deploy a [web app](/examples/PREREQUISITES.md#test-http-service) for testing * Create a [TLS secret](/examples/PREREQUISITES.md#tls-certificates) named `tls-secret` to be used as default TLS certificate - -The web app can be created as follow: - -```console -$ kubectl run http-svc \ - --image=gcr.io/google_containers/echoserver:1.3 \ - --port=8080 \ - --replicas=2 \ - --expose -``` +* Optional: deploy a [web app](/examples/PREREQUISITES.md#test-http-service) for testing Creating the TLS secret: @@ -35,6 +25,16 @@ $ kubectl create secret tls tls-secret --cert=tls.crt --key=tls.key $ rm -v tls.crt tls.key ``` +The optional web app can be created as follow: + +```console +$ kubectl run http-svc \ + --image=gcr.io/google_containers/echoserver:1.3 \ + --port=8080 \ + --replicas=1 \ + --expose +``` + ## Default backend Deploy a default backend used to serve `404 Not Found` pages: @@ -73,7 +73,9 @@ ingress-default-backend-1110790216-gqr61 1/1 Running 0 3m ^C ``` -Deploy the ingress resource of our already deployed web app: +## Testing + +From now the optional web app should be deployed. Deploy an ingress resource to expose this app: ```console $ kubectl create -f - < Date: Wed, 10 May 2017 22:01:45 -0300 Subject: [PATCH 2/2] Add configmap on deployment instructions --- examples/deployment/haproxy/README.md | 15 +++++++++++++++ examples/deployment/haproxy/haproxy-ingress.yaml | 1 + 2 files changed, 16 insertions(+) diff --git a/examples/deployment/haproxy/README.md b/examples/deployment/haproxy/README.md index 7ff1199fb..47e320f46 100644 --- a/examples/deployment/haproxy/README.md +++ b/examples/deployment/haproxy/README.md @@ -55,6 +55,21 @@ NAME READY STATUS RESTARTS AGE ingress-default-backend-1110790216-gqr61 1/1 Running 0 10s ``` +## Configmap + +Create a configmap named `haproxy-ingress`: + +```console +$ kubectl create configmap haproxy-ingress +configmap "haproxy-ingress" created +``` + +A configmap is used to provide global or default configuration like +timeouts, SSL/TLS settings, a syslog service endpoint and so on. The +configmap can be edited or replaced later in order to apply new +configuration on a running ingress controller. All supported options +are [here](https://github.com/jcmoraisjr/haproxy-ingress#configmap). + ## Controller Deploy HAProxy Ingress: diff --git a/examples/deployment/haproxy/haproxy-ingress.yaml b/examples/deployment/haproxy/haproxy-ingress.yaml index 619b2d9cc..84c661b90 100644 --- a/examples/deployment/haproxy/haproxy-ingress.yaml +++ b/examples/deployment/haproxy/haproxy-ingress.yaml @@ -20,6 +20,7 @@ spec: args: - --default-backend-service=default/ingress-default-backend - --default-ssl-certificate=default/tls-secret + - --configmap=default/haproxy-ingress ports: - name: http containerPort: 80