デフォルトでは、データベース クラスタは ユーザー クラスタ内および同じプロジェクトからの接続のみを許可します。Google Distributed Cloud のエアギャップ組織外の IP アドレスからの外部接続を許可するには:
コンソール
project-networkpolicy-admin
ロールにバインドされたアカウントで GDC コンソールにログインして、ファイアウォール ルールを作成します。- GDC コンソールのメインメニューから [ファイアウォール] を選択します。
- [User created rules] セクションで、[Create] をクリックします。
- [ファイアウォール ルールの詳細] で、ファイアウォール ルールの名前を作成します。
- [トラフィックの方向] ダイアログで、[上り(内向き)] を選択します。
- [ターゲット] ダイアログで、[サービス] を選択し、[dbs] を選択します。
- [From] ダイアログで、[Outside the organization] を選択し、外部接続を許可する CIDR 範囲を入力します。
- [作成] をクリックします。
- 新しいルールの [ステータス] 列に [準備完了] と表示されるまで待ちます。
project-db-admin
にバインドされたアカウントで GDC コンソールにログインします。- GDC コンソールのメインメニューから [Database Service] を選択します。
- 外部接続を有効にするデータベース クラスタを選択します。
- データベース クラスタの概要の [接続] セクションの [外部接続を許可する] 行を確認して、外部接続がすでに許可されているかどうかを確認します。
- データベース クラスタの概要の [接続] セクションで、編集 [編集] をクリックします。
- [外部接続を許可する] チェックボックスをオンにします。
- [保存] をクリックします。
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.DBENGINE_NAME.dbadmin.gdc.goog DBCLUSTER_NAME -p '{"spec":{"allowExternalIncomingTraffic":true}}' --type=merge -n USER_PROJECT
次のように置き換えます。
USER_PROJECT
: データベース クラスタが作成されたユーザー プロジェクトの名前。CIDR_RANGE
: 外部接続を許可する CIDR 範囲。DBENGINE_NAME
: データベース エンジンの名前。alloydbomni
、postgresql
、oracle
のいずれかです。DBCLUSTER_NAME
: データベース クラスタの名前。