Buat node Linux Ubuntu yang dikelola sendiri - 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.

Untuk berkontribusi pada panduan pengguna ini, pilih Edit halaman ini pada GitHub tautan yang terletak di panel kanan setiap halaman.

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

Buat node Linux Ubuntu yang dikelola sendiri

catatan

Grup node terkelola mungkin menawarkan beberapa keuntungan untuk kasus penggunaan Anda. Untuk informasi selengkapnya, lihat Sederhanakan siklus hidup node dengan grup node terkelola.

Topik ini menjelaskan cara meluncurkan grup Auto Scaling Ubuntu di Amazon Elastic Kubernetes Service (EKS) atau Ubuntu Pro di node Amazon Elastic Kubernetes Service (EKS) yang mendaftar dengan cluster Amazon EKS Anda. Ubuntu dan Ubuntu Pro untuk EKS didasarkan pada Ubuntu Minimal LTS resmi, termasuk AWS kernel khusus yang dikembangkan bersama AWS, dan telah dibangun khusus untuk EKS. Ubuntu Pro menambahkan cakupan keamanan tambahan dengan mendukung periode dukungan EKS yang diperpanjang, livepatch kernel, kepatuhan FIPS, dan kemampuan untuk menjalankan kontainer Pro tanpa batas.

Setelah node bergabung dengan cluster, Anda dapat menyebarkan aplikasi kontainer ke mereka. Untuk informasi lebih lanjut, kunjungi dokumentasi untuk Ubuntu on AWS dan dukungan Custom AMI dalam eksctl dokumentasi.

penting
  • Node Amazon EKS adalah EC2 instans Amazon standar, dan Anda ditagih berdasarkan harga EC2 instans Amazon normal. Untuk informasi selengkapnya, lihat EC2 harga Amazon.

  • Anda dapat meluncurkan node Ubuntu di Amazon EKS cluster yang diperluas di AWS Outposts, tetapi Anda tidak dapat meluncurkannya di cluster AWS lokal di Outposts. Untuk informasi selengkapnya, lihat Menerapkan Amazon EKS lokal dengan Outposts AWS.

  • Anda dapat menerapkan ke EC2 instans Amazon dengan x86 atau prosesor Arm. Namun, contoh yang memiliki chip Inferentia mungkin perlu menginstal Neuron SDK terlebih dahulu.

Prosedur ini membutuhkan eksctl versi 0.204.0 atau yang lebih baru. Anda dapat memeriksa versi Anda dengan perintah berikut:

eksctl version

Untuk petunjuk tentang cara menginstal atau meningkatkaneksctl, lihat Instalasi dalam eksctl dokumentasi. Catatan: Prosedur ini hanya berfungsi untuk cluster yang dibuat dengan. eksctl

  1. Salin konten berikut ke perangkat Anda. Ganti my-cluster dengan nama klaster Anda. Nama hanya dapat berisi karakter alfanumerik (peka huruf besar/kecil) dan tanda hubung. Itu harus dimulai dengan karakter alfabet dan tidak boleh lebih dari 100 karakter. Ganti ng-ubuntu dengan nama untuk grup node Anda. Nama grup node tidak boleh lebih dari 63 karakter. Itu harus dimulai dengan huruf atau digit, tetapi juga dapat menyertakan tanda hubung dan garis bawah untuk karakter yang tersisa. Untuk menerapkan pada instance Arm, ganti m5.large dengan tipe instance Arm. Ganti my-ec2-keypair-name dengan nama key pair Amazon EC2 SSH yang dapat Anda gunakan untuk terhubung menggunakan SSH ke node Anda setelah diluncurkan. Jika Anda belum memiliki EC2 key pair Amazon, Anda dapat membuatnya di AWS Management Console. Untuk informasi selengkapnya, lihat pasangan EC2 kunci Amazon di Panduan EC2 Pengguna Amazon. Ganti semua yang tersisa example values dengan nilai Anda sendiri. Setelah Anda membuat penggantian, jalankan perintah yang dimodifikasi untuk membuat ubuntu.yaml file.

    penting

    Untuk menyebarkan grup node ke subnet AWS Outposts, AWS Wavelength, atau AWS Local Zone, jangan lewatkan subnet AWS Outposts, Wavelength, atau Local Zone saat Anda membuat AWS cluster. AWS Anda harus menentukan subnet dalam contoh berikut. Untuk informasi selengkapnya lihat Buat nodegroup dari file config dan Skema file config di dalam dokumentasi eksctl. Ganti region-code dengan AWS Wilayah tempat cluster Anda berada.

    cat >ubuntu.yaml <<EOF --- apiVersion: eksctl.io/v1alpha5 kind: ClusterConfig metadata: name: my-cluster region: region-code version: '1.32' iam: withOIDC: true nodeGroups: - name: ng-ubuntu instanceType: m5.large desiredCapacity: 3 amiFamily: Ubuntu2204 iam: attachPolicyARNs: - arn:aws: iam::aws:policy/AmazonEKSWorkerNodePolicy - arn:aws: iam::aws:policy/AmazonEC2ContainerRegistryReadOnly - arn:aws: iam::aws:policy/AmazonSSMManagedInstanceCore - arn:aws: iam::aws:policy/AmazonEKS_CNI_Policy ssh: allow: true publicKeyName: my-ec2-keypair-name EOF

    Untuk membuat grup node Ubuntu Pro, cukup ubah amiFamily nilainya menjadiUbuntuPro2204.

  2. Deploy simpul Anda dengan perintah berikut.

    eksctl create nodegroup --config-file=ubuntu.yaml

    Contoh output adalah sebagai berikut.

    Beberapa baris adalah output sementara node dibuat. Salah satu baris terakhir dari output adalah baris contoh berikutnya.

    [✔] created 1 nodegroup(s) in cluster "my-cluster"
  3. (Opsional) Menyebarkan aplikasi sampel untuk menguji node Ubuntu Anda.

  4. Sebaiknya blokir akses Pod ke IMDS jika kondisi berikut benar:

    • Anda berencana untuk menetapkan peran IAM ke semua akun layanan Kubernetes Anda sehingga Pod hanya memiliki izin minimum yang mereka butuhkan.

    • Tidak ada Pod dalam klaster yang memerlukan akses ke layanan metadata EC2 instans Amazon (IMDS) karena alasan lain, seperti mengambil Region saat ini. AWS

    Untuk informasi selengkapnya, lihat Membatasi akses ke profil instance yang ditetapkan ke node pekerja.