このページでは、パブリック IP を使用して AlloyDB for PostgreSQL で提供されているデータベースへの接続方法について説明します。AlloyDB は、2 つの異なるオプションで、インバウンド接続とアウトバウンド接続の両方をサポートしています。
インバウンド接続にパブリック IPv4 アドレスを使用するように AlloyDB インスタンスを構成し、必要に応じて、特定の外部 IP アドレスまたはアドレス範囲(承認済み外部ネットワーク)からの接続を受け入れることができます。AlloyDB Language Connectors または AlloyDB Auth Proxy を使用してインスタンスに接続する場合、承認済みネットワークは必要ありません。
これらの承認済みネットワークは、パブリック IP を使用している場合にのみ使用できます。承認済みの外部ネットワークとしてプライベート ネットワークを指定することはできません。
AlloyDB は、インスタンスでアウトバウンド パブリック IP を有効にすると、アウトバウンド接続をサポートします。アウトバウンド接続は、外部ソースから AlloyDB にデータベースを移行する場合などに便利です。
AlloyDB インスタンスを作成する
パブリック IP を持つインスタンスを作成するには、次の操作を行います。
コンソール
[クラスタ] ページに移動します。
[リソース名] 列でクラスタをクリックします。
[概要] ページで [クラスタ内のインスタンス] に移動し、[プライマリ インスタンスを作成] をクリックします。
プライマリ インスタンスを構成します。
- [インスタンス ID] フィールドに、プライマリ インスタンスの ID を入力します。
- [ゾーンの可用性] で、次のいずれかのオプションを選択します。
- 自動フェイルオーバーを備えた高可用性の本番環境インスタンスを作成するには、[複数のゾーン(高可用性)] を選択します。
- 高可用性が不要である基本的なインスタンスを作成するには、[シングルゾーン] を選択します。
- マシンタイプを選択します。
- [接続] で [パブリック IP を有効にする] を選択し、インバウンド接続をサポートします。
- 省略可: アウトバウンド接続を追加するには、[アウトバウンド パブリック IP アドレス] で [アウトバウンド パブリック IP を有効にする] を選択します。
- 省略可: インスタンスで SSL またはコネクタの要件を構成するには、[詳細構成オプション] を開いて、次の操作を行います。
- デフォルトでは、AlloyDB インスタンスではすべての接続で SSL 暗号化を使用する必要があります。SSL 以外の接続を許可するには、[SSL 接続のみ許可] チェックボックスをオフにします。
- インスタンスへのすべてのデータベース接続で AlloyDB Auth Proxy または Google が提供する安全なコネクタ ライブラリを使用するようにするには、[コネクタを必須にする] を選択します。
- 省略可: 特定の IP アドレスへの直接接続を制限するには、CIDR 範囲のカンマ区切りリストを追加します。
- [承認済み外部ネットワーク] で、CIDR 範囲のカンマ区切りリストを入力します。CIDR 範囲ごとに、CIDR ブロック(
64.233.160.0/16
など)を入力します。潜在的な攻撃対象領域を最小限に抑えるため、アドレスのリストをできるだけ小さくします。
- [承認済み外部ネットワーク] で、CIDR 範囲のカンマ区切りリストを入力します。CIDR 範囲ごとに、CIDR ブロック(
- [インスタンスを作成] をクリックします。
gcloud
gcloud CLI を使用するには、Google Cloud CLI をインストールして初期化するか、Cloud Shell を使用します。
他のインスタンス タイプの作成の詳細については、リードプール インスタンスを作成するとセカンダリ インスタンスを作成するをご覧ください。
gcloud alloydb instances create
コマンドを使用して、インスタンスを作成します。
gcloud alloydb instances create INSTANCE_ID \
--instance-type=PRIMARY \
--cpu-count=CPU_COUNT \
--region=REGION_ID \
--cluster=CLUSTER_ID \
--project=PROJECT_ID \
--assign-inbound-public-ip=ASSIGN_IPV4
次のように置き換えます。
INSTANCE_ID
: 作成するインスタンスの ID。英小文字、数字、ハイフンを使用できますが、先頭は英小文字にする必要があります。CPU_COUNT
: インスタンスに必要な vCPU の数。有効な値は次のとおりです。2
: 2 vCPU、16 GB RAM4
: 4 vCPU、32 GB RAM8
: 8 vCPU、64 GB RAM16
: 16 vCPU、128 GB RAM32
: 32 vCPU、256 GB RAM64
: 64 vCPU、512 GB RAM96
: 96 vCPU、768 GB RAM128
: 128 vCPU、864 GB RAM
REGION_ID
: インスタンスを配置するリージョン。CLUSTER_ID
: 前に作成したクラスタの ID。
省略可: 承認済み外部ネットワークを追加する
特定の IP アドレスへの直接接続を制限する場合は、CIDR 範囲のカンマ区切りリストを追加します。
gcloud alloydb instances create INSTANCE_ID \
--instance-type=PRIMARY \
--cpu-count=CPU_COUNT \
--region=REGION_ID \
--cluster=CLUSTER_ID \
--project=PROJECT_ID \
--assign-inbound-public-ip=ASSIGN_IPV4 \
--authorized-external-networks=CIDR_RANGE1,CIDR_RANGE2,...
次のように置き換えます。
CIDR_RANGE
: CIDR ブロックのカンマ区切りリスト(64.233.160.0/16
など)。潜在的な攻撃対象領域を最小限に抑えるため、アドレスのリストをできるだけ小さくします。
省略可: アウトバウンド接続を追加する
--outbound-public-ip
フラグを追加して、アウトバウンド パブリック IP アドレスを有効にします。アウトバウンド パブリック IP を有効にできるのは、プライマリ インスタンスとセカンダリ インスタンスのみです。
gcloud alloydb instances create INSTANCE_ID \
--instance-type=PRIMARY \
--cpu-count=CPU_COUNT \
--region=REGION_ID \
--cluster=CLUSTER_ID \
--project=PROJECT_ID \
--assign-inbound-public-ip=ASSIGN_IPV4
--outbound-public-ip
インスタンスでパブリック IP を有効にする
パブリック IP を使用してインバウンド接続を有効にするには、次の操作を行います。
コンソール
[クラスタ] ページに移動します。
[リソース名] 列でクラスタをクリックします。
開いた [概要] ページで、[クラスタ内のインスタンス] セクションに移動し、プライマリ インスタンスを探します。
> [編集] をクリックします。
[インスタンスの操作][接続] で、インバウンド接続をサポートするように [パブリック IP を有効にする] チェックボックスをオンにします。
省略可: 特定の IP アドレスへの直接接続を制限する場合は、[承認済み外部ネットワーク] で CIDR 範囲のカンマ区切りリストを入力します。
CIDR 範囲ごとに、CIDR ブロック(
64.233.160.0/16
など)を入力します。潜在的な攻撃対象領域を最小限に抑えるため、アドレスのリストをできるだけ小さくします。[インスタンスを更新] をクリックして、変更を保存します。
gcloud
gcloud CLI を使用するには、Google Cloud CLI をインストールして初期化するか、Cloud Shell を使用します。
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
: 作成するインスタンスの ID。英小文字、数字、ハイフンを使用できますが、先頭は英小文字にする必要があります。CLUSTER_ID
: 作成するクラスタの ID。英小文字、数字、ハイフンを使用できますが、先頭は英小文字にする必要があります。REGION_ID
: クラスタを配置するリージョン。
省略可: 承認済み外部ネットワークを追加する
特定の IP アドレスへの直接接続を制限する場合は、CIDR 範囲のカンマ区切りリストを追加します。
gcloud alloydb instances update INSTANCE_ID \
--cluster=CLUSTER_ID \
--region=REGION_ID \
--assign-inbound-public-ip=ASSIGN_IPV4 \
--authorized-external-networks=CIDR_RANGE1,CIDR_RANGE2,...
次のように置き換えます。
CIDR_RANGE
: CIDR ブロックのカンマ区切りリスト(64.233.160.0/16
など)。潜在的な攻撃対象領域を最小限に抑えるため、アドレスのリストをできるだけ小さくします。
インスタンスでパブリック IP を無効にする
インスタンスでパブリック IP を無効にすると、AlloyDB はインスタンスからパブリック IP アドレスを削除し、承認済みネットワークのリストを消去します。インスタンスへのインバウンド接続はすべて失敗します。承認済み外部ネットワークは、パブリック IP でのみ使用できます。
パブリック IP を無効にするには、次の操作を行います。
コンソール
[クラスタ] ページに移動します。
[リソース名] 列でクラスタをクリックします。
開いた [概要] ページで、[クラスタ内のインスタンス] セクションに移動し、プライマリ インスタンスを探します。
> [編集] をクリックします。
[インスタンスの操作][接続] で、[パブリック IP を有効にする] チェックボックスをオフにして、インバウンド接続を停止します。
省略可: [承認済み外部ネットワーク] で、カンマ区切りの CIDR 範囲を削除します。
[インスタンスを更新] をクリックして、変更を保存します。
gcloud
gcloud CLI を使用するには、Google Cloud CLI をインストールして初期化するか、Cloud Shell を使用します。
gcloud alloydb instances update
コマンドを使用して、インスタンスでパブリック IP を有効にします。
gcloud alloydb instances update INSTANCE_ID \
--cluster=CLUSTER_ID \
--region=REGION_ID \
--assign-inbound-public-ip=NO_PUBLIC_IP
次のように置き換えます。
INSTANCE_ID
: 作成するインスタンスの ID。英小文字、数字、ハイフンを使用できますが、先頭は英小文字にする必要があります。CLUSTER_ID
: 作成するクラスタの ID。英小文字、数字、ハイフンを使用できますが、先頭は英小文字にする必要があります。REGION_ID
: クラスタを配置するリージョン。
インスタンスの承認済み外部ネットワークを更新する
インスタンスの承認済み外部ネットワークのリストは、いつでも更新できます。承認済み外部ネットワークのリストを更新するときに、インスタンスでパブリック IP を有効にする必要があります。
承認済み外部ネットワークは個別に追加または削除できません。また、update list コマンドが実行されるたびに、ネットワーク リストが上書きされます。インスタンスで承認済み外部ネットワークを更新するには、ネットワークを追加または削除するたびに、承認済み外部ネットワークのカンマ区切りリストを指定する必要があります。承認済み外部ネットワークは CIDR 形式である必要があります。
インスタンスで承認済み外部ネットワークのリストを更新する手順は次のとおりです。
コンソール
[クラスタ] ページに移動します
[リソース名] 列でクラスタをクリックします。
開いた [概要] ページで、[クラスタ内のインスタンス] セクションに移動し、プライマリ インスタンスを探します。
> [編集] をクリックします。
[インスタンスの操作][承認済み外部ネットワーク] で、CIDR 範囲のカンマ区切りリストを入力します。CIDR 範囲ごとに、CIDR ブロック(
64.233.160.0/16
など)を入力します。潜在的な攻撃対象領域を最小限に抑えるため、アドレスのリストをできるだけ小さくします。[インスタンスを更新] をクリックして、変更を保存します。
gcloud
gcloud CLI を使用するには、Google Cloud CLI をインストールして初期化するか、Cloud Shell を使用します。
gcloud alloydb instances update
コマンドを使用して、インスタンスでパブリック IP を有効にします。
gcloud alloydb instances update INSTANCE_ID \
--cluster=CLUSTER_ID \
--region=REGION_ID \
--authorized-external-networks=CIDR_RANGE1,CIDR_RANGE2,...
次のように置き換えます。
INSTANCE_ID
: 作成するインスタンスの ID。英小文字、数字、ハイフンを使用できますが、先頭は英小文字にする必要があります。CLUSTER_ID
: 作成するクラスタの ID。英小文字、数字、ハイフンを使用できますが、先頭は英小文字にする必要があります。REGION_ID
: クラスタを配置するリージョン。CIDR_RANGE
: CIDR ブロックのカンマ区切りリスト(64.233.160.0/16
など)。潜在的な攻撃対象領域を最小限に抑えるため、アドレスのリストをできるだけ小さくします。
インスタンスへのアウトバウンド接続を追加する
アウトバウンド パブリック IP を有効にして、AlloyDB インスタンスから外部ソースへの接続を確立できます。AlloyDB は、インスタンスでアウトバウンド接続を無効にするまで整合性を維持する 2 つのアウトバウンド パブリック IP アドレスを生成します。アウトバウンド パブリック IP を有効にできるのは、プライマリ インスタンスとセカンダリ インスタンスのみです。
アウトバウンド パブリック IP を有効にするには、次の操作を行います。
コンソール
[クラスタ] ページに移動します。
[リソース名] 列でクラスタをクリックします。
開いた [概要] ページで、[クラスタ内のインスタンス] セクションに移動し、プライマリ インスタンスを探します。
> [編集] をクリックします。
[インスタンスの操作][アウトバウンド パブリック IP 接続] で、[アウトバウンド パブリック IP を有効にする] チェックボックスをオンにして、アウトバウンド接続をサポートします。
[インスタンスを更新] をクリックして、変更を保存します。
gcloud
gcloud CLI を使用するには、Google Cloud CLI をインストールして初期化するか、Cloud Shell を使用します。
gcloud alloydb instances update
コマンドを使用して、インスタンスでアウトバウンド パブリック IP を有効にします。
gcloud alloydb instances update INSTANCE_ID \
--cluster=CLUSTER_ID \
--region=REGION_ID \
--outbound-public-ip
次のように置き換えます。
INSTANCE_ID
: アウトバウンド接続を追加するインスタンスの ID。CLUSTER_ID
: アウトバウンド接続を追加するクラスタの ID。REGION_ID
: クラスタが配置されているリージョン。
インスタンスの接続の詳細を表示する
インスタンスで承認済み外部ネットワークのリストと割り当てられたパブリック IP アドレスを表示するには、いつでも gcloud alloydb instances
describe
コマンドを使用できます。インスタンスでアウトバウンド接続を有効にしている場合は、アウトバウンド パブリック IP アドレスも表示できます。
接続の詳細を表示する手順は次のとおりです。
コンソール
[クラスタ] ページに移動します。
[リソース名] 列でクラスタをクリックします。
[接続] ページに移動します。[パブリック IP 接続] や [アウトバウンド パブリック IP] など、パブリック IP 構成に関する情報が表示されます。
パブリック IP 情報を表示するには、[クラスタ内のインスタンス] からインスタンスを選択し、[接続構成を表示] をクリックします。
gcloud
gcloud CLI を使用するには、Google Cloud CLI をインストールして初期化するか、Cloud Shell を使用します。
gcloud alloydb instances describe INSTANCE_ID \
--cluster=CLUSTER_ID \
--region=REGION_ID
次のように置き換えます。
INSTANCE_ID
: 表示しているインスタンスの ID。英小文字、数字、ハイフンを使用できますが、先頭は英小文字にする必要があります。CLUSTER_ID
: 表示しているクラスタの ID。英小文字、数字、ハイフンを使用できますが、先頭は英小文字にする必要があります。REGION_ID
: クラスタを配置するリージョン。