Auth Proxy を使用して Cloud Shell から AlloyDB に接続する
AlloyDB Auth Proxy を使用して、Cloud Shell ターミナルから AlloyDB for PostgreSQL インスタンスへの安全な接続を確立する方法について説明します。このクイックスタートは、インスタンスに接続して基本的な SQL クエリをテストするための、シンプルな事前構成済みの環境を必要とする新規ユーザーに適しています。
始める前に
Google Cloud コンソールのプロジェクト選択ページで、 Google Cloud プロジェクトを選択または作成します。
Google Cloud プロジェクトで課金が有効になっていることを確認します。課金を確認すると、必要なサービスがすべて有効になります。
AlloyDB インスタンスをパブリック IP 用に構成していることを確認します。Cloud Shell はプライベート IP アドレスには接続できません。
必要なロール
Auth Proxy を使用するには、ユーザー アカウントに次の Identity and Access Management(IAM)ロールが必要です。
AlloyDB Client(roles/alloydb.client)Service Usage Consumer(roles/serviceusage.serviceUsageConsumer)
必要なロールがない場合は、管理者にロールの付与を依頼するか、次の手順に沿ってユーザー アカウントにロールを付与します。
Google Cloud コンソールで、[IAM] ページに移動します。
プリンシパルのリストで目的のユーザー アカウントを探します。
[プリンシパルを編集します] をクリックします。
[別のロールを追加] をクリックします。
[AlloyDB クライアント] ロールを検索して選択します。
[適用] をクリックします。
[別のロールを追加] をクリックします。
[Service Usage ユーザー] ロールを検索して選択します。
[適用] をクリックします。
[保存] をクリックします。
AlloyDB インスタンスに接続する
Cloud Shell 環境には、Auth Proxy(alloydb-auth-proxy)と PostgreSQL のインタラクティブ ターミナルである psql が含まれています。
Cloud Shell をアクティブにします。
Cloud Shell の [承認] をクリックします。この操作は、Cloud Shell を初めて使用する場合にのみ必要です。
Cloud Shell エディタでユーザー ID を確認します。必要な IAM ロールを持つユーザー アカウントでログインしていることを確認します。
gcloud config listインスタンスの接続 URI を取得します。
Google Cloud コンソールで、[クラスタ] ページに移動します。
クラスタを選択し、プライマリ インスタンスを見つけます。
[接続構成を表示] をクリックします。
接続 URI をコピーします。
Auth Proxy を起動します。Cloud Shell ターミナルで、コピーした URI を使用して
--public-ipフラグを指定します。alloydb-auth-proxy CONNECTION_URI --public-ip次のように置き換えます。
CONNECTION_URI: Google Cloud コンソールからコピーした接続 URI。
Auth Proxy が起動し、
127.0.0.1:5432でリッスンしていることを確認するメッセージが表示されます。新しい Cloud Shell タブを開き、psql を使用してデータベースに接続します。
psql "host=localhost user=POSTGRES_USERNAME dbname=POSTGRES_DATABASE port=5432"既存の Cloud Shell ウィンドウで新しいターミナル ペインを開くには、Ctrl+B+" キーを押すか、[
追加] をクリックします。これにより、Auth Proxy を 1 つ目のペインで実行したまま、2 つ目のペインで接続コマンドを実行できます。ペインを切り替えるには、Ctrl+B+↑ キーまたは Ctrl+B+↓ キーを押します。
次のように置き換えます。
POSTGRES_USERNAME: AlloyDB ユーザー(通常はpostgres)。POSTGRES_DATABASE: AlloyDB データベース名(通常はpostgres)。
プロンプトが表示されたら、PostgreSQL ユーザーのパスワードを入力します。
SQL クエリを実行して接続を確認します。
SELECT now();psql を停止するには、「
\q」と入力します。Cloud Shell を停止するには、「
exit」と入力します。Auth Proxy を停止するには、Ctrl+C キーを押します。
クリーンアップ
このページで使用したリソースについて Google Cloud アカウントに課金されないようにするには、次の操作を行います。
Google Cloud コンソールで、[クラスタ] ページに移動します。
作成したクラスタをクリックします。
[クラスタを削除] をクリックします。
確認ダイアログでクラスタの ID を入力し、[削除] をクリックして、クラスタとそのインスタンスを削除します。
次のステップ
- その他の AlloyDB への接続方法を確認する。