设置
- 我有一个联邦 k8s 集群,每个集群都有 master 和 worker。
- 在联合中,每个集群都有一个不同的域来访问镜像注册表。(例如 myregistry-1、myregistry-2)。
- 换句话说,每个集群都有自己的注册表。
问题
- 我不想更改每个集群的域。基本上,我想创建一个与该集群内部的每个内部注册表匹配的公共端点。
示例:所有集群上的以下部署。
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx-deployment
labels:
app: nginx
spec:
replicas: 3
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: harbor.default:5000/nginx:1.14.2
ports:
- containerPort: 80
我尝试实现“没有选择器的服务”并创建了一个端点并更新了 deployment.yaml 但没有奏效。
港口.yaml
apiVersion: v1
kind: Service
metadata:
name: harbor-service
spec:
ports:
- protocol: TCP
port: 5000
targetPort: 5000
港口端点.yaml
apiVersion: v1
kind: Endpoints
metadata:
name: harbor-service
subsets:
- addresses:
- ip: <INTERNAL_IP_OF_REGISTRY>
ports:
- port: 5000