プライベート サービス アクセスを有効にする

このページでは、AlloyDB for PostgreSQL がプライベート サービス アクセスに必要とする Virtual Private Cloud(VPC)IP アドレス範囲を作成する方法について説明します。AlloyDB がプライベート サービス アクセスを使用して内部リソースが相互に通信できるようにする方法の概要については、プライベート サービス アクセスについてをご覧ください。

AlloyDB クラスタと同じGoogle Cloud プロジェクトにある Virtual Private Cloud(VPC)ネットワークにプライベート サービス アクセス構成を作成するには、次の 2 つの操作を行います。

  • VPC ネットワークに割り振られた IP アドレス範囲を作成します。

  • VPC ネットワークと基盤となる Google Cloud VPC ネットワークの間にプライベート接続を作成します。プライベート サービス アクセスを構成して、AlloyDB クラスタを別のGoogle Cloud プロジェクトに存在するリソースに接続することもできます。これを行うには、共有 VPC を使用して 2 つのプロジェクトの VPC ネットワークを統合する必要があります。

始める前に

  • 使用している Google Cloud プロジェクトで、AlloyDB へのアクセスが有効になっている必要があります。
  • 使用している Google Cloud プロジェクトに、次のいずれかの IAM ロールが必要です。
    • roles/alloydb.admin(AlloyDB 管理者の事前定義 IAM ロール)
    • roles/owner(オーナーの基本 IAM ロール)
    • roles/editor(編集者の基本 IAM ロール)

    これらのロールを付与されていない場合は、組織管理者に連絡してアクセス権をリクエストしてください。

  • プライベート サービス アクセス構成を作成するには、次の IAM 権限も必要です。
    • compute.networks.list
    • compute.addresses.create
    • compute.addresses.list
    • servicenetworking.services.addPeering

手順

コンソール

  1. [VPC ネットワーク] ページに移動します。

    [VPC ネットワーク] に移動

  2. AlloyDB と VPC ネットワークが存在するプロジェクトを選択します。

  3. プライベート サービス アクセスに使用する VPC ネットワークの名前をクリックします。

  4. [VPC ネットワークの詳細] ページで、タブのリストをスクロールして [プライベート サービス接続] タブを見つけてクリックします。

  5. [プライベート サービス接続] タブで、[サービスに割り当てられた IP 範囲] タブをクリックします。

  6. [IP 範囲の割り当て] をクリックします。

  7. [名前] フィールドと [説明] フィールドに、割り振った範囲の名前と説明を入力します。

  8. 割り当ての [IP 範囲] の値を指定します。

    • IP アドレス範囲を指定するには、[カスタム] をクリックして、CIDR ブロック(192.168.0.0/16 など)を入力します。

      AlloyDB に十分なアドレス空間を提供するには、プレフィックスの長さを 16 以下にすることをおすすめします。

    • 接頭辞長を指定して利用可能な範囲を Google に選択させる手順は次のとおりです。

      1. [自動] をクリックします。

      2. プレフィックスの長さを単純な数値(16 など)で入力します。

  9. [割り当て] をクリックして、割り振る範囲を作成します。

  10. [プライベート サービス接続] タブで、[サービスへのプライベート接続] タブをクリックします。

  11. ネットワークとサービス プロデューサーとの間にプライベート接続を作成するには、[接続の作成] をクリックします。

  12. Google Cloud Platform が接続サービス プロデューサーであることを確認します。

  13. [割り当て] で、前に作成した割り振られた IP 範囲を選択します。

  14. [接続] をクリックして接続を作成します。

gcloud

gcloud CLI を使用するには、Google Cloud CLI をインストールして初期化するか、Cloud Shell を使用します。

  1. gcloud config set コマンドを使用して、デフォルト プロジェクトを AlloyDB と VPC ネットワークが存在するプロジェクトに設定します。

    gcloud config set project PROJECT_ID

    PROJECT_ID は、AlloyDB と VPC ネットワークが存在するプロジェクトの ID に置き換えます。

  2. gcloud compute addresses create コマンドを使用して、割り振られた IP アドレス範囲を作成します。

    AlloyDB に十分なアドレス空間を提供するには、接頭辞の長さを 16 以下にすることをおすすめします。

    • アドレス範囲と接頭辞長(サブネット マスク)を指定するには、--addresses フラグと --prefix-length フラグを使用します。たとえば、CIDR ブロック 192.168.0.0/16 を割り振るには、アドレスに 192.168.0.0 を指定し、接頭辞長に 16 を指定します。

          gcloud compute addresses create RESERVED_RANGE_NAME \
              --global \
              --purpose=VPC_PEERING \
              --addresses=192.168.0.0 \
              --prefix-length=16 \
              --description="DESCRIPTION" \
              --network=VPC_NETWORK

      次のように置き換えます。

      • RESERVED_RANGE_NAME: 割り振り範囲の名前(my-allocated-range など)。

      • DESCRIPTION: 範囲の説明(allocated for my-service など)。

      • VPC_NETWORK: VPC ネットワークの名前(my-vpc-network など)。

    • 接頭辞長(サブネット マスク)のみを指定するには、--prefix-length フラグを使用します。アドレス範囲を省略すると、Google Cloud は VPC ネットワークで使用されていないアドレス範囲を自動的に選択します。

      次の例では、16 ビットのプレフィックス長を使用して、未使用の IP アドレス範囲を選択しています。

          gcloud compute addresses create RESERVED_RANGE_NAME \
              --global \
              --purpose=VPC_PEERING \
              --prefix-length=16 \
              --description="DESCRIPTION" \
              --network=VPC_NETWORK

    次の例では、default VPC ネットワーク内の VM インスタンスがプライベート サービス アクセスを使用して、それをサポートする Google サービスにアクセスできるように Google にプライベート接続を作成します。

        gcloud compute addresses create google-managed-services-default \
            --global \
            --purpose=VPC_PEERING \
            --prefix-length=16 \
            --description="peering range for Google" \
            --network=default
  3. gcloud services vpc-peerings connect コマンドを使用して、プライベート接続を作成します。

        gcloud services vpc-peerings connect \
            --service=servicenetworking.googleapis.com \
            --ranges=RESERVED_RANGE_NAME \
            --network=VPC_NETWORK

    次のように置き換えます。

    • RESERVED_RANGE_NAME: 作成した割り振り済みの IP アドレス範囲の名前

    • VPC_NETWORK: VPC ネットワークの名前。

    このコマンドは、長時間実行オペレーションを開始し、オペレーション名を戻します。

  4. オペレーションが成功したかどうかを確認します。

        gcloud services vpc-peerings operations describe
        --name=OPERATION_NAME

    OPERATION_NAME は、前の手順から返されたオペレーション名に置き換えます。

次のステップ