Skip to content

Zeroplex 生活隨筆

軟體開發、伺服器和生活瑣事

小 縮小字型大小。 中 重設字型大小。 大 放大字型大小。

透過 kubernetes port-forward 連線至特定的 pod

Posted on 2022 年 9 月 29 日2022 年 9 月 29 日 By 日落 在〈透過 kubernetes port-forward 連線至特定的 pod〉中尚無留言

在 deployment 完成後,可能會建立多個 pods,這些 pods 預設在 node 的 private ip 中,不會與 host 連線。正式的作法,是建立 NodePort service,或是 load balancer 轉送資料到 pods。

若需要暫時與其中一個 pod 連線,可以透過 kubernetes 的 port-forward 功能轉送資料。

先確認欲連線的 pod IP address:

$ kubectl get pods -o wide 
NAME                        READY   STATUS    RESTARTS   AGE    IP           NODE       NOMINATED NODE   READINESS GATES
my-nginx-7d76cf4997-68rmh   1/1     Running   0          19m    172.17.0.6   minikube   <none>           <none>
my-nginx-7d76cf4997-d5lxt   1/1     Running   0          19m    172.17.0.5   minikube   <none>           <none>
my-nginx-7d76cf4997-q6rx4   1/1     Running   0          19m    172.17.0.4   minikube   <none>           <none>

上表中,可以看到 pod 的 IP 都被指定在 172.17.0.x 下。這邊假設我們要在 127.0.0.1 的 port 8080 轉送到 172.17.0.4 這個 pod 的 port 80:

$kubectl port-forward pods/my-nginx-7d76cf4997-q6rx4 8080:80
Forwarding from 127.0.0.1:8080 -> 80
Forwarding from [::1]:8080 -> 80

顯示 port-forwarding 狀態、且指令仍在執行沒有中斷,表示 port-forwarding 建立成功。接下來就可以從 127.0.0.1:8080 送資料到 pod 中 (範例中 pod 中為 nginx):

$ curl http://127.0.0.1:8080
<html><body><p> Hello World, kubernetes </p></body></html>

我明明應該要寫 code 的啊,為什麼現在都在寫 config …..

Tags:Kubernetes

文章導覽

Previous Post: docker container 錯誤:entrypoint permission denied
Next Post: TeamViewer 替代方案

發佈留言 取消回覆

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *


其他

關於我  (About me)

小額贊助

  文章 RSS Feed

  留言 RSS Feed

Apache AWS Bash C/C++ Docker FreeBSD GCP Git Google Java JavaScript Laravel Linux Microsoft MSSQL MySQL Nginx PHP PHPUnit PostgreSQL Python Qt Ubuntu Unix Vim Web Windows WordPress XD 作業系統 分享 好站推薦 專題 攝影 新奇搞笑 新聞 旅遊 生活雜記 程式設計 網路架站 網頁設計 資訊學習 資訊安全 遊戲 音樂


創用 CC 授權條款
本著作係採用創用 CC 姓名標示-相同方式分享 4.0 國際 授權條款授權.