Persyaratan dan pertimbangan Amazon EKS VPC dan subnet - Amazon EKS

Bantu tingkatkan halaman ini

Ingin berkontribusi pada panduan pengguna ini? Gulir ke bagian bawah halaman ini dan pilih Edit halaman ini GitHub. Kontribusi Anda akan membantu membuat panduan pengguna kami lebih baik untuk semua orang.

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Persyaratan dan pertimbangan Amazon EKS VPC dan subnet

Saat membuat cluster, Anda menentukan VPC dan setidaknya dua subnet yang berada di Availability Zone yang berbeda. Topik ini memberikan gambaran umum tentang persyaratan dan pertimbangan khusus Amazon EKS untuk VPC dan subnet yang Anda gunakan dengan klaster Anda. Jika Anda tidak memiliki VPC untuk digunakan dengan Amazon EKS, Anda dapat membuatnya menggunakan template yang disediakan AWS CloudFormation Amazon EKS. Jika Anda membuat kluster lokal atau diperluas AWS Outposts, lihat Persyaratan dan pertimbangan VPC klaster lokal dan subnet Amazon EKS alih-alih topik ini.

Persyaratan dan pertimbangan VPC

Saat Anda membuat klaster, VPC yang Anda tentukan harus memenuhi persyaratan dan pertimbangan berikut:

  • VPC harus memiliki cukup banyak alamat IP yang tersedia untuk cluster, node apa pun, dan Kubernetes sumber daya lain yang ingin Anda buat. Jika VPC yang ingin Anda gunakan tidak memiliki jumlah alamat IP yang cukup, cobalah untuk menambah jumlah alamat IP yang tersedia.

    Anda dapat melakukan ini dengan memperbarui konfigurasi cluster untuk mengubah subnet dan grup keamanan yang digunakan cluster. Anda dapat memperbarui dari AWS Management Console, versi terbaru dari AWS CLI, AWS CloudFormation, dan eksctl versi v0.164.0-rc.0 atau yang lebih baru. Anda mungkin perlu melakukan ini untuk menyediakan subnet dengan lebih banyak alamat IP yang tersedia untuk berhasil meningkatkan versi cluster.

    penting

    Semua subnet yang Anda tambahkan harus berada dalam kumpulan AZ yang sama seperti yang disediakan semula saat Anda membuat cluster. Subnet baru harus memenuhi semua persyaratan lainnya, misalnya mereka harus memiliki alamat IP yang memadai.

    Misalnya, asumsikan bahwa Anda membuat cluster dan menentukan empat subnet. Dalam urutan yang Anda tentukan, subnet pertama ada di us-west-2a Availability Zone, subnet kedua dan ketiga berada di us-west-2b Availability Zone, dan subnet keempat berada di Availability Zone. us-west-2c Jika Anda ingin mengubah subnet, Anda harus menyediakan setidaknya satu subnet di masing-masing dari tiga Availability Zone, dan subnet harus dalam VPC yang sama dengan subnet asli.

    Jika Anda membutuhkan lebih banyak alamat IP daripada blok CIDR di VPC, Anda dapat menambahkan blok CIDR tambahan dengan mengaitkan blok Classless Inter-Domain Routing (CIDR) tambahan dengan VPC Anda. Anda dapat mengaitkan blok CIDR privat (RFC 1918) dan publik (non-RFC 1918) ke VPC Anda baik sebelum atau setelah Anda membuat klaster Anda. Diperlukan waktu cluster hingga lima jam agar blok CIDR yang Anda kaitkan dengan VPC dikenali.

    Anda dapat menghemat penggunaan alamat IP dengan menggunakan gateway transit dengan VPC layanan bersama. Untuk informasi selengkapnya, lihat VPC terisolasi dengan layanan bersama dan Pola konservasi alamat IP yang dapat dirutekan VPC Amazon EKS dalam jaringan hibrida.

  • Jika Anda Kubernetes ingin menetapkan IPv6 alamat Pods dan layanan, kaitkan blok IPv6 CIDR dengan VPC Anda. Untuk informasi selengkapnya, lihat Mengaitkan blok IPv6 CIDR dengan VPC Anda di Panduan Pengguna Amazon VPC.

  • VPC harus memiliki DNS nama host dan DNS dukungan resolusi. Jika tidak, node tidak dapat mendaftar ke cluster Anda. Untuk informasi selengkapnya, lihat atribut DNS untuk VPC Anda di Panduan Pengguna Amazon VPC.

  • VPC mungkin memerlukan titik akhir VPC menggunakan. AWS PrivateLink Untuk informasi selengkapnya, lihat Persyaratan dan pertimbangan subnet.

