Created
September 1, 2017 12:50
-
-
Save harshal-shah/3a1bcd2316868d2f2f82d2802495dcd1 to your computer and use it in GitHub Desktop.
Kubernetes GuestBook App with NodePort
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
apiVersion: v1 | |
kind: Service | |
metadata: | |
name: redis-master | |
labels: | |
app: redis | |
tier: backend | |
role: master | |
spec: | |
ports: | |
- port: 6379 | |
targetPort: 6379 | |
selector: | |
app: redis | |
tier: backend | |
role: master | |
--- | |
apiVersion: extensions/v1beta1 | |
kind: Deployment | |
metadata: | |
name: redis-master | |
spec: | |
replicas: 1 | |
template: | |
metadata: | |
labels: | |
app: redis | |
role: master | |
tier: backend | |
spec: | |
containers: | |
- name: master | |
image: gcr.io/google_containers/redis:e2e # or just image: redis | |
resources: | |
requests: | |
cpu: 100m | |
memory: 100Mi | |
ports: | |
- containerPort: 6379 | |
--- | |
apiVersion: v1 | |
kind: Service | |
metadata: | |
name: redis-slave | |
labels: | |
app: redis | |
tier: backend | |
role: slave | |
spec: | |
ports: | |
- port: 6379 | |
selector: | |
app: redis | |
tier: backend | |
role: slave | |
--- | |
apiVersion: extensions/v1beta1 | |
kind: Deployment | |
metadata: | |
name: redis-slave | |
spec: | |
replicas: 2 | |
template: | |
metadata: | |
labels: | |
app: redis | |
role: slave | |
tier: backend | |
spec: | |
containers: | |
- name: slave | |
image: gcr.io/google_samples/gb-redisslave:v1 | |
resources: | |
requests: | |
cpu: 100m | |
memory: 100Mi | |
env: | |
- name: GET_HOSTS_FROM | |
value: dns | |
# If your cluster config does not include a dns service, then to | |
# instead access an environment variable to find the master | |
# service's host, comment out the 'value: dns' line above, and | |
# uncomment the line below: | |
# value: env | |
ports: | |
- containerPort: 6379 | |
--- | |
apiVersion: v1 | |
kind: Service | |
metadata: | |
name: frontend | |
labels: | |
app: guestbook | |
tier: frontend | |
spec: | |
# if your cluster supports it, uncomment the following to automatically create | |
# an external load-balanced IP for the frontend service. | |
type: NodePort | |
ports: | |
- port: 80 | |
nodePort: 31200 | |
selector: | |
app: guestbook | |
tier: frontend | |
--- | |
apiVersion: extensions/v1beta1 | |
kind: Deployment | |
metadata: | |
name: frontend | |
spec: | |
replicas: 3 | |
template: | |
metadata: | |
labels: | |
app: guestbook | |
tier: frontend | |
spec: | |
containers: | |
- name: php-redis | |
image: gcr.io/google-samples/gb-frontend:v4 | |
resources: | |
requests: | |
cpu: 100m | |
memory: 100Mi | |
env: | |
- name: GET_HOSTS_FROM | |
value: dns | |
# If your cluster config does not include a dns service, then to | |
# instead access environment variables to find service host | |
# info, comment out the 'value: dns' line above, and uncomment the | |
# line below: | |
# value: env | |
ports: | |
- containerPort: 80 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment