kubectl port-forward

概要

將一個或多個本機埠轉發到 Pod。

使用資源類型/名稱 (例如 deployment/mydeployment) 來選取 Pod。如果省略資源類型,預設為 'pod'。

如果有多個 Pod 符合條件,將自動選取一個 Pod。當選取的 Pod 終止時,轉發工作階段結束,需要重新執行命令才能繼續轉發。

kubectl port-forward TYPE/NAME [options] [LOCAL_PORT:]REMOTE_PORT [...[LOCAL_PORT_N:]REMOTE_PORT_N]

範例

  # Listen on ports 5000 and 6000 locally, forwarding data to/from ports 5000 and 6000 in the pod
  kubectl port-forward pod/mypod 5000 6000
  
  # Listen on ports 5000 and 6000 locally, forwarding data to/from ports 5000 and 6000 in a pod selected by the deployment
  kubectl port-forward deployment/mydeployment 5000 6000
  
  # Listen on port 8443 locally, forwarding to the targetPort of the service's port named "https" in a pod selected by the service
  kubectl port-forward service/myservice 8443:https
  
  # Listen on port 8888 locally, forwarding to 5000 in the pod
  kubectl port-forward pod/mypod 8888:5000
  
  # Listen on port 8888 on all addresses, forwarding to 5000 in the pod
  kubectl port-forward --address 0.0.0.0 pod/mypod 8888:5000
  
  # Listen on port 8888 on localhost and selected IP, forwarding to 5000 in the pod
  kubectl port-forward --address localhost,10.19.21.23 pod/mypod 8888:5000
  
  # Listen on a random port locally, forwarding to 5000 in the pod
  kubectl port-forward pod/mypod :5000

選項

--address strings     預設值:"localhost"

要監聽的位址 (逗號分隔)。僅接受 IP 位址或 localhost 作為值。當提供 localhost 時,kubectl 將嘗試繫結到 127.0.0.1 和 ::1,如果這些位址都不可用來繫結,則會失敗。

-h, --help

port-forward 的說明

--pod-running-timeout duration     預設值:1m0s

等待至少一個 Pod 執行的時間長度 (例如 5s、2m 或 3h,必須大於零)

--as string

要模擬操作的使用者名稱。使用者可以是命名空間中的一般使用者或服務帳戶。

--as-group strings

要模擬操作的群組,可以重複此標誌以指定多個群組。

--as-uid string

要模擬操作的 UID。

--cache-dir string     預設值:"$HOME/.kube/cache"

預設快取目錄

--certificate-authority string

憑證授權單位的憑證檔案路徑

--client-certificate string

用於 TLS 的用戶端憑證檔案路徑

--client-key string

用於 TLS 的用戶端金鑰檔案路徑

--cluster string

要使用的 kubeconfig 叢集名稱

--context string

要使用的 kubeconfig 環境定義名稱

--default-not-ready-toleration-seconds int     預設值:300

指示 tolerationSeconds,用於 notReady:NoExecute 的容忍度,預設情況下會新增到每個尚未具有此容忍度的 Pod。

--default-unreachable-toleration-seconds int     預設值:300

指示 tolerationSeconds,用於 unreachable:NoExecute 的容忍度,預設情況下會新增到每個尚未具有此容忍度的 Pod。

--disable-compression

如果為 true,則選擇退出對伺服器的所有請求的回應壓縮

--insecure-skip-tls-verify

如果為 true,則不會檢查伺服器的憑證有效性。這會使您的 HTTPS 連線不安全

--kubeconfig string

用於 CLI 請求的 kubeconfig 檔案路徑。

--match-server-version

要求伺服器版本與用戶端版本相符

-n, --namespace string

如果存在,則此 CLI 請求的命名空間範圍

--password string

用於對 API 伺服器進行基本身分驗證的密碼

--profile string     預設值:"none"

要捕獲的設定檔名稱。選項包括 (none|cpu|heap|goroutine|threadcreate|block|mutex)

--profile-output string     預設值:"profile.pprof"

要將設定檔寫入的檔案名稱

--request-timeout string     預設值:"0"

在放棄單個伺服器請求之前要等待的時間長度。非零值應包含對應的時間單位 (例如 1s、2m、3h)。值為零表示請求不逾時。

-s, --server string

Kubernetes API 伺服器的位址和埠

--storage-driver-buffer-duration duration     預設值:1m0s

儲存驅動程式中的寫入將緩衝此持續時間,並作為單個交易提交到非記憶體後端

--storage-driver-db string     預設值:"cadvisor"

資料庫名稱

--storage-driver-host string     預設值:"localhost:8086"

資料庫主機:埠

--storage-driver-password string     預設值:"root"

資料庫密碼

--storage-driver-secure

使用與資料庫的安全連線

--storage-driver-table string     預設值:"stats"

資料表名稱

--storage-driver-user string     預設值:"root"

資料庫使用者名稱

--tls-server-name string

用於伺服器憑證驗證的伺服器名稱。如果未提供,則使用用於連線伺服器的主機名稱

--token string

用於對 API 伺服器進行身分驗證的 Bearer 權杖

--user string

要使用的 kubeconfig 使用者名稱

--username string

用於對 API 伺服器進行基本身分驗證的使用者名稱

--version version[=true]

--version, --version=raw 列印版本資訊並退出;--version=vX.Y.Z... 設定報告的版本

--warnings-as-errors

將從伺服器收到的警告視為錯誤,並以非零退出碼退出

另請參閱

  • kubectl - kubectl 控制 Kubernetes 叢集管理器

此頁面為自動產生。

如果您計劃回報此頁面的問題,請在您的問題描述中提及此頁面為自動產生。修正可能需要在 Kubernetes 專案的其他地方進行。

上次修改時間 2024年8月19日下午 5:14 PST: 更新 kubectl v1.31 參考資料 (59df28c340)