Jika Anda membuat cluster dengan Kubernetes 1.14 atau sebelumnya, Amazon EKS menambahkan tag berikut ke VPC Anda:

Kunci Nilai
kubernetes.io/cluster/my-cluster owned

Tag ini hanya digunakan oleh Amazon EKS. Anda dapat menghapus tag tanpa memengaruhi layanan Anda. Ini tidak digunakan dengan cluster yang versi 1.15 atau lebih baru.

Persyaratan dan pertimbangan subnet

Saat Anda membuat klaster, Amazon EKS membuat 2-4 antarmuka jaringan elastis di subnet yang Anda tentukan. Antarmuka jaringan ini memungkinkan komunikasi antara cluster Anda dan VPC Anda. Antarmuka jaringan ini juga memungkinkan Kubernetes fitur seperti kubectl exec dankubectl logs. Setiap antarmuka jaringan Amazon EKS yang dibuat memiliki teks Amazon EKS cluster-name dalam deskripsinya.

Amazon EKS dapat membuat antarmuka jaringannya di subnet apa pun yang Anda tentukan saat membuat cluster. Anda dapat mengubah subnet Amazon EKS yang membuat antarmuka jaringannya setelah cluster Anda dibuat. Saat Anda memperbarui Kubernetes versi cluster, Amazon EKS menghapus antarmuka jaringan asli yang dibuatnya, dan membuat antarmuka jaringan baru. Antarmuka jaringan ini dapat dibuat dalam subnet yang sama dengan antarmuka jaringan asli atau dalam subnet yang berbeda dari antarmuka jaringan asli. Untuk mengontrol antarmuka jaringan subnet mana yang dibuat, Anda dapat membatasi jumlah subnet yang Anda tentukan hanya dua saat Anda membuat cluster atau memperbarui subnet setelah membuat cluster.

Persyaratan subnet untuk cluster

Subnet yang Anda tentukan saat membuat atau memperbarui klaster harus memenuhi persyaratan berikut:

  • Subnet masing-masing harus memiliki setidaknya enam alamat IP untuk digunakan oleh Amazon EKS. Namun, kami merekomendasikan setidaknya 16 alamat IP.

  • Subnet tidak dapat berada di AWS Outposts, AWS Wavelength, atau Zona AWS Lokal. Namun, jika Anda memilikinya di VPC, Anda dapat menyebarkan node dan Kubernetes sumber daya yang dikelola sendiri ke jenis subnet ini.

  • Subnet dapat bersifat publik atau pribadi. Namun, kami menyarankan Anda menentukan subnet pribadi, jika memungkinkan. Subnet publik adalah subnet dengan tabel rute yang mencakup rute ke gateway internet, sedangkan subnet pribadi adalah subnet dengan tabel rute yang tidak menyertakan rute ke gateway internet.

  • Subnet tidak dapat berada di Availability Zone berikut:

    Wilayah AWS Nama Wilayah ID Zona Ketersediaan Dilarang
    us-east-1 AS Timur (Virginia Utara) use1-az3
    us-west-1 AS Barat (California Utara) usw1-az2
    ca-central-1 Kanada (Pusat) cac1-az3

Penggunaan keluarga alamat IP berdasarkan komponen

Tabel berikut berisi keluarga alamat IP yang digunakan oleh setiap komponen Amazon EKS. Anda dapat menggunakan terjemahan alamat jaringan (NAT) atau sistem kompatibilitas lainnya untuk terhubung ke komponen ini dari alamat IP sumber dalam keluarga dengan "No" nilai untuk entri tabel.

Fungsionalitas dapat berbeda tergantung pada pengaturan IP family (ipFamily) cluster. Pengaturan ini mengubah jenis alamat IP yang digunakan untuk CIDR blok Kubernetes yang ditetapkan. Services Sebuah cluster dengan nilai pengaturan IPv4 disebut sebagaiIPv4 cluster, dan cluster dengan nilai pengaturan IPv6 disebut sebagaiIPv6 cluster.

