kubectl proxy

摘要

在 localhost 與 Kubernetes API 伺服器之間建立 Proxy 伺服器或應用程式層級閘道。它也允許透過指定的 HTTP 路徑提供靜態內容。所有傳入的資料都透過一個埠進入,並轉發到遠端 Kubernetes API 伺服器埠,但符合靜態內容路徑的路徑除外。

kubectl proxy [--port=PORT] [--www=static-dir] [--www-prefix=prefix] [--api-prefix=prefix]

範例

  # To proxy all of the Kubernetes API and nothing else
  kubectl proxy --api-prefix=/
  
  # To proxy only part of the Kubernetes API and also some static files
  # You can get pods info with 'curl localhost:8001/api/v1/pods'
  kubectl proxy --www=/my/files --www-prefix=/static/ --api-prefix=/api/
  
  # To proxy the entire Kubernetes API at a different root
  # You can get pods info with 'curl localhost:8001/custom/api/v1/pods'
  kubectl proxy --api-prefix=/custom/
  
  # Run a proxy to the Kubernetes API server on port 8011, serving static content from ./local/www/
  kubectl proxy --port=8011 --www=./local/www/
  
  # Run a proxy to the Kubernetes API server on an arbitrary local port
  # The chosen port for the server will be output to stdout
  kubectl proxy --port=0
  
  # Run a proxy to the Kubernetes API server, changing the API prefix to k8s-api
  # This makes e.g. the pods API available at localhost:8001/k8s-api/v1/pods/
  kubectl proxy --api-prefix=/k8s-api

選項

--accept-hosts string     預設值: "^localhost$,^127\.0\.0\.1$,^\[::1\]$"

Proxy 應接受主機的正規表示式。

--accept-paths string     預設值: "^.*"

Proxy 應接受路徑的正規表示式。

--address string     預設值: "127.0.0.1"

要服務的 IP 位址。

--api-prefix string     預設值: "/"

要在其下服務 Proxy API 的前綴。

--append-server-path

如果為 true,則啟用將 kube context 伺服器路徑自動附加到每個請求。

--disable-filter

如果為 true,則停用 Proxy 中的請求篩選。當與可存取的埠搭配使用時,這很危險,可能會讓您容易受到 XSRF 攻擊。

-h, --help

proxy 的說明

--keepalive duration

keepalive 指定作用中網路連線的 keep-alive 期間。設定為 0 以停用 keepalive。

-p, --port int     預設值: 8001

要在其上執行 Proxy 的埠。設定為 0 以選取隨機埠。

--reject-methods string     預設值: "^$"

Proxy 應拒絕的 HTTP 方法的正規表示式 (範例 --reject-methods='POST,PUT,PATCH')。

--reject-paths string     預設值: "^/api/.*/pods/.*/exec,
^/api/.*/pods/.*/attach"

Proxy 應拒絕路徑的正規表示式。此處指定的路徑即使被 --accept-paths 接受也會被拒絕。

-u, --unix-socket string

在其上執行 Proxy 的 Unix Socket。

-w, --www string

也從指定前綴下的給定目錄提供靜態檔案。

-P, --www-prefix string     預設值: "/static/"

如果指定靜態檔案目錄,則為服務靜態檔案的前綴。

--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 context 名稱

--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:Update kubectl reference for v1.31 (59df28c340)