From 19b46a8a54421b8504b56b4b65628d151739b560 Mon Sep 17 00:00:00 2001 From: Brendan Burns Date: Mon, 20 Oct 2014 21:16:21 -0700 Subject: [PATCH] Update the services now that Services v2 has IP per service. --- guestbook/README.md | 15 +++++++-------- guestbook/frontend-controller.json | 5 ++++- guestbook/frontend-service.json | 5 ++++- guestbook/redis-master-service.json | 4 ++-- guestbook/redis-master.json | 4 ++-- guestbook/redis-slave-controller.json | 5 ++++- guestbook/redis-slave-service.json | 2 +- 7 files changed, 24 insertions(+), 16 deletions(-) diff --git a/guestbook/README.md b/guestbook/README.md index e71265b4..20c99b33 100644 --- a/guestbook/README.md +++ b/guestbook/README.md @@ -31,7 +31,6 @@ Use the file `examples/guestbook/redis-master.json` which describes a single pod "image": "dockerfile/redis", "ports": [{ "containerPort": 6379, - "hostPort": 6379 }] }] } @@ -85,7 +84,7 @@ The pod that you created in Step One has the label `name=redis-master`. The sele "id": "redismaster", "kind": "Service", "apiVersion": "v1beta1", - "port": 10000, + "port": 6379, "containerPort": 6379, "selector": { "name": "redis-master" @@ -99,12 +98,12 @@ to create the service with the `kubecfg` cli: $ cluster/kubecfg.sh -c examples/guestbook/redis-master-service.json create services ID Labels Selector Port ---------- ---------- ---------- ---------- -redismaster name=redis-master 10000 +redismaster name=redis-master 6379 ``` -This will cause all pods to see the redis master apparently running on localhost:10000. +This will cause all pods to see the redis master apparently running on :6379. -Once created, the service proxy on each minion is configured to set up a proxy on the specified port (in this case port 10000). +Once created, the service proxy on each minion is configured to set up a proxy on the specified port (in this case port 6379). ### Step Three: Turn up the replicated slave pods. Although the redis master is a single pod, the redis read slaves are a 'replicated' pod. In Kubernetes, a replication controller is responsible for managing multiple instances of a replicated pod. @@ -127,7 +126,7 @@ Use the file `examples/guestbook/redis-slave-controller.json` "containers": [{ "name": "slave", "image": "brendanburns/redis-slave", - "ports": [{"containerPort": 6379, "hostPort": 6380}] + "ports": [{"containerPort": 6379}] }] } }, @@ -174,7 +173,7 @@ Just like the master, we want to have a service to proxy connections to the read "id": "redisslave", "kind": "Service", "apiVersion": "v1beta1", - "port": 10001, + "port": 6379, "containerPort": 6379, "labels": { "name": "redisslave" @@ -193,7 +192,7 @@ Now that you have created the service specification, create it in your cluster w $ cluster/kubecfg.sh -c examples/guestbook/redis-slave-service.json create services ID Labels Selector Port ---------- ---------- ---------- ---------- -redisslave name=redisslave name=redisslave 10001 +redisslave name=redisslave name=redisslave 6379 ``` ### Step Five: Create the frontend pod. diff --git a/guestbook/frontend-controller.json b/guestbook/frontend-controller.json index 6a5deab9..1138f737 100644 --- a/guestbook/frontend-controller.json +++ b/guestbook/frontend-controller.json @@ -19,7 +19,10 @@ }] } }, - "labels": {"name": "frontend"} + "labels": { + "name": "frontend", + "uses": "redisslave,redis-master" + } }}, "labels": {"name": "frontend"} } diff --git a/guestbook/frontend-service.json b/guestbook/frontend-service.json index 599c3939..9e2ff3d5 100644 --- a/guestbook/frontend-service.json +++ b/guestbook/frontend-service.json @@ -2,9 +2,12 @@ "id": "frontend", "kind": "Service", "apiVersion": "v1beta1", - "port": 9998, + "port": 80, "containerPort": 80, "selector": { "name": "frontend" + }, + "labels": { + "name": "frontend" } } diff --git a/guestbook/redis-master-service.json b/guestbook/redis-master-service.json index 63e5468b..00dc3755 100644 --- a/guestbook/redis-master-service.json +++ b/guestbook/redis-master-service.json @@ -1,8 +1,8 @@ { - "id": "redismaster", + "id": "redis-master", "kind": "Service", "apiVersion": "v1beta1", - "port": 10000, + "port": 6379, "containerPort": 6379, "selector": { "name": "redis-master" diff --git a/guestbook/redis-master.json b/guestbook/redis-master.json index c1aaf9ff..62f353cb 100644 --- a/guestbook/redis-master.json +++ b/guestbook/redis-master.json @@ -1,11 +1,11 @@ { - "id": "redis-master-2", + "id": "redis-master", "kind": "Pod", "apiVersion": "v1beta1", "desiredState": { "manifest": { "version": "v1beta1", - "id": "redis-master-2", + "id": "redis-master", "containers": [{ "name": "master", "image": "dockerfile/redis", diff --git a/guestbook/redis-slave-controller.json b/guestbook/redis-slave-controller.json index 4df01373..3b77c24a 100644 --- a/guestbook/redis-slave-controller.json +++ b/guestbook/redis-slave-controller.json @@ -18,7 +18,10 @@ }] } }, - "labels": {"name": "redisslave"} + "labels": { + "name": "redisslave", + "uses": "redis-master", + } }}, "labels": {"name": "redisslave"} } diff --git a/guestbook/redis-slave-service.json b/guestbook/redis-slave-service.json index f90a9be9..b7446ee8 100644 --- a/guestbook/redis-slave-service.json +++ b/guestbook/redis-slave-service.json @@ -2,7 +2,7 @@ "id": "redisslave", "kind": "Service", "apiVersion": "v1beta1", - "port": 10001, + "port": 6379, "containerPort": 6379, "labels": { "name": "redisslave"