跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • 如何使用 k8s 对外暴露 pods 的任意端口?
未分類
13 4 月 2021

如何使用 k8s 对外暴露 pods 的任意端口?

如何使用 k8s 对外暴露 pods 的任意端口?

資深大佬 : AkideLiu 1

如何使用 k8s 在 对外暴露 pods 的任意端口?

现在想实现使用 self host kubernetes 的code-server进行 web preview,现在的用法是使用 yaml 文件里面写 services 和 ingress 进行暴露,但是 ports 是写死的,如果要打开新的端口就需要重新修改 ymal 。搜了半天也没找到办法,希望 v2 的大佬们指点一下。

example yaml:

--- apiVersion: networking.k8s.io/v1beta1 kind: Ingress metadata:   name: code-server-01   namespace: code-server-01   annotations:     kubernetes.io/ingress.class: nginx spec: # 内网   rules:   - host: code-server-01.xxxxxxx.xip.io     http:       paths:       - backend:           serviceName: code-server-01           servicePort: 80   - host: preview-code-server-01.xxxxxxx.xip.io     http:       paths:       - backend:           serviceName: code-server-01           servicePort: 5500             # 外网   - host: code-01.xxx.com     http:       paths:       - backend:           serviceName: code-server-01           servicePort: 80    - host: preview-code-01.xxx.com     http:       paths:       - backend:           serviceName: code-server-01           servicePort: 5500 --- apiVersion: v1 kind: Service metadata:  name: code-server-01  namespace: code-server-01 spec:  ports:  - port: 80    name: web    targetPort: 8080  - port: 5500    name: preview    targetPort: 5500  selector:    app: code-server-01 

期望实现:

比如说 gitpod.io 的 preview 就是根据需求打开端口

复现过程:

  1. 使用 gitpod 打开 express demo http://gitpod.io/#/https://github.com/jatins/express-hello-world
  2. 修改 express default port to 3006
  3. gitpod 会添加一个暴露 3006

如何使用 k8s 对外暴露 pods 的任意端口?

我想请教请教这个过程是如何实现的?

ps:感觉是使用了什么神奇的 ingress controller,不知道有没有开源产品

大佬有話說 (4)

  • 資深大佬 : kennylam777

    指定的 port: HostPort
    任意的 port: NodePort

    看看 ingress 的 service yaml 就學會

  • 資深大佬 : mritd

    如果是开发环境可以完全将网络打通,CNI flannel(裸机 host-gw),然后上级路由 把 pod CIDR 抛任意一台主机即可,这样在外部就可以直接访问 pod ip 了

  • 資深大佬 : jorneyr

    我们是使用网络插件,使得 Pod IP 可以外网访问。

  • 資深大佬 : jk1030

    NodePort 不行嘛

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具