使用 Auth Proxy 從 Cloud Shell 連線至 AlloyDB

如要連線至 AlloyDB for PostgreSQL 執行個體,並從預先設定的瀏覽器終端機執行 SQL 查詢,而不安裝本機用戶端工具,可以使用 Cloud Shell 和 AlloyDB 驗證 Proxy。

事前準備

  1. 在 Google Cloud 控制台的專案選取器頁面,選取或建立 Google Cloud 專案。

    前往專案選取器

  2. 請確認您已為 Google Cloud 專案啟用計費功能。驗證帳單資訊後,所有必要服務都會啟用。

  3. 確認您已為 AlloyDB 執行個體設定公開 IP。Cloud Shell 無法連線至私人 IP 位址。

必要的角色

如要使用 Auth Proxy,您的使用者帳戶必須具備下列 Identity and Access Management (IAM) 角色:

如果您沒有必要角色,請要求管理員授予角色,或按照下列步驟將角色授予使用者帳戶:

  1. 前往 Google Cloud 控制台的「IAM」(身分與存取權管理) 頁面。

    前往「IAM」(身分與存取權管理) 頁面

  2. 在主體清單中找出您的使用者帳戶。

  3. 按一下「Edit principal」(編輯主體)。

  4. 按一下 [Add another role] (新增其他角色)。

  5. 搜尋並選取「AlloyDB 用戶端」角色。

  6. 按一下「套用」。

  7. 按一下 [Add another role] (新增其他角色)。

  8. 搜尋並選取「服務使用情形消費者」角色。

  9. 按一下「套用」。

  10. 按一下 [儲存]。

連線至 AlloyDB 執行個體

Cloud Shell 環境包含驗證 Proxy (alloydb-auth-proxy) 和 PostgreSQL 互動式終端機 psql。

  1. 啟動 Cloud Shell。

    啟用 Cloud Shell

  2. 按一下「Authorize Cloud Shell」。只有在第一次使用 Cloud Shell 時,才需要執行這項操作。

  3. 在 Cloud Shell 編輯器中確認使用者身分。確認您登入的使用者帳戶具備必要的 IAM 角色。

    gcloud config list
    
  4. 取得執行個體的連線 URI:

    1. 前往 Google Cloud 控制台的「Clusters」(叢集) 頁面。

      前往叢集

    2. 選取叢集,然後找出主要執行個體。

    3. 點選「查看連線設定」。

    4. 複製連線 URI。

  5. 啟動驗證 Proxy。在 Cloud Shell 終端機中,使用複製的 URI 並指定 --public-ip 旗標:

    alloydb-auth-proxy CONNECTION_URI --public-ip
    

    更改下列內容:

    • CONNECTION_URI:從 Google Cloud 控制台複製的連線 URI。

    驗證 Proxy 會啟動,並顯示訊息,確認正在監聽 127.0.0.1:5432。

  6. 開啟新的 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。
    • POSTGRES_DATABASE:AlloyDB 資料庫名稱,通常為 postgres。
  7. 系統提示時,請輸入 PostgreSQL 使用者的密碼。

  8. 執行 SQL 查詢,驗證連線:

    SELECT now();
    
  9. 如要停止 psql,請輸入 \q。

  10. 如要停止 Cloud Shell,請輸入 exit。

  11. 如要停止驗證 Proxy,請按下 Control+c 鍵。

清除所用資源

為了避免系統向您的 Google Cloud 帳戶收取本頁面所用資源的費用,請按照下列步驟操作。

  1. 前往 Google Cloud 控制台的「Clusters」(叢集) 頁面。

    前往叢集

  2. 按一下您建立的叢集。

  3. 按一下「Delete cluster」(刪除叢集)。

  4. 在確認對話方塊中,輸入叢集 ID,然後按一下「Delete」(刪除),即可刪除叢集及其執行個體。

後續步驟