デフォルトでは、データベース クラスタは、 ユーザー クラスタ内と同一プロジェクトからの接続のみを許可します。Google Distributed Cloud エアギャップ組織外の IP アドレスからの外部接続を許可するには:
コンソール
project-networkpolicy-adminロールにバインドされたアカウントで GDC コンソールにログインし、ファイアウォール ルールを作成します。- GDC コンソールのメインメニューから [ファイアウォール] を選択します。
- [ユーザー作成ルール] セクションで、[作成] をクリックします。
- [**ファイアウォール ルールの詳細**] で、ファイアウォール ルールの名前を作成します。
- [トラフィックの方向] ダイアログで、[上り(内向き)] を選択します。
- [ターゲット] ダイアログで、[サービス] を選択し、[dbs] を選択します。
- [送信元] ダイアログで、[組織外] を選択し、外部接続を許可する CIDR の範囲を入力します。
- [作成] をクリックします。
- 新しいルールの [ステータス] 列に [準備完了] が表示されるまで待ちます。
project-db-adminにバインドされたアカウントで GDC コンソールにログインします。- GDC コンソールのメインメニューから [データベース サービス] を選択します。
- 外部接続を有効にするデータベース クラスタを選択します。
- データベース クラスタの概要の [接続] セクションの [外部接続を許可する] 行を確認して、外部接続がすでに許可されているかどうかを確認します。
- データベース クラスタの概要の [接続] セクションで、 [edit] [編集] をクリックします。
- [外部接続を許可する] チェックボックスをオンにします。
- [保存] をクリックします。
API
ProjectNetworkPolicyリソースを作成して、外部接続を許可します。apiVersion: networking.gdc.goog/v1 kind: ProjectNetworkPolicy metadata: name: allow-external-dbs namespace: USER_PROJECT spec: ingress: - from: - ipBlock: cidr: CIDR_RANGE policyType: Ingress subject: managedServices: matchTypes: - dbs subjectType: ManagedService ```データベース クラスタを更新して、組織外の接続を有効にします。
kubectl patch dbcluster.postgresql.dbadmin.gdc.goog DBCLUSTER_NAME -p '{"spec":{"allowExternalIncomingTraffic":true}}' --type=merge -n USER_PROJECT
次のように置き換えます。
USER_PROJECT: データベース クラスタが作成されたユーザー プロジェクトの名前。CIDR_RANGE: 外部接続を許可する CIDR の範囲。DBCLUSTER_NAME: データベース クラスタの名前。