Merge pull request #44040 from cruwe/docu_cluster_addons_registry_fix_selector

Automatic merge from submit-queue

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.



**What this PR does / why we need it**:

Patch fixes (cf. above) erroneous documentation.

**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes #
Fixes #43986 

**Special notes for your reviewer**:

Thank you for your consideration.

**Release note**:

```release-note
```
pull/6/head
Kubernetes Submit Queue 2017-04-19 01:49:20 -07:00 committed by GitHub
commit 605294108f
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