Networking

CloudNativePGは、基になるKubernetesクラスターに必要な接続が既に設定されていることを前提としています。 Kubernetesでのネットワーキングは、重要かつ拡張されたトピックです。詳細については、

Kubernetes documentation を参照してください。

クイックスタートガイドに従ってローカルのKinDまたはK3dクラスターにCloudNativePGをインストールしている場合、どちらのプラットフォームもデフォルトでネットワーク制限を追加しないため、ネットワークの問題は発生しないはずです。

ただし、既存のインフラストラクチャにCloudNativePGを展開する場合、ネットワーク制限が適用される場合があり、オペレーターとPostgreSQLクラスターとの通信を損なう可能性があります。具体的には、既存の Network Policies

特定の種類のトラフィックを制限する場合があります。

または、セキュリティを強化するために環境にネットワークポリシーを追加することに興味がある場合があります。 security document で述べたように、オペレーターがポート8000および5432ですべてのクラスターポッドに到達でき、ポッドが相互に接続できることを確認してください。

オペレーターのクロス名前空間ネットワークポリシー

クイックスタートガイドに従うか、展開にhelmチャートを使用すると、オペレーターが専用の名前空間デフォルトでcnpg-system にインストールされます。クラスターは別の名前空間に作成することをお勧めします。

オペレーターはクラスターポッドに接続できる必要があります。これは、名前空間を越えたトラフィックを制限するNetworkPolicy がある場合、妨げられる可能性があります。

例、 kubernetes guide on network policies

デフォルトですべての入力トラフィックを拒否するポリシーの例が含まれています。

ローカルkubernetesセットアップにこの種の制限的なネットワークポリシーがある場合、 NetworkPolicy を作成して、オペレーター名前空間とポッドからクラスター名前空間とポッドへの接続を明示的に許可する必要があります。このリポジトリの networkpolicy-example.yaml ファイルに例があります。特定のセットアップに一致するようにクラスター名とクラスター名前空間を調整する必要があることに注意してください。デフォルトの名前空間でない場合は、オペレーター名前空間も調整する必要があります。

クロスクラスターネットワーキング

別のクラスターから レプリカクラスターのブートストラップ を使用している間、またはexternalClusters セクションを使用している場合、関係するすべてのクラスター、オブジェクトストア、および名前空間間の接続を確認します。

繰り返しになりますが、 Kubernetes documentation を参照してください。

セットアップ情報については。