Administrasi Sederhana AWS EC2 Menggunakan AWS CLI

Image

Pada keseharian administrasi AWS EC2 sebetulnya kita dapat menggunakan beberapa metode. Misalkan melakukan administrasi via AWS Web Console ataupun menggunakan programmatic access menggunakan AWS CLI. Ataupun bisa menggunakan tools tools automation ataupun configuration automation lainnya.

Pada artikel ini, saya ingin mencoba membagi langkah langkah administrasi sederhana AWS EC2 menggunakan AWS CLI.

Dalam beberapa contoh kasus, mungkin kita memerlukan akses yang cepat dalam membangun atau menyediakan infrastruktur untuk development atau staging kepada tim Developer. Bahkan mungkin yang nantinya juga akan digunakan di production.

Hal hal tersebut yang merupakan repetisi ataupun pengulangan, dapat dicarikan jalan keluarnya sehingga kita tidak perlu usaha atau effort lebih ketika ingin konfigurasi hal tersebut.

Salah 1 contohnya adalah misalkan kita ingin menjalankan compute resource dalam hal ini contohnya adalah AWS EC2, kita dapat membuat atau mendefinisikan dahulu launch template untuk EC2 sesuai dengan kebutuhan. Kemudian untuk menjalankan EC2 kita dapat mereferensikan launch template tersebut. Dan dalam operasionalnya, kita bisa lakukan tanpa harus masuk ke AWS Web Console, cukup dengan menjalankan beberapa command di command line interface contohnya AWS CLI.

Skenario yang saya gunakan pada artikel ini adalah, saya akan mencoba simulasikan bagaimana EC2 dapat berjalan atau running dari launch template. Kemudian nantinya EC2 akan diberhentikan atau stop. Setelah itu akan di-terminated atau dihapus jika sudah tidak dipakai. Seluruh aktivitas dilakukan via AWS CLI.

Beberapa hal yang perlu diperhatikan sebelum melakukan administasi sederhana ini antara lain:

  • Membuat launch template yang nantinya akan direferensikan sebagai launch template saat EC2 akan dijalankan
  • Membuat IAM Role dan IAM Policy terkait sehingga dapat menjalankan perintah yang dikirim via AWS CLI

Berikut beberapa langkah yang dapat digunakan dalam administrasi sederhana EC2 via AWS CLI:

Menjalankan EC2 Instance via Launch Template
  1. Langkah awal dapat dimulai dengan mendeskripsikan launch template yang sudah ada via AWS CLI. Dapat menjalankan command berikut:

     aws ec2 describe-launch-templates --output yaml  
    

    Image

  2. Menjalankan EC dari launch template yang sudah didefinisikan seperti poin di atas. Pada contoh ini saya menjalankan EC2 dari launch template sebanyak 1 buah dan saya beri tag name ec2-awscli-demo. Contoh commandnya sebagai berikut:

     aws ec2 run-instance \
     --launch-template LaunchTemplateId=[launch_template_name] \
     --count 1 \
     --tag-specifications 'ResourceType=instance,Tags=[{Key=Name,Value=ec2-awscli-demo}]'  
    

    Image

  3. Untuk verifikasi dapat memastikan via AWS Web Console. Pastikan instance yang dijalankan via AWS CLI sudah tampil dan running

    Image

Memberhentikan atau Stop EC2 Instance yang Berjalan

Selain dapat menjalankan instance, AWS CLI juga dapat kita gunakan untuk administrasi memberhentikan atau stop EC2 instance yang berjalan.

Misalkan EC2 instance sedang tidak digunakan oleh tim Developer, untuk sementara EC2 instance dapat dimatikan dan nantinya dijalankan kembali jika diperlukan.

Berikut langkah langkah untuk memberhentikan atau stop EC2 instance via AWS CLI:

  1. Langkah dapat dimulai dengan mendeskripsikan instance yang ada atau sudah dikonfigurasi di AWS. Pada contoh ini saya mendeskripsikan instance dengan melakukan filter hanya query instance ID dan tag name yang ada di instance. Contoh command-nya sebagai berikut:

     aws ec2 describe-instances \
     --query 'Reservations[*].Instances[*].{Instance:InstanceId,Name:Tags[?Key==`Name`]}' \
     --output yaml  
    

    Image

  2. Stop intance dengan mereferensikan instance id dari instance. Contohnya seperti berikut

     aws ec2 stop-instances --instance-id [id_instance]  
    

    Image

  3. Untuk verifikasi dapat memastikan via AWS Web Console. Pastikan instance yang diberhentikan via AWS CLI sudah dalam kondisi berhenti/stopped

    Image

Terminate atau menghapus EC2 Instance

Yang terakhir akan saya coba jelaskan pada artikel ini adalah cara menghapus atau terminate EC2 instance yang sudah tidak digunakan.

Mungkin pada suata kasus ditemukan kondisi instance yang sudah tidak digunakan lagi misal tidak digunakan untuk development atau staging. Salah 1 cara terminate nya dapat menghapus menggunakan AWS CLI.

Berikut langkah langkahnya:

  1. Langkah awal kurang lebih sama dengan proses memberhentikan AWS EC2 instance di atas. Dapat dengan mendescribe atau mendefinisikan EC2 instance yang berjalan

  2. Pada beberapa kasus atau contoh, EC2 instance dapat diaktifkan atau di-enable termination protection, yang fungsinya adalah untuk mencegah instance tidak sengaja terhapus atau terminated atau saat memerlukan validasi tambahan sebelum terminate instance. Jika ditemukan hal seperti ini dapat menjalankan command berikut sebelum terminate instance tujuannya agar termination protection di-disable. Jika tidak ada termination yang diaktifkan atau enable, dapat langsung menjalankan perintah pada poin berikutnya

     aws ec2 modify-instance-attribute \
     --instance-id [id_instance] \
     --no-disable-api-termination  
    
  3. Selanjutnya adalah menjalankan command untuk terminate instance. Contoh command-nya sebagai berikut

     aws ec2 terminate-instances --instance-id [id_instance]  
    

    Image

  4. Untuk verifikasi dapat memastikan via AWS Web Console. Pastikan instance yang di-termiante atau dihapus via AWS CLI sudah dalam kondisi terminated

    Image

CLI Reference terkait AWS CLI khususnya EC2 dapat dilihat di dokumentasi AWS berikut:

AWS CLI EC2 Reference

Sekian informasi singkat mengenai langkah langkah administrasi sederhana AWS EC2 menggunakan AWS CLI.
Semoga bermanfaat.

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout /  Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout /  Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout /  Ubah )

Connecting to %s

Situs yang Didukung WordPress.com.

Atas ↑

%d blogger menyukai ini: