issue_43986: fix docu with non-functional proxy

The documentation defines a couple of replication-controller and service
to provision a docker-registry somewhere on the cluster and have it
available by the name viz. A record of
kube-registry.default.svc.<clustername>.

On each node, http-proxies are placed as daemon-set with the
kube-registry DNS name set as upstream, so that the registry is
available on each host under endpoint localhost:5000

Because in the documentation, selector-identifiers are the same for
"upstream" registry and proxies, the proxies themselves register under
the service intended for the upstream and now have themselves as
upstream under a different port, where connection attempts result in
"connection refused".

Adapting selectors to be unique as in this patch fixes the problem.
	modified:   cluster/addons/registry/README.md
	modified:   cluster/addons/registry/registry-rc.yaml
	modified:   cluster/addons/registry/registry-svc.yaml
This commit is contained in:
Christopher J. Ruwe 2017-04-04 14:49:55 +02:00
parent 46d4c621a8
commit d2c66d5909
3 changed files with 18 additions and 12 deletions

View File

@ -105,18 +105,18 @@ metadata:
name: kube-registry-v0
namespace: kube-system
labels:
k8s-app: kube-registry
k8s-app: kube-registry-upstream
version: v0
kubernetes.io/cluster-service: "true"
spec:
replicas: 1
selector:
k8s-app: kube-registry
k8s-app: kube-registry-upstream
version: v0
template:
metadata:
labels:
k8s-app: kube-registry
k8s-app: kube-registry-upstream
version: v0
kubernetes.io/cluster-service: "true"
spec:
@ -158,12 +158,12 @@ metadata:
name: kube-registry
namespace: kube-system
labels:
k8s-app: kube-registry
k8s-app: kube-registry-upstream
kubernetes.io/cluster-service: "true"
kubernetes.io/name: "KubeRegistry"
spec:
selector:
k8s-app: kube-registry
k8s-app: kube-registry-upstream
ports:
- name: registry
port: 5000
@ -185,14 +185,14 @@ metadata:
name: kube-registry-proxy
namespace: kube-system
labels:
k8s-app: kube-registry
k8s-app: kube-registry-proxy
kubernetes.io/cluster-service: "true"
version: v0.4
spec:
template:
metadata:
labels:
k8s-app: kube-registry
k8s-app: kube-registry-proxy
kubernetes.io/name: "kube-registry-proxy"
kubernetes.io/cluster-service: "true"
version: v0.4
@ -216,6 +216,12 @@ spec:
```
<!-- END MUNGE: EXAMPLE ../../saltbase/salt/kube-registry-proxy/kube-registry-proxy.yaml -->
When modifying replication-controller, service and daemon-set defintions, take
care to ensure _unique_ identifiers for the rc-svc couple and the daemon-set.
Failing to do so will have register the localhost proxy daemon-sets to the
upstream service. As a result they will then try to proxy themselves, which
will, for obvious reasons, not work.
This ensures that port 5000 on each node is directed to the registry `Service`.
You should be able to verify that it is running by hitting port 5000 with a web
browser and getting a 404 error:

View File

@ -4,19 +4,19 @@ metadata:
name: kube-registry-v0
namespace: kube-system
labels:
k8s-app: kube-registry
k8s-app: kube-registry-upstream
version: v0
kubernetes.io/cluster-service: "true"
addonmanager.kubernetes.io/mode: Reconcile
spec:
replicas: 1
selector:
k8s-app: kube-registry
k8s-app: kube-registry-upstream
version: v0
template:
metadata:
labels:
k8s-app: kube-registry
k8s-app: kube-registry-upstream
version: v0
kubernetes.io/cluster-service: "true"
spec:

View File

@ -4,13 +4,13 @@ metadata:
name: kube-registry
namespace: kube-system
labels:
k8s-app: kube-registry
k8s-app: kube-registry-upstream
kubernetes.io/cluster-service: "true"
addonmanager.kubernetes.io/mode: Reconcile
kubernetes.io/name: "KubeRegistry"
spec:
selector:
k8s-app: kube-registry
k8s-app: kube-registry-upstream
ports:
- name: registry
port: 5000