このページでは、パブリック 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) - Service Usage ユーザー(
roles/serviceusage.serviceUsageConsumer)
AlloyDB インスタンスでパブリック IP を有効にする
ノートパソコンから接続する最も簡単な方法は、AlloyDB インスタンスでパブリック IP を有効にすることです。インスタンスの作成時にパブリック IP を有効にすることも、既存のインスタンスを更新して有効にすることもできます。
コンソール
[クラスタ] ページに移動します。 Google Cloud
クラスタの詳細を表示するには、[リソース名] でクラスタをクリックします。
[クラスタ内のインスタンス] で、接続するインスタンス を見つけます。
[Instance actions] and then click [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 フラグを使用して、パブリック IP ネットワーク パス経由で接続するように AlloyDB Auth Proxy に指示します。
./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=>