Menyebarkan kluster pribadi dengan akses internet terbatas - Amazon EKS

Bantu tingkatkan halaman ini

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

Ingin berkontribusi pada panduan pengguna ini? Pilih Edit halaman ini pada GitHub tautan yang terletak di panel kanan setiap halaman. 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.

Menyebarkan kluster pribadi dengan akses internet terbatas

Topik ini menjelaskan cara menerapkan kluster Amazon EKS yang diterapkan di AWS Cloud, tetapi tidak memiliki akses internet keluar. Jika Anda memiliki cluster lokal di AWS Outposts, lihatBuat node Amazon Linux di AWS Outposts, bukan topik ini.

Jika Anda tidak terbiasa dengan jaringan Amazon EKS, lihat De-mystifying jaringan cluster untuk node pekerja Amazon EKS. Jika klaster Anda tidak memiliki akses internet keluar, maka klaster harus memenuhi persyaratan berikut:

  • Cluster Anda harus menarik gambar dari registri kontainer yang ada di VPC Anda. Anda dapat membuat Amazon Elastic Container Registry di VPC Anda dan menyalin gambar kontainer ke sana untuk diambil node Anda. Untuk informasi selengkapnya, lihat Salin gambar kontainer dari satu repositori ke repositori lain.

  • Cluster Anda harus mengaktifkan akses pribadi endpoint. Hal ini diperlukan untuk node untuk mendaftar dengan endpoint cluster. titik akhir akses publik adalah opsional. Untuk informasi selengkapnya, lihat Kontrol akses jaringan ke titik akhir server API cluster.

  • swakelola Linux and Windows node harus menyertakan argumen bootstrap berikut sebelum diluncurkan. Argumen ini melewati introspeksi Amazon EKS dan tidak memerlukan akses ke Amazon EKS API dari dalam VPC.

    1. Tentukan nilai endpoint cluster Anda dengan perintah berikut. Ganti my-cluster dengan nama klaster Anda.

      aws eks describe-cluster --name my-cluster --query cluster.endpoint --output text

      Contoh output adalah sebagai berikut.

      https://EXAMPLE108C897D9B2F1B21D5EXAMPLE.sk1.region-code.eks.amazonaws.com
    2. Tentukan nilai otoritas sertifikat klaster Anda dengan perintah berikut. Ganti my-cluster dengan nama klaster Anda.

      aws eks describe-cluster --name my-cluster --query cluster.certificateAuthority --output text

      Output yang dikembalikan adalah string panjang.

    3. Ganti cluster-endpoint dan certificate-authority dalam perintah berikut dengan nilai yang dikembalikan dalam output dari perintah sebelumnya. Untuk informasi lebih lanjut tentang menentukan argumen bootstrap saat meluncurkan node yang dikelola sendiri, lihat Buat node Amazon Linux yang dikelola sendiri dan. Buat yang dikelola sendiri Microsoft Windows simpul

      • Untuk Linux simpul:

        --apiserver-endpoint cluster-endpoint --b64-cluster-ca certificate-authority

        Untuk argumen tambahan, lihat skrip bootstrap di GitHub.

      • Untuk Windows simpul:

        catatan

        Jika Anda menggunakan layanan khusus CIDR, maka Anda perlu menentukannya menggunakan -ServiceCIDR parameter. Jika tidak, resolusi DNS untuk Pods di cluster akan gagal.

        -APIServerEndpoint cluster-endpoint -Base64ClusterCA certificate-authority

        Untuk argumen tambahan, lihatParameter konfigurasi skrip bootstrap.

  • Cluster Anda aws-auth ConfigMap harus dibuat dari dalam VPC Anda. Untuk informasi selengkapnya tentang membuat dan menambahkan entri ke aws-authConfigMap, masukkan eksctl create iamidentitymapping --help di terminal Anda. Jika ConfigMap tidak ada di server Anda, eksctl akan membuatnya ketika Anda menggunakan perintah untuk menambahkan pemetaan identitas.

  • Pods dikonfigurasi dengan peran IAM untuk akun layanan memperoleh kredensyal dari panggilan API AWS Security Token Service (AWS STS). Jika tidak ada akses internet keluar, Anda harus membuat dan menggunakan titik akhir VPC AWS STS di VPC Anda. Sebagian besar AWS v1 SDKs menggunakan endpoint AWS STS global secara default (sts.amazonaws.com), yang tidak menggunakan titik akhir AWS STS VPC. Untuk menggunakan titik akhir VPC AWS STS, Anda mungkin perlu mengonfigurasi SDK Anda untuk menggunakan endpoint AWS STS regional (). sts.region-code.amazonaws.com Untuk informasi selengkapnya, lihat Konfigurasikan titik akhir Layanan Token AWS Keamanan untuk akun layanan.

  • Subnet VPC klaster Anda harus memiliki titik akhir antarmuka VPC untuk layanan apa pun yang Anda miliki AWS Pods membutuhkan akses ke. Untuk informasi selengkapnya, lihat Mengakses AWS layanan menggunakan titik akhir VPC antarmuka. Beberapa layanan dan titik akhir yang umum digunakan tercantum dalam tabel berikut. Untuk daftar lengkap titik akhir, lihat AWS layanan yang terintegrasi dengan AWS PrivateLink dalam AWS PrivateLink Panduan.

    Kami menyarankan Anda mengaktifkan nama DNS pribadi untuk titik akhir VPC Anda, sehingga beban kerja dapat terus menggunakan titik akhir layanan AWS publik tanpa masalah.

    Layanan Titik Akhir

    Amazon EC2

    com.amazonaws. region-code.ec2

    Amazon Elastic Container Registry (untuk menarik gambar wadah)

    com.amazonaws. region-code.ecr.api, com.amazonaws. region-code.ecr.dkr, dan com.amazonaws. region-code.s3

    Aplikasi Load Balancer dan Network Load Balancer

    com.amazonaws. region-code.elasticloadbalancing

    AWS X-Ray

    com.amazonaws. region-code.xray

    CloudWatch Log Amazon

    com.amazonaws. region-code.log

    AWS Security Token Service (diperlukan saat menggunakan peran IAM untuk akun layanan)

    com.amazonaws. region-code.sts

  • Setiap node yang dikelola sendiri harus disebarkan ke subnet yang memiliki titik akhir antarmuka VPC yang Anda butuhkan. Jika Anda membuat grup node terkelola, grup keamanan titik akhir antarmuka VPC harus mengizinkan CIDR untuk subnet, atau Anda harus menambahkan grup keamanan node yang dibuat ke grup keamanan titik akhir antarmuka VPC.

  • Jika Pods gunakan volume Amazon EFS, lalu sebelum menerapkan sistem file elastis Store dengan Amazon EFS, file kustomization.yaml driver harus diubah untuk mengatur gambar kontainer agar menggunakan Wilayah AWS yang sama dengan cluster Amazon EKS.

  • Anda dapat menggunakan AWS Load Balancer Controller untuk menyebarkan AWS Application Load Balancers (ALB) dan Network Load Balancer ke cluster pribadi Anda. Saat menerapkannya, Anda harus menggunakan flag baris perintah untuk mengaturenable-shield,enable-waf, dan enable-wafv2 ke false. Penemuan sertifikat dengan nama host dari objek Ingress tidak didukung. Ini karena pengontrol perlu mencapai AWS Certificate Manager, yang tidak memiliki titik akhir antarmuka VPC.

    Pengendali yang didukung pada penyeimbang beban jaringan dengan target IP, yang diperlukan untuk penggunaan pada Fargate. Untuk informasi selengkapnya, silakan lihat Aplikasi rute dan HTTP Lalu lintas dengan Application Load Balancers dan Buat penyeimbang beban jaringan.

  • Cluster Autoscaler didukung. Saat menerapkan Cluster Autoscaler Pods, pastikan bahwa baris perintah termasuk--aws-use-static-instance-list=true. Untuk informasi selengkapnya, lihat Menggunakan Daftar Instans Statis di GitHub. VPC node pekerja juga harus menyertakan titik akhir VPC STS dan titik akhir AWS VPC penskalaan otomatis.

  • Beberapa produk perangkat lunak kontainer menggunakan panggilan API yang mengakses AWS Marketplace Metering Service untuk memantau penggunaan. Cluster pribadi tidak mengizinkan panggilan ini, jadi Anda tidak dapat menggunakan jenis penampung ini di kluster pribadi.