From 9b09a686a476785d9846575bf5bf7e80cfe98f09 Mon Sep 17 00:00:00 2001 From: Edward Viaene Date: Tue, 22 Nov 2016 16:29:31 +0100 Subject: [PATCH] service discovery --- deployment/helloworld-secrets.yml | 4 +-- service-discovery/database-service.yml | 11 +++++++ service-discovery/database.yml | 34 +++++++++++++++++++++ service-discovery/helloworld-db-service.yml | 11 +++++++ service-discovery/helloworld-db.yml | 33 ++++++++++++++++++++ service-discovery/secrets.yml | 10 ++++++ 6 files changed, 101 insertions(+), 2 deletions(-) create mode 100644 service-discovery/database-service.yml create mode 100644 service-discovery/database.yml create mode 100644 service-discovery/helloworld-db-service.yml create mode 100644 service-discovery/helloworld-db.yml create mode 100644 service-discovery/secrets.yml diff --git a/deployment/helloworld-secrets.yml b/deployment/helloworld-secrets.yml index 7be549a..28c5706 100644 --- a/deployment/helloworld-secrets.yml +++ b/deployment/helloworld-secrets.yml @@ -4,5 +4,5 @@ metadata: name: db-secrets type: Opaque data: - password: cm9vdA== - username: cGFzc3dvcmQ= + username: cm9vdA== + password: cGFzc3dvcmQ= diff --git a/service-discovery/database-service.yml b/service-discovery/database-service.yml new file mode 100644 index 0000000..415a79f --- /dev/null +++ b/service-discovery/database-service.yml @@ -0,0 +1,11 @@ +apiVersion: v1 +kind: Service +metadata: + name: database-service +spec: + ports: + - port: 3306 + protocol: TCP + selector: + app: database + type: NodePort diff --git a/service-discovery/database.yml b/service-discovery/database.yml new file mode 100644 index 0000000..64dc2e2 --- /dev/null +++ b/service-discovery/database.yml @@ -0,0 +1,34 @@ +apiVersion: v1 +kind: Pod +metadata: + name: database + labels: + app: database +spec: + containers: + - name: mysql + image: mysql:5.7 + ports: + - name: mysql-port + containerPort: 3306 + env: + - name: MYSQL_ROOT_PASSWORD + valueFrom: + secretKeyRef: + name: helloworld-secrets + key: rootPassword + - name: MYSQL_USER + valueFrom: + secretKeyRef: + name: helloworld-secrets + key: username + - name: MYSQL_PASSWORD + valueFrom: + secretKeyRef: + name: helloworld-secrets + key: password + - name: MYSQL_DATABASE + valueFrom: + secretKeyRef: + name: helloworld-secrets + key: database diff --git a/service-discovery/helloworld-db-service.yml b/service-discovery/helloworld-db-service.yml new file mode 100644 index 0000000..e15eab4 --- /dev/null +++ b/service-discovery/helloworld-db-service.yml @@ -0,0 +1,11 @@ +apiVersion: v1 +kind: Service +metadata: + name: helloworld-db-service +spec: + ports: + - port: 3000 + protocol: TCP + selector: + app: helloworld-db + type: NodePort diff --git a/service-discovery/helloworld-db.yml b/service-discovery/helloworld-db.yml new file mode 100644 index 0000000..e0a9dae --- /dev/null +++ b/service-discovery/helloworld-db.yml @@ -0,0 +1,33 @@ +apiVersion: extensions/v1beta1 +kind: Deployment +metadata: + name: helloworld-deployment +spec: + replicas: 3 + template: + metadata: + labels: + app: helloworld-db + spec: + containers: + - name: k8s-demo + image: wardviaene/k8s-demo + command: ["node", "index-db.js"] + ports: + - name: nodejs-port + containerPort: 3000 + env: + - name: MYSQL_HOST + value: database-service + - name: MYSQL_USER + value: root + - name: MYSQL_PASSWORD + valueFrom: + secretKeyRef: + name: helloworld-secrets + key: rootPassword + - name: MYSQL_DATABASE + valueFrom: + secretKeyRef: + name: helloworld-secrets + key: database diff --git a/service-discovery/secrets.yml b/service-discovery/secrets.yml new file mode 100644 index 0000000..4b185a8 --- /dev/null +++ b/service-discovery/secrets.yml @@ -0,0 +1,10 @@ +apiVersion: v1 +kind: Secret +metadata: + name: helloworld-secrets +type: Opaque +data: + username: aGVsbG93b3JsZA== + password: cGFzc3dvcmQ= + rootPassword: cm9vdHBhc3N3b3Jk + database: aGVsbG93b3JsZA==