生成Service yaml(kubectl expose)

生成Service yaml(kubectl expose)

Content #

Service生成不用命令 kubectl create,而是 kubectl expose。 kubectl expose 支持从 Pod、Deployment、DaemonSet 创建服务。

使用 kubectl expose 指令时还需要用参数 –port 和 –target-port 分别指定映射端口和容器端口,而 Service 自己的 IP 地址和后端 Pod 的 IP 地址可以自动生成。

export out="--dry-run=client -o yaml"
kubectl expose deploy ngx-dep --port=80 --target-port=80 $out

生成的 Service YAML 大概是这样的:

apiVersion: v1
kind: Service
metadata:
  name: ngx-svc

spec:
  selector:
    app: ngx-dep

  ports:
  - port: 80
    targetPort: 80
    protocol: TCP

Viewpoints #

From #

20|Service:微服务架构的应对之道