Menerapkan klaster Amazon EKS dari AWS EC2 Cloud9 menggunakan profil instans - AWS Prescriptive Guidance

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

Menerapkan klaster Amazon EKS dari AWS EC2 Cloud9 menggunakan profil instans

Sagar Panigrahi, Amazon Web Services

Ringkasan

Pemberitahuan: AWS Cloud9 tidak lagi tersedia untuk pelanggan baru. Pelanggan yang sudah ada AWS Cloud9 dapat terus menggunakan layanan seperti biasa. Pelajari selengkapnya

Pola ini menjelaskan cara menggunakan AWS Cloud9 dan CloudFormation AWS untuk membuat klaster Amazon Elastic Kubernetes Service (Amazon EKS) yang dapat dioperasikan tanpa mengaktifkan akses terprogram bagi pengguna di akun Amazon Web Services (AWS) Anda.

AWS Cloud9 adalah lingkungan pengembangan terintegrasi (IDE) berbasis cloud yang membantu Anda menulis, menjalankan, dan men-debug kode Anda dengan menggunakan browser. AWS Cloud9 digunakan sebagai pusat kendali yang menyediakan klaster Amazon EKS dengan menggunakan profil instans Amazon Elastic Compute Cloud ( EC2Amazon) dan templat AWS. CloudFormation  

Anda dapat menggunakan pola ini jika Anda tidak ingin membuat pengguna AWS Identity and Access Management (IAM) dan ingin menggunakan peran IAM sebagai gantinya. Kontrol akses berbasis peran (RBAC) mengatur akses ke sumber daya berdasarkan peran pengguna individu. Pola ini menunjukkan cara memperbarui RBAC dalam kluster Amazon EKS untuk memungkinkan akses ke peran IAM tertentu.

Penyiapan pola ini juga membantu DevOps tim Anda menggunakan fitur AWS Cloud9 untuk memelihara dan mengembangkan sumber daya infrastruktur sebagai kode (IAc) untuk membuat infrastruktur Amazon EKS. 

Prasyarat dan batasan

Prasyarat

  • Akun AWS aktif.

  • Izin untuk membuat peran dan kebijakan IAM untuk akun. Peran IAM untuk pengguna harus menyertakan AWSCloud9Administrator kebijakan. eksNodeRolesPeran AWSServiceRoleForAmazonEKS dan juga harus dibuat karena diperlukan untuk membuat cluster Amazon EKS.

  • Pengetahuan tentang konsep Kubernetes.

Batasan

Arsitektur

AWS Cloud architecture diagram showing VPC, EKS control and data planes, and related services.

Tumpukan teknologi

  • AWS Cloud9

  • AWS CloudFormation

  • Amazon EKS

  • IAM

 

Otomatisasi dan skala

Anda dapat memperluas pola ini dan memasukkannya ke dalam pipeline integrasi berkelanjutan dan penerapan berkelanjutan (CI/CD) untuk mengotomatiskan penyediaan lengkap Amazon EKS.

Alat

  • AWS CloudFormation — AWS CloudFormation membantu Anda memodelkan dan menyiapkan sumber daya AWS sehingga Anda dapat menghabiskan lebih sedikit waktu untuk mengelola sumber daya tersebut dan lebih banyak waktu untuk berfokus pada aplikasi Anda.

  • AWS Cloud9 — AWS Cloud9 menawarkan pengalaman pengeditan kode yang kaya dengan dukungan untuk beberapa bahasa pemrograman dan debugger runtime, serta terminal bawaan.

  • AWS CLI — AWS Command Line Interface (AWS CLI) Command Line Interface (AWS CLI) adalah alat sumber terbuka yang memungkinkan Anda berinteraksi dengan layanan AWS menggunakan perintah di shell baris perintah Anda.

  • Kubectl - kubectl adalah utilitas baris perintah yang dapat Anda gunakan untuk berinteraksi dengan kluster Amazon EKS.

Epik

TugasDeskripsiKeterampilan yang dibutuhkan

Buat kebijakan IAM.

Masuk ke AWS Management Console, buka konsol IAM, pilih Kebijakan, lalu pilih Buat kebijakan. Pilih tab JSON dan tempel konten dari file policy-role-eks-instance - profile-for-cloud 9.json (terlampir).

Selesaikan peringatan keamanan, kesalahan, atau peringatan umum yang dihasilkan selama validasi kebijakan, lalu pilih Kebijakan tinjauan. Masukkan Nama untuk kebijakan tersebut. Kami menyarankan Anda menggunakan eks-instance-profile-for-cloud9 untuk nama kebijakan.

Ulas Ringkasan kebijakan untuk melihat izin yang diberikan oleh kebijakan Anda. Kemudian pilih Buat kebijakan.

Administrator awan

Buat peran IAM menggunakan kebijakan.

Pada konsol IAM, pilih Peran dan kemudian pilih Buat peran. Pilih AWS Service dan kemudian pilih EC2dari daftar.

Pilih Berikutnya: Izin dan cari kebijakan IAM yang Anda buat sebelumnya. Pilih tag yang sesuai untuk kebutuhan Anda.

Di bagian Tinjau, masukkan nama untuk peran tersebut. Kami menyarankan Anda menggunakan role-eks-instance-profile-for-cloud9 nama peran. Lalu pilih Buat peran.

Administrator awan
TugasDeskripsiKeterampilan yang dibutuhkan

Buat kebijakan IAM.

Di konsol IAM, pilih Kebijakan, lalu pilih Buat kebijakan. Pilih tab JSON dan tempel konten dari policy-for-eks-rbac file.json (terlampir).

Selesaikan peringatan keamanan, kesalahan, atau peringatan umum yang dihasilkan selama validasi kebijakan, lalu pilih Kebijakan tinjauan. Masukkan Nama untuk kebijakan tersebut. Kami menyarankan Anda menggunakan policy-for-eks-rbac untuk nama kebijakan. Ulas Ringkasan kebijakan untuk melihat izin yang diberikan oleh kebijakan Anda. Kemudian pilih Buat kebijakan.

Administrator awan

Buat peran IAM menggunakan kebijakan.

Pada konsol IAM, pilih Peran dan kemudian pilih Buat peran. Pilih AWS Service dan kemudian pilih EC2dari daftar. Pilih Berikutnya: Izin dan cari kebijakan IAM yang Anda buat sebelumnya. Pilih tag yang sesuai untuk kebutuhan Anda.

Di bagian Tinjau, masukkan nama untuk peran tersebut. Kami menyarankan Anda menggunakan role-eks-admin-for-rbac nama peran. Lalu pilih Buat peran.

Administrator awan
TugasDeskripsiKeterampilan yang dibutuhkan

Buat lingkungan AWS Cloud9.

Buka konsol AWS Cloud9 dan pilih Buat lingkungan. Pada halaman lingkungan Nama, masukkan nama untuk lingkungan Anda. Kami menyarankan Anda menggunakan eks-management-env untuk nama lingkungan. Konfigurasikan pengaturan yang tersisa sesuai dengan kebutuhan Anda dan kemudian pilih Langkah berikutnya.

Di halaman Meninjau, memilih Membuat lingkungan. Tunggu sementara AWS Cloud9 menciptakan lingkungan Anda. Ini dapat memakan waktu beberapa menit.

Untuk informasi selengkapnya tentang opsi konfigurasi yang tersedia, lihat Membuat EC2 lingkungan di dokumentasi AWS Cloud9.

Administrator awan

Hapus kredenal IAM sementara untuk AWS Cloud9.

Setelah lingkungan AWS Cloud9 Anda disediakan, pilih Pengaturan di ikon roda gigi. Di bawah Preferensi, pilih pengaturan AWS, lalu pilih Kredensial.

Matikan kredensial sementara yang dikelola AWS dan tutup tab.

Administrator awan

Lampirkan profil EC2 instance ke EC2 instance yang mendasarinya.

