本頁面說明如何透過公開 IP 位址,使用 AlloyDB Auth Proxy,從筆電或本機安全連線至 AlloyDB for PostgreSQL 執行個體。
探索 AlloyDB 或想設定開發環境時,從筆記型電腦連線會很有幫助。
事前準備
透過筆電連線前,請務必完成下列步驟:
- 安裝並初始化 gcloud CLI。使用 gcloud CLI 驗證指令,並擷取執行個體詳細資料。
- 安裝
psql指令列工具。使用psql用戶端工具做為 PostgreSQL 終端機資料庫用戶端。 - 下載 Auth Proxy 用戶端。 使用 Auth Proxy 用戶端,為 AlloyDB 執行個體建立安全通道。
- 設定必要角色。
必要的角色
如要從筆電連線,請確認您的 Identity and Access Management (IAM) 主體 (使用者帳戶或服務帳戶) 具備下列必要預先定義角色:
- AlloyDB 用戶端 (
roles/alloydb.client) - 服務使用情形消費者 (
roles/serviceusage.serviceUsageConsumer)
在 AlloyDB 執行個體上啟用公開 IP
如要從筆電連線,最簡單的方法是在 AlloyDB 執行個體上啟用公開 IP。您可以在建立執行個體時啟用公開 IP,也可以更新現有執行個體來啟用。
控制台
前往 Google Cloud 控制台的「Clusters」(叢集) 頁面。
如要查看叢集詳細資料,請按一下「資源名稱」中的叢集。
在「叢集中的執行個體」中,找出要連線的執行個體。
依序點選 「Instance actions」(執行個體動作) 和「Edit」(編輯)。
在「連線」部分,選取「啟用公開 IP」。
如要儲存變更,請按一下「更新執行個體」。
gcloud
使用 gcloud alloydb instances
update 指令在執行個體上啟用公開 IP:
gcloud alloydb instances update INSTANCE_ID \
--cluster=CLUSTER_ID \
--region=REGION_ID \
--assign-inbound-public-ip=ASSIGN_IPV4
更改下列內容:
INSTANCE_ID:AlloyDB 執行個體的 ID。CLUSTER_ID:叢集 ID。REGION_ID:叢集所在的區域。
擷取執行個體連線 URI
啟動 Auth Proxy 用戶端時,您必須使用執行個體的專屬連線 URI 識別執行個體。在筆電終端機上使用 gcloud CLI alloydb instances describe 指令,擷取連線 URI。
gcloud alloydb instances describe INSTANCE_ID \
--cluster=CLUSTER_ID \
--region=REGION_ID \
--format="value(name)"
指令會傳回連線 URI,格式類似以下內容:
projects/myproject/locations/us-central1/clusters/mycluster/instances/myprimary
使用公開 IP 啟動 AlloyDB Auth Proxy
您已取得執行個體連線 URI,現在可以使用筆電終端機啟動 Auth Proxy 用戶端。使用 --public-ip 標記,指示 AlloyDB Auth Proxy 透過公開 IP 網路路徑連線。
./alloydb-auth-proxy CONNECTION_URI --public-ip
將 CONNECTION_URI 替換為您在「擷取執行個體連線 URI」中取得的執行個體連線 URI。
AlloyDB Auth Proxy 成功啟動後,終端機會顯示 AlloyDB Auth Proxy 正在監聽通訊埠 5432 的本機 TCP 連線:
Authorizing with Application Default Credentials
Listening on 127.0.0.1:5432
The proxy has started successfully and is ready for new connections!
使用 psql 連線至資料庫
AlloyDB Auth Proxy 執行期間,請在筆電上開啟另一個終端機視窗,連線至資料庫。
執行 psql 用戶端工具,以本機接聽程式位址 127.0.0.1 和通訊埠 5432 為目標:
psql -h 127.0.0.1 -U postgres -d postgres
系統顯示提示時,請輸入 postgres 資料庫使用者的密碼。
psql 指令會連線至 Auth Proxy 用戶端,該用戶端會透過安全通道將連線轉送至 AlloyDB 執行個體。psql 指令會顯示提示,確認筆電已安全連線至 AlloyDB 執行個體:
psql (18.2 (Debian 18.2-1), server 16.11)
Type "help" for help.
postgres=>