Rumah  >  Soal Jawab  >  teks badan

GKE: Cara memutuskan sambungan daripada pod selepas port forwarding melalui hos benteng

<p>Saya menggunakan mesin tempatan untuk bekerja dengan pangkalan data dalam pod yang digunakan dalam Kubernetes. Untuk menyambung kepadanya, anda perlu menyambung ke VM hos benteng terlebih dahulu. </p> <p>Pada asasnya, ini ialah terowong SSH berganda: petakan port 3306 ke port VM hos benteng 3306, dan kemudian melalui port 3306 localhost. </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>Walau bagaimanapun, apabila saya menamatkan arahan, sambungan antara VM dan mysql pod tidak ditamatkan, saya perlu melakukannya secara automatik: Mula-mula, laksanakan arahan berikut pada hos benteng: </p> <pre class="brush:php;toolbar:false;">ps -ef|grep port-forward</pre> <p>Cari nombor proses PROCESS_NUMBER, dan kemudian laksanakan arahan berikut: </p> <pre class="brush:php;toolbar:false;">gema "bunuh -9 <PROCESS_NUMBER></pre> <p>Tamatkan sambungan. </p> <p>Adakah terdapat cara untuk menutup sambungan secara automatik antara hos benteng dan pod mysql apabila menamatkan <code>gcloud beta compute ssh</code>? </p>
P粉775723722P粉775723722418 hari yang lalu506

membalas semua(1)saya akan balas

  • P粉092778585

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

    Cuba ini:

    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

    balas
    0
  • Batalbalas