使用 Auth Proxy 從 Cloud Shell 連線至 AlloyDB
瞭解如何使用 AlloyDB Auth Proxy,從 Cloud Shell 終端機安全連線至 AlloyDB for PostgreSQL 執行個體。如果您是新手,想使用預先設定的簡單環境連線至執行個體,並測試基本 SQL 查詢,這份快速入門導覽非常適合您。
事前準備
在 Google Cloud 控制台的專案選擇器頁面中,選取或建立 Google Cloud 專案。
請確認您已為 Google Cloud 專案啟用計費功能。驗證帳單可啟用所有必要服務。
請確認您已為公開 IP 設定 AlloyDB 執行個體。 Cloud Shell 無法連線至私人 IP 位址。
必要的角色
如要使用 Auth Proxy,您的使用者帳戶必須具備下列身分與存取權管理 (IAM) 角色:
AlloyDB Client(roles/alloydb.client)Service Usage Consumer(roles/serviceusage.serviceUsageConsumer)
如果沒有必要角色,請要求管理員授予角色,或按照下列步驟將角色授予使用者帳戶。
前往 Google Cloud 控制台的「IAM」(身分與存取權管理) 頁面。
在主體清單中找出您的使用者帳戶。
按一下「編輯主體」。
按一下 [Add another role] (新增其他角色)。
搜尋並選取「AlloyDB Client」角色。
按一下「套用」。
按一下 [Add another role] (新增其他角色)。
搜尋並選取「服務使用情形消費者」角色。
按一下「套用」。
按一下 [儲存]。
連線至 AlloyDB 執行個體
Cloud Shell 環境包含驗證 Proxy (alloydb-auth-proxy) 和 PostgreSQL 互動式終端機 psql。
啟動 Cloud Shell。
按一下「Authorize Cloud Shell」(授權 Cloud Shell)。您只需要在第一次使用 Cloud Shell 時執行這項操作。
在 Cloud Shell 編輯器中確認使用者身分。確認您登入的使用者帳戶具有必要 IAM 角色。
gcloud config list取得執行個體的連線 URI。
前往 Google Cloud 控制台的「Clusters」(叢集) 頁面。
選取叢集並找出主要執行個體。
按一下「查看連線設定」。
複製「連線 URI」。
啟動 Auth Proxy。在 Cloud Shell 終端機中,使用複製的 URI 並指定
--public-ip旗標。alloydb-auth-proxy CONNECTION_URI --public-ip更改下列內容:
CONNECTION_URI:從 Google Cloud 控制台複製的連線 URI。
驗證 Proxy 會啟動,並顯示訊息,確認 Proxy 正在
127.0.0.1:5432上接聽。開啟新的 Cloud Shell 分頁,並使用 psql 連線至資料庫。
psql "host=localhost user=POSTGRES_USERNAME dbname=POSTGRES_DATABASE port=5432"如要在現有的 Cloud Shell 視窗中開啟新的終端機窗格,請按下 Control+b+",或點選
「Add」(新增)。這樣一來,您就能在一個窗格中執行驗證 Proxy,同時在第二個窗格中執行連線指令。如要在窗格之間切換,請按下 Control + b +keyboard_arrow_up 或 Control + b +keyboard_arrow_down。
更改下列內容:
POSTGRES_USERNAME:您的 AlloyDB 使用者,通常為postgres。- :AlloyDB 資料庫名稱,通常為
postgres。POSTGRES_DATABASE
系統顯示提示時,請輸入 PostgreSQL 使用者的密碼。
執行 SQL 查詢,驗證連線。
SELECT now();如要停止 psql,請輸入
\q。如要停止 Cloud Shell,請輸入
exit。如要停止驗證 Proxy,請輸入 Control+c。
清除所用資源
為了避免系統向您的 Google Cloud 帳戶收取本頁面所用資源的費用,請按照下列步驟操作。
前往 Google Cloud 控制台的「Clusters」(叢集) 頁面。
按一下您建立的叢集。
按一下「刪除叢集」。
在確認對話方塊中輸入叢集 ID,然後按一下「刪除」,即可刪除叢集和執行個體。