Kubernetes多端口容器

灵雀云 发表于: 2018-11-08   最后更新时间: 2018-11-08  

如果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


您需要解锁本帖隐藏内容请: 点击这里
本帖隐藏的内容





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