如要探索 AlloyDB for PostgreSQL 或在本機開發環境中工作,您可以使用 AlloyDB Auth Proxy,透過公開 IP 位址,從筆電或本機工作站建立與 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」(叢集) 頁面。
如要查看叢集詳細資料,請按一下「Resource Name」(資源名稱) 中的叢集。
在「Instances in your cluster」(叢集中的執行個體) 中,找出要連線的執行個體。
按一下 「Instance actions」(執行個體動作),然後點選「Edit」(編輯)。
在「連線能力」部分,選取「啟用公開 IP」。
如要儲存變更,請按一下「Update instance」(更新執行個體)。
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=>