Buka EC2 konsol Amazon dan pilih EC2 instans yang cocok dengan lingkungan Anda di AWS Cloud9. Jika Anda menggunakan nama yang kami rekomendasikan, EC2 instance dipanggilaws-cloud9-eks-management-env.

Pilih EC2 instance, pilih Tindakan, lalu pilih Pengaturan instans. Pilih lampirkan/ganti peran IAM. Cari role-eks-instance-profile-for-cloud9 atau nama peran IAM yang Anda buat sebelumnya, lalu pilih Terapkan.

Administrator awan
TugasDeskripsiKeterampilan yang dibutuhkan

Buat cluster Amazon EKS.

Unduh dan buka templat eks-cfn.yaml (terlampir) untuk AWS. CloudFormation Edit template sesuai dengan kebutuhan Anda.

Buka lingkungan AWS Cloud9 dan pilih File baru. Tempelkan CloudFormation template AWS yang Anda buat sebelumnya ke bidang. Kami menyarankan Anda menggunakan eks-cfn.yaml untuk nama template.

Di terminal AWS Cloud9, jalankan perintah berikut untuk membuat klaster Amazon EKS:

aws cloudformation create-stack --stack-name eks-cluster --template-body file://eks-cfn.yaml --region <your_AWS_Region>

Jika CloudFormation panggilan AWS berhasil, Anda menerima Nama Sumber Daya Amazon (ARN) AWS CloudFormation stack di output Anda. Pembuatan tumpukan dapat memakan waktu antara 10 hingga 20 menit.

Administrator awan

Verifikasi status klaster Amazon EKS.

Di CloudFormation konsol AWS, buka halaman Stacks lalu pilih nama tumpukan.

Tumpukan dibuat saat kode status tumpukan ditampilkanCREATE_COMPLETE. Untuk informasi selengkapnya, lihat Melihat data dan sumber daya CloudFormation tumpukan AWS dalam CloudFormation dokumentasi AWS.

Administrator awan
TugasDeskripsiKeterampilan yang dibutuhkan

Instal kubectl di lingkungan AWS Cloud9.

Instal kubectl di lingkungan AWS Cloud9 Anda dengan mengikuti petunjuk dari Menginstal kubectl di dokumentasi Amazon EKS.

Administrator awan

Perbarui konfigurasi Amazon EKS baru di AWS Cloud9.

Jalankan perintah berikut di terminal AWS Cloud9 untuk memperbarui kubeconfig dari klaster Amazon EKS ke lingkungan AWS Cloud9:

aws eks update-kubeconfig --name EKS-DEV2 --region <your_AWS_Region> 

penting

EKS-DEV2adalah nama cluster Amazon EKS di CloudFormation template AWS yang Anda gunakan untuk membuat cluster.

Jalankan kubectl get all -A perintah untuk melihat semua sumber daya Kubernetes.

Administrator awan

Tambahkan peran IAM administrator ke Kubernetes RBAC.

Jalankan perintah berikut di terminal AWS Cloud9 Anda untuk membuka peta konfigurasi RBAC untuk Amazon EKS dalam mode edit:

kubectl edit cm/aws-auth -n kube-system

Tambahkan baris berikut di bawah mapRoles bagian:

- groups: - system:masters rolearn: <ARN_of_IAM_role _from_second_epic> username: eksadmin

Lint file berformat YAML untuk menghindari kesalahan sintaks. Simpan file menggunakan vi perintah dan kemudian keluar dari file.

catatan

Dengan menambahkan bagian ini, Anda memberi tahu Kubernetes RBAC yang <ARN_of_IAM_role _from_second_epic> akan menerima akses administrator penuh di klaster Amazon EKS. Ini berarti bahwa peran IAM yang teridentifikasi dapat melakukan tindakan administratif pada klaster Kubernetes. AWS menambahkan bagian yang ada di bawah mapRoles saat kluster Amazon EKS disediakan.

Administrator awan

Sumber daya terkait

Referensi

Lampiran

Untuk mengakses konten tambahan yang terkait dengan dokumen ini, unzip file berikut: attachment.zip