Komponen IPv4alamat saja IPv6alamat saja Alamat tumpukan ganda
Titik akhir publik EKS API Ya Tidak Tidak
EKS API VPC titik akhir Ya Tidak Tidak
Titik akhir publik EKS Auth API Ya1 Ya1 Ya1
Titik akhir VPC EKS Auth API Ya1 Ya1 Ya1
Titik akhir publik kluster EKS Ya Tidak Tidak
Titik akhir pribadi kluster EKS Ya2 Ya2 Tidak
Subnet kluster EKS Ya2 Tidak Ya2
Node Alamat IP Primer Ya2 Tidak Ya2
CIDRRentang cluster untuk alamat Service IP Ya2 Ya2 Tidak
PodAlamat IP dari VPC CNI Ya2 Ya2 Tidak
catatan

1 Titik akhir adalah tumpukan ganda dengan keduanya IPv4 dan IPv6 alamat. Aplikasi Anda di luar AWS, node Anda untuk cluster, dan pod Anda di dalam cluster dapat mencapai titik akhir ini dengan salah satu IPv4 atauIPv6.

2 Anda memilih antara IPv4 cluster dan IPv6 cluster dalam pengaturan IP family (ipFamily) cluster saat Anda membuat cluster dan ini tidak dapat diubah. Sebagai gantinya, Anda harus memilih pengaturan yang berbeda saat membuat klaster lain dan memigrasikan beban kerja Anda.

Persyaratan subnet untuk node

Anda dapat menyebarkan node dan Kubernetes sumber daya ke subnet yang sama dengan yang Anda tentukan saat membuat klaster. Namun, ini tidak perlu. Ini karena Anda juga dapat menyebarkan node dan Kubernetes sumber daya ke subnet yang tidak Anda tentukan saat membuat cluster. Jika Anda menerapkan node ke subnet yang berbeda, Amazon EKS tidak membuat antarmuka jaringan cluster di subnet tersebut. Setiap subnet yang Anda gunakan node dan Kubernetes sumber daya harus memenuhi persyaratan berikut:

  • Subnet harus memiliki cukup alamat IP yang tersedia untuk menyebarkan semua node dan Kubernetes sumber daya Anda.

  • Jika Anda Kubernetes ingin menetapkan IPv6 alamat Pods dan layanan, maka Anda harus memiliki satu blok IPv6 CIDR dan satu blok IPv4 CIDR yang terkait dengan subnet Anda. Untuk informasi selengkapnya, lihat Mengaitkan blok IPv6 CIDR dengan subnet Anda di Panduan Pengguna Amazon VPC. Tabel rute yang terkait dengan subnet harus menyertakan rute ke IPv4 dan IPv6 alamat. Untuk informasi selengkapnya, lihat Rute di Panduan Pengguna Amazon VPC. Pod hanya diberi IPv6 alamat. Namun antarmuka jaringan yang dibuat Amazon EKS untuk klaster Anda dan node Anda diberi alamat IPv4 dan IPv6 alamat.

  • Jika Anda memerlukan akses masuk dari internet ke AndaPods, pastikan untuk memiliki setidaknya satu subnet publik dengan alamat IP yang cukup tersedia untuk menyebarkan penyeimbang beban dan pemasukan. Anda dapat menyebarkan penyeimbang beban ke subnet publik. Load balancer dapat memuat keseimbangan ke Pods subnet pribadi atau publik. Sebaiknya gunakan node Anda ke subnet pribadi, jika memungkinkan.

  • Jika Anda berencana untuk menyebarkan node ke subnet publik, subnet harus menetapkan alamat atau alamat publik secara otomatisIPv4. IPv6 Jika Anda menyebarkan node ke subnet pribadi yang memiliki blok IPv6 CIDR terkait, subnet pribadi juga harus menetapkan alamat secara otomatis. IPv6 Jika Anda menggunakan AWS CloudFormation template Amazon EKS untuk menerapkan VPC Anda setelah 26 Maret 2020, pengaturan ini diaktifkan. Jika Anda menggunakan template untuk menyebarkan VPC Anda sebelum tanggal ini atau Anda menggunakan VPC Anda sendiri, Anda harus mengaktifkan pengaturan ini secara manual. Untuk informasi selengkapnya, lihat Memodifikasi atribut IPv4 pengalamatan publik untuk subnet Anda dan Memodifikasi atribut IPv6 pengalamatan untuk subnet Anda di Panduan Pengguna Amazon VPC.

  • Jika subnet tempat Anda menerapkan node adalah subnet pribadi dan tabel rutenya tidak menyertakan rute ke perangkat terjemahan alamat jaringan (NAT) () atau gateway khusus egres (IPv4)IPv6, tambahkan titik akhir VPC menggunakan ke VPC Anda. AWS PrivateLink Titik akhir VPC diperlukan untuk semua node Anda dan Pods perlu berkomunikasi dengannya. Layanan AWS Contohnya termasuk Amazon ECR, Elastic Load Balancing, Amazon AWS Security Token Service, dan CloudWatch Amazon Simple Storage Service (Amazon S3). Titik akhir harus menyertakan subnet tempat node berada. Tidak semua Layanan AWS mendukung titik akhir VPC. Untuk informasi lebih lanjut, lihat Apa itu AWS PrivateLink? dan AWS layanan yang terintegrasi dengan AWS PrivateLink. Untuk daftar persyaratan Amazon EKS lainnya, lihatPersyaratan klaster pribadi.

  • Jika Anda ingin menerapkan penyeimbang beban ke subnet, subnet harus memiliki tag berikut:

    • Subnet privat

      Kunci Nilai
      kubernetes.io/role/internal-elb 1
    • Subnet publik

      Kunci Nilai
      kubernetes.io/role/elb 1

Ketika Kubernetes cluster yang versi 1.18 dan sebelumnya dibuat, Amazon EKS menambahkan tag berikut ke semua subnet yang ditentukan.

Kunci Nilai
kubernetes.io/cluster/my-cluster shared

Saat Anda membuat Kubernetes cluster baru sekarang, Amazon EKS tidak menambahkan tag ke subnet Anda. Jika tag berada di subnet yang digunakan oleh cluster yang sebelumnya merupakan versi sebelumnya1.19, tag tidak secara otomatis dihapus dari subnet saat cluster diperbarui ke versi yang lebih baru. Versi 2.1.1 atau sebelumnya AWS Load Balancer Controllermembutuhkan tag ini. Jika Anda menggunakan versi yang lebih baru dari Load Balancer Controller, Anda dapat menghapus tag tanpa mengganggu layanan Anda.

Jika Anda menerapkan VPC dengan eksctlmenggunakan atau salah satu templat AWS CloudFormation VPC Amazon EKS, berikut ini berlaku:

  • Pada atau setelah 26 Maret 2020 - IPv4 Alamat publik secara otomatis ditetapkan oleh subnet publik ke node baru yang digunakan untuk subnet publik.

  • Sebelum 26 Maret 2020 - IPv4 Alamat publik tidak secara otomatis ditetapkan oleh subnet publik ke node baru yang digunakan ke subnet publik.

Perubahan ini berdampak pada grup node baru yang diterapkan ke subnet publik dengan cara berikut:

Persyaratan dan pertimbangan subnet bersama

Anda dapat menggunakan berbagi VPC untuk berbagi subnet dengan AWS akun lain dalam hal yang sama. AWS Organizations Anda dapat membuat klaster Amazon EKS di subnet bersama, dengan pertimbangan berikut:

  • Pemilik subnet VPC harus berbagi subnet dengan akun peserta sebelum akun tersebut dapat membuat cluster Amazon EKS di dalamnya.

  • Anda tidak dapat meluncurkan sumber daya menggunakan grup keamanan default untuk VPC karena milik pemilik. Selain itu, peserta tidak dapat meluncurkan sumber daya menggunakan grup keamanan yang dimiliki oleh peserta lain atau pemilik.

  • Dalam subnet bersama, peserta dan pemilik secara terpisah mengontrol grup keamanan dalam setiap akun masing-masing. Pemilik subnet dapat melihat grup keamanan yang dibuat oleh peserta tetapi tidak dapat melakukan tindakan apa pun pada mereka. Jika pemilik subnet ingin menghapus atau memodifikasi grup keamanan ini, peserta yang membuat grup keamanan harus mengambil tindakan.

  • Jika cluster dibuat oleh peserta, pertimbangan berikut berlaku:

  • Pemilik VPC bersama tidak dapat melihat, memperbarui, atau menghapus klaster yang dibuat peserta di subnet bersama. Ini merupakan tambahan dari sumber daya VPC yang setiap akun memiliki akses berbeda. Untuk informasi selengkapnya, lihat Tanggung jawab dan izin untuk pemilik dan peserta di Panduan Pengguna Amazon VPC.

  • Jika Anda menggunakan fitur jaringan kustom Amazon VPC CNI plugin for Kubernetes, Anda perlu menggunakan pemetaan ID Availability Zone yang tercantum di akun pemilik untuk membuat masing-masing. ENIConfig Untuk informasi selengkapnya, lihat Jaringan khusus untuk pod.

Untuk informasi selengkapnya tentang berbagi subnet VPC, lihat Bagikan VPC Anda dengan akun lain di Panduan Pengguna Amazon VPC.