Kubernetes多端口容器

如果app需要开放两个端口,有两种办法:

  • 第一种是起2个service,每个service开放一个端口
  • 第二种是同一个service开放2个端口

明明可以用一个service搞定,为什么还要起两个service呢?

  • 让service更清晰,一个service负责一种服务。

例如,有个app,同时开发9200与9300端口。9200提供web服务,9300提供api。那么,用两个service,分别命名为app-httpapp-api,分别暴露92009300端口,分别为nodePortclusterIP方式,这样层次清晰。

同一个service开2个端口

一般我们只有一个端口的时候,在service的yaml文件:

ports:
  - nodePort: 8482
    port: 8080
    protocol: TCP
    targetPort: 8080

而如果你想开两个端口,直接复制粘贴可不行,k8s会提示你必须要加上name。所以,如果要开多端口,要为每个port都指定一个name,如:

ports:
  - name: http
    nodePort: 8482
    port: 8080
    protocol: TCP
    targetPort: 8080





发表于: 1月前   最后更新时间: 1月前   游览量:88
上一条: kubernetes自动补全命令
下一条: Kubernetes滚动升级

评论…


  • 评论…
    • in this conversation