kubernetes 中有更多默认命名端口吗?
More default named port in kubernetes?
在kubernetes中,我总是看到服务的定义是这样的:
---
apiVersion: v1
kind: Service
metadata:
name: random-exporter
labels:
app: random-exporter
spec:
type: ClusterIP
selector:
app: random-exporter
ports:
- port: 9800
targetPort: http
name: random-port
targetPort为http
,很人性化!
我感兴趣的是,在 kubernetes 中是否有更多命名端口,例如 http
?也许https
?
通常你指的是目标端口号。
但是您可以为每个 pod 的端口指定一个特定的名称
并在您的服务规范中引用此名称。
这将使您的服务更加清晰。
Here 你有一个例子,你在 pod 中命名你的端口。
apiVersion: v1
kind: Pod
metadata:
name: test
spec:
containers:
- name: test
ports:
- name: http
containerPort: 8080
- name: https
containerPort: 8443
在这里,您在服务 yaml 中按名称引用这些端口。
apiVersion: v1
kind: Service
metadata:
name: test-svc
spec:
ports:
- name: http
port: 80
targetPort: http
- name: https
port: 443
targetPort: https
您还可以从 kubernetes documention 中找到以下信息:
targetPort
- 要在服务所针对的 pods 上访问的端口号或名称。编号必须在 1 到 65535 的范围内。名称必须是 IANA_SVC_NAME。
如果这是一个字符串,它将在目标 Pod 的容器端口中查找为命名端口。
在kubernetes中,我总是看到服务的定义是这样的:
---
apiVersion: v1
kind: Service
metadata:
name: random-exporter
labels:
app: random-exporter
spec:
type: ClusterIP
selector:
app: random-exporter
ports:
- port: 9800
targetPort: http
name: random-port
targetPort为http
,很人性化!
我感兴趣的是,在 kubernetes 中是否有更多命名端口,例如 http
?也许https
?
通常你指的是目标端口号。 但是您可以为每个 pod 的端口指定一个特定的名称 并在您的服务规范中引用此名称。
这将使您的服务更加清晰。 Here 你有一个例子,你在 pod 中命名你的端口。
apiVersion: v1
kind: Pod
metadata:
name: test
spec:
containers:
- name: test
ports:
- name: http
containerPort: 8080
- name: https
containerPort: 8443
在这里,您在服务 yaml 中按名称引用这些端口。
apiVersion: v1
kind: Service
metadata:
name: test-svc
spec:
ports:
- name: http
port: 80
targetPort: http
- name: https
port: 443
targetPort: https
您还可以从 kubernetes documention 中找到以下信息:
targetPort
- 要在服务所针对的 pods 上访问的端口号或名称。编号必须在 1 到 65535 的范围内。名称必须是 IANA_SVC_NAME。
如果这是一个字符串,它将在目标 Pod 的容器端口中查找为命名端口。