搜尋

首頁  >  問答  >  主體

GKE: 如何在透過堡壘主機進行連接埠轉送後斷開與 Pod 的連接

<p>我正在使用本機與在Kubernetes中部署的Pod中的資料庫進行工作。要連接到它,首先需要連接到堡壘主機VM。 </p> <p>基本上,這是一個雙重SSH隧道:將連接埠3306映射到堡壘主機VM的連接埠3306,然後通過本地主機的3306連接埠。 </p> <pre class="brush:php;toolbar:false;">gcloud beta compute ssh my-bastion-host --project my-gcp-project --zone us-west1-b --command "kubectl -n mynamespace port-forward app-mysqldb-12345-abcde 3306" -- -L3306:127.0.0.1:3306</pre> <p>然而,當我終止指令時,VM和mysql pod之間的連線並沒有終止,我需要自動執行:首先,在堡壘主機上執行以下指令:</p> <pre class="brush:php;toolbar:false;">ps -ef|grep port-forward</pre> <p>找到進程編號PROCESS_NUMBER,然後執行下列指令:</p> <pre class="brush:php;toolbar:false;">echo "kill -9 <PROCESS_NUMBER></pre> <p>終止連線。 </p> <p>有沒有方法可以在終止<code>gcloud beta compute ssh</code>時自動關閉堡壘主機與mysql pod之間的連線? </p>
P粉775723722P粉775723722448 天前536

全部回覆(1)我來回復

  • P粉092778585

    P粉0927785852023-08-30 11:59:53

    嘗試這個:

    gcloud beta compute ssh my-bastion-host --project my-gcp-project --zone us-west1-b --command "bash -c 'kubectl -n mynamespace port-forward app-mysqldb-12345-abcde 3306'; kill -9 $(pgrep -f port-forward)" -- -L3306:127.0.0.1:3306

    回覆
    0
  • 取消回覆