AZ 3 NLB NAT Gateway NAT Gateway NAT Gateway Amazon Route 53 Internet Gateway Application users Developers / Admin users. Red Hat Managed Endpoint Private Link VPC End Point Service VPC End Point kubectl / oc Kubernetes API Server の Endpoint はインターネットに公開 User Controlplane • OpenShift (Kubernetes) API 用の エンドポイント • カスタマーアプリケーション の両方が、インターネットに公開 された構成 ・Public Cluster として作成した場合の構成。
3 NLB NAT Gateway NAT Gateway NAT Gateway Amazon Route 53 Internet Gateway Private Link VPC End Point Service VPC End Point Customer VPC Application users Developers / Admin users. Transit Gateway private subnet private subnet private subnet public subnet public subnet public subnet private subnet kubectl / oc Kubernetes API Server の Endpoint は VPC Endpint とし て作成され、インターネットに公 開されない。 User Controlplane Red Hat AWS Account User アプリケーション (OpenShift Console含む) の Endpoint は Public internet rosa 管理コマンドの内、rosa コマンドはインターネッ トアクセスを必要とする ・Public Cluster として作成した後、OpenShift (Kubernetes) API 用の Endpoint を Privateに変更
3 NLB NAT Gateway NAT Gateway NAT Gateway Amazon Route 53 Internet Gateway Private Link VPC End Point Service VPC End Point private subnet private subnet private subnet public subnet public subnet public subnet User Controlplane Red Hat Managed Endpoint インターネット向け Endpoint インターネット向け Endpoint 内向き Endpoint 内向き Endpoint 切り替え 切り替え kubectl / oc
ROSA VPC AZ 1 AZ 2 AZ 3 NLB NAT Gateway NAT Gateway NAT Gateway Amazon Route 53 Internet Gateway Private Link VPC End Point Service VPC End Point Customer VPC Application users Developers / Admin users. Transit Gateway private subnet private subnet private subnet public subnet public subnet public subnet private subnet kubectl / oc User Controlplane Red Hat AWS Account インストール時に Public Cluster として導入す る場合は、Public Subent / NAT Gateway は 必要 Kubernetes API Server の Endpoint は VPC Endpint とし て作成され、インターネットに 公開されない。 User アプリケーション (OpenShift Console含む) の Endpoint は Private internet rosa 管理コマンドの内、rosa コマンドはインターネッ トアクセスを常に必要と する ・テスト/ PoC目的では、Public Cluster としてインストールした方が使い勝手が良い。 ・後から Private に変更すれば、セキュリティを高めつつ、コンポーネントのアップーデートに必要なアウトバウンドのアクセス経路は維持される。
AZ 2 AZ 3 NLB Amazon Route 53 Private Link VPC End Point Red Hat Managed System Customer VPC Application users Developers / Admin users. Transit Gateway Internet Gateway internet internet への outbound は必要 (パッチ、バージョンアップなど) oc / kubectl Pod Pod Pod VPC End Point Service Red Hat AWS Account インストール時に Private Cluster として導入する 場合は、Public Subent / NAT Gateway は必要な い。 rosa ・初期状態から Private クラスターとしてインストールするので、ROSA VPC 内に Private Subnet が存在していない。 ・インストールやアップデート時のコンポーネントの取得のために、何らかのルートでインターネットアクセスを許可するか、Egress Lockdown構成を取る必用がある
ROSA VPC AZ 1 AZ 2 AZ 3 control plane (Red Hat VPC) NLB NAT Gateway Transit Gateway Amazon Route 53 Internet Gateway NAT Gateway transit gateway subnet transit gateway subnet transit gateway subnet transit gateway subnet transit gateway subnet private subnet private subnet private subnet public subnet public subnet TGW ENI TGW ENI TGW ENI TGW ENI TGW ENI private subnet private subnet TGW ENI TGW ENI HTTP または HTTPS プロキシのアドレスを指定してく ださい。 HTTPS プロキシを使用する場合は、プロキシの CA 証 明書を ROSA の信頼バンドルに追加する必要がありま す。(透過型プロキシを使用する場合も、信頼バンドル への CA 証明書の追加が必要です。) ROSA Private Cluster In this case, using two AZs for high availability HTTP Proxy を Outbound のトラフィック を制御するために設置。 Whitelist で ROSA や 3rd Party Operator が必要とするアクセスだけを許可する。 Egress VPC の中に、OutBound のアクセス先を制御するために Proxy Server を導入。必用なアクセス先はドキュメントに記載されている。 https://docs.redhat.com/en/documentation/red_hat_openshift_service_on_aws/4/html/prepare_your_environment/rosa-sts-aws-prereqs#rosa-hcp-firewall-prerequisites_rosa-sts-aws-prereqs
Outbound VPC Inbound VPC ROSA VPC AZ 1 AZ 2 AZ 3 control plane NLB (2nd IngressController) NLB Transit Gateway Amazon Route 53 Firewall / Inspection VPC Gateway Load Balancer Internet Gateway Internet Gateway Firewall equipment NAT Gateway NAT Gateway Firewall equipment AZ 1 AZ 2 AZ 1 AZ 2 AZ 1 AZ 2 TGW ENI TGW ENI GWLB Endpoint GWLB Endpoint TGW ENI TGW ENI TGW ENI TGW ENI TGW ENI TGW ENI TGW ENI トラフィックを精査するための Firewall を置いた 専用の VPC インバウンド・トラフィック専用の VPC アウトバウンドの出口専用の VPC Akamai WAF AWS SRA https://docs.aws.amazon.com/ja_jp/prescriptive-guidance/latest/security-reference-architecture/network.html NLB
Outbound を Proxy や Firewall で絞るためには、このガイドに沿った宛先を許可する必要があります。 https://docs.redhat.com/en/documentation/red_hat_openshift_service_on_aws/4/html/prepare_your_environment/rosa-hcp- prereqs#rosa-hcp-firewall-prerequisites_rosa-hcp-prereqs • 2.9.1.1 Domains for installation packages and tools • 2.9.1.2 Domains for telemetry • 2.9.1.3 Domains for Amazon Web Services (AWS) APIs • 2.9.1.4 Domains for your workload • 2.9.1.5 Optional domains to enable third-party content • 2.9.1.6 Outbound firewall rules for the ROSA CLI for clusters with egress zero • 2.9.1.7 Outbound firewall rules from Red Hat Hybrid Cloud Console for clusters with egress zero 注: “Egress ロックダウン” と呼ばれる、ROSAを含む Red Hat 提供コンポーネントに関しては、AWS内の Red Hat Managed の ECR からダウンロード を行い、インターネットアクセス無しの Closed の環境を作成する方法もあります。
NAT Gateway Internet Gateway NLB (default) Service LoadBalancer Service LoadBalancer CLB tcp 9000 tcp 9001 HTTP App1 Pod HTTP App2 Pod Router Pod Route Route TCP(non HTTP) TCP(non HTTP) HTTP(S) namespace namespace namespace namespace opensfhit-ingress [4] [1] For HTTP(S) workload, the default NLB is shared among HTTP(S) applications. The incoming traffic is routed ro router pods whicht route the traffic to each pod based on HTTP host header. [2] CLB is deployed for each TCP(non HTTP) app. The CLB can’t be shared between different Pod applications. [3] With OpenShift, Router Pods posses pod ip addresses and use them to access Pods for better performance. [4] Two Router pods are deployed by default for redundancy [3] [2] [2] [1] Service LoadBalancer NodePort NodePort NodePort TCP App1 Pod Listen 9000 TCP App2 Pod Listen 9001 ClusterIP ClusterIP ClusterIP Service ClusterIP Service ClusterIP ROSA 標準の IngressController ROSA 標準では、”Service” Type=LoadBalancer に対して、 CLB が生成されます。
leading provider of enterprise open source software solutions. Award- winning support, training, and consulting services make Red Hat a trusted adviser to the Fortune 500. Thank you