Grup keamanan untuk GKE di AWS

Topik ini menjelaskan grup keamanan AWS (SG) yang Anda butuhkan untuk GKE di AWS.

Jika Anda Menginstal layanan pengelolaan atau Menggunakan VPC AWS yang ada, anthos-gke akan membuat grup keamanan untuk Anda. Anda dapat mengonfigurasi CRD AWSCluster dan AWSNodePool dengan daftar ID grup keamanan tambahan.

Diagram berikut menguraikan cara GKE di AWS menggunakan grup keamanan untuk terhubung ke Google Cloud dan layanan AWS.

Diagram port dan koneksi dari komponen GKE di AWS ke Google Cloud dan layanan AWS.

Grup keamanan layanan pengelolaan

Grup keamanan layanan pengelolaan memungkinkan akses ke API layanan pengelolaan dengan HTTPS. Jika Anda telah mengonfigurasi bastion host, Inbound dari grup keamanan bastion diizinkan.

Jika Anda membuat lingkungan GKE di AWS ke dalam VPC AWS yang ada, Anda harus memiliki grup keamanan yang mengizinkan koneksi berikut.

Jenis Protokol Port Alamat Deskripsi
Masuk TCP 443 CIDR VPC Izinkan HTTPS dari AWS VPC.
Masuk TCP 22 Bastion host SG Izinkan tunneling SSH dari bastion host (hanya disertakan dalam VPC khusus).
Keluar TCP 80 0.0.0.0/0 Izinkan HTTP keluar.
Keluar TCP 443 0.0.0.0/0 Izinkan HTTPS keluar.

Akses domain keluar

Layanan pengelolaan memerlukan akses keluar ke domain berikut.

  • gkeconnect.googleapis.com
  • gkehub.googleapis.com
  • oauth2.googleapis.com
  • storage.googleapis.com
  • www.googleapis.com
  • gcr.io
  • k8s.gcr.io
  • EC2-REGION.ec2.archive.ubuntu.com

Ganti EC2-REGION dengan region AWS EC2 tempat penginstalan GKE di AWS Anda berjalan. Contoh, us-west-1.ec2.archive.ubuntu.com/.

Jika Anda menggunakan Cloud Service Mesh dengan Prometheus dan Kiali, izinkan akses keluar dari domain berikut:

  • docker.io
  • quay.io

Grup keamanan bastion host (opsional)

Anda menggunakan koneksi grup keamanan host bastion yang diizinkan oleh grupnya untuk terhubung ke layanan pengelolaan GKE di AWS dan cluster pengguna. Grup ini bersifat opsional dan hanya disertakan jika Anda menggunakan anthos-gke untuk membuat penginstalan GKE di AWS dalam VPC khusus.

Jenis Protokol Port Alamat Deskripsi
Masuk TCP 22 Blok CIDR dari bastionAllowedSSHCIDRBlocks dalam konfigurasi AWSManagementService. Izinkan SSH ke host bastion.
Keluar TCP 22 0.0.0.0/0 Izinkan SSH keluar.
Keluar TCP 80 0.0.0.0/0 Izinkan HTTP keluar.
Keluar TCP 443 0.0.0.0/0 Izinkan HTTPS keluar.

Grup keamanan bidang kontrol

Grup keamanan bidang kontrol memungkinkan koneksi antara node bidang kontrol dan layanan pengelolaan, serta antara node bidang kontrol dan kumpulan node.

Bidang kontrol terdiri dari tiga instance EC2 di belakang AWS Network Load Balancer (NLB). Instance ini menerima koneksi dari instance etcd di node lain, node pool node, dan NLB. Untuk mengupdate komponen GKE di AWS, semua traffic HTTP/HTTPS keluar diizinkan.

Anda menentukan ID grup keamanan dalam definisi AWSCluster.

Jenis Protokol Port Alamat Deskripsi
Masuk TCP 2380 SG ini Izinkan replikasi etcd bidang kontrol.
Masuk TCP 2381 SG ini Izinkan replikasi peristiwa etcd bidang kontrol.
Masuk TCP 443 SG node pool Izinkan HTTPS dari node kumpulan node.
Masuk TCP 443 Rentang CIDR VPC AWS Izinkan HTTPS dari load balancer dan layanan pengelolaan.
Masuk TCP 11872 Rentang CIDR VPC AWS Health check HTTP untuk load balancer.
Keluar TCP 22 SG node pool Izinkan tunneling SSH ke node pool (untuk cluster v1.20 dan yang lebih rendah).
Masuk TCP 8132 SG node pool Mengizinkan koneksi Konnectivity dari node pool (untuk cluster v1.21 dan yang lebih tinggi).
Keluar TCP 80 0.0.0.0/0 Izinkan HTTP keluar.
Keluar TCP 443 0.0.0.0/0 Izinkan HTTPS keluar.
Keluar TCP 2380 SG ini Izinkan replikasi etcd bidang kontrol.
Keluar TCP 2381 SG ini Izinkan replikasi peristiwa etcd bidang kontrol.
Keluar TCP 10250 SG node pool Izinkan koneksi dari bidang kontrol ke Kubelet.

Grup keamanan node pool

Grup keamanan kumpulan node mengizinkan koneksi dari bidang kontrol dan node lainnya. Anda menentukan ID grup keamanan dalam definisi AWSNodePool.

Jenis Protokol Port Alamat Deskripsi
Masuk TCP Semua SG ini Izinkan komunikasi pod-ke-pod.
Masuk TCP 22 SG bidang kontrol Izinkan tunneling SSH dari bidang kontrol (untuk cluster v1.20 dan yang lebih rendah).
Keluar TCP 8132 SG bidang kontrol Izinkan koneksi Konnectivity ke bidang kontrol (untuk cluster v1.21 dan yang lebih tinggi).
Masuk TCP 443 SG bidang kontrol Izinkan koneksi dari bidang kontrol ke Kubelet.
Masuk TCP 10250 SG bidang kontrol Izinkan koneksi dari bidang kontrol ke Kubelet.
Keluar TCP Semua SG ini Izinkan komunikasi pod-ke-pod.
Keluar TCP 80 0.0.0.0/0 Izinkan HTTP keluar.
Keluar TCP 443 0.0.0.0/0 Izinkan HTTPS keluar.