Skip to main content
  1. Posts/

Launch Instance Amazon EC2

·3 mins·
aws aws
Table of Contents

Tutorial ini akan memandu Anda untuk membuat (meluncurkan) instance EC2 di AWS. Anda dapat meluncurkan instance Linux menggunakan AWS Management Console atau melalui AWS CLI. Pada bagian ini kita akan menggunakan AWS Management Console.

Menggunakan AWS Management Console
#

  1. Buka AWS Console Kunjungi Amazon EC2 Console.

  2. Pilih Launch Instance Di halaman EC2 Dashboard, klik tombol Launch instance

    launch instance

  3. Beri Nama Instance Masukkan nama untuk instance yang akan dibuat.

  4. Pilih OS Image (Amazon Machine Image) Pilih sistem operasi yang diinginkan.

    select image

  5. Pilih Instance Type dan Key Pair

    • Tentukan instance type sesuai kebutuhan sumber daya (CPU, RAM).
    • Pilih key pair untuk autentikasi SSH.
      select keypair
    Jika belum memiliki key pair, Anda dapat membuat key pair atau pilih Create new key pair.
  6. Konfigurasi Network Settings

    • Tentukan subnet (private/public) sesuai Availability Zone.
    • Buat security group baru atau pilih yang sudah ada.
      select sg
  7. Atur Storage

    • Tentukan kapasitas storage sesuai kebutuhan.
    • Anda juga dapat menambahkan volume tambahan.
      setting storage
  8. Advanced Settings (Opsional) Biarkan pengaturan default jika tidak diperlukan pengaturan lanjutan.

  9. Tentukan Jumlah Instance dan Luncurkan

    • Masukkan jumlah instance yang ingin dibuat.
    • Klik Launch instance.
      tentukan jumlah instance

Menggunakan AWS CLI
#

  1. Membuat Key Pair (jika belum ada)

Gunakan perintah berikut untuk membuat key pair baru dan menyimpannya ke folder ~/.ssh:

aws ec2 create-key-pair \       
   --key-name demo-app \
   --query 'KeyMaterial' --output text > ~/.ssh/demo-app
  1. Meluncurkan Instance

Untuk meluncurkan instance EC2, gunakan perintah run-instances. Contoh berikut menggunakan security group default:

SecurityGroups=$(aws ec2 describe-security-groups \
  --filters "Name=group-name,Values=default" \
  --query "SecurityGroups[*].GroupId" --output text)

aws ec2 run-instances \
    --image-id ami-0f60ebc551a693514 \
    --instance-type t3.micro \
    --key-name demo-app \
    --security-group-ids $SecurityGroups \
    --associate-public-ip-address \
    --disable-api-termination \
    --instance-initiated-shutdown-behavior stop \
    --block-device-mappings '{"DeviceName":"/dev/sda1","Ebs":{"Encrypted":false,"DeleteOnTermination":true,"VolumeSize":30,"VolumeType":"gp3"}}' \
    --tag-specifications 'ResourceType=instance,Tags=[{Key=Name,Value=MyServer},{Key=Environment,Value=Production},{Key=Owner,Value=TeamA}]'

Penjelasan opsi penting:

  • --image-id : Menentukan AMI (Amazon Machine Image) yang digunakan.
  • --instance-type : Menentukan tipe instance (spesifikasi CPU, RAM).
  • --key-name : Menentukan key pair SSH untuk login ke instance.
  • --security-group-ids : Menentukan security group (firewall inbound/outbound instance).
  • --associate-public-ip-address : Memberikan alamat IP publik otomatis ke instance (untuk akses internet).
  • --disable-api-termination : Mencegah penghapusan (terminate) via API secara tidak sengaja.
  • --instance-initiated-shutdown-behavior : Saat OS dimatikan dari dalam, instance akan stop, bukan terminate.
  • --block-device-mappings : Konfigurasi storage (EBS Volume).
  • --tag-specifications : Menambahkan tag metadata pada instance.

Menentukan Subnet (Private IP, Tanpa Public IP)
#

Jika ingin membuat instance di subnet tertentu dan tidak diberi IP publik:

aws ec2 run-instances \
    --image-id ami-0abcdef1234567890 \
    --instance-type t2.micro \
    --subnet-id subnet-08fc749671b2d077c \
    --no-associate-public-ip-address \
    --key-name MyKeyPair

Meluncurkan Instance dengan Volume Tambahan
#

Gunakan --block-device-mappings dengan file JSON eksternal:

aws ec2 run-instances \
    --image-id ami-0abcdef1234567890 \
    --instance-type t2.micro \
    --subnet-id subnet-08fc749671b2d077c \
    --key-name MyKeyPair \
    --block-device-mappings file://mapping.json

Contoh isi mapping.json:

[
    {
        "DeviceName": "/dev/sdh",
        "Ebs": {
            "VolumeSize": 100
        }
    }
]

Meluncurkan Instance dengan User Data
#

Untuk membuat 1 instance dan menjalankan script awal menggunakan user-data:

aws ec2 run-instances \
    --image-id ami-0abcdef1234567890 \
    --instance-type t2.micro \
    --count 1 \
    --subnet-id subnet-08fc749671b2d077c \
    --key-name MyKeyPair \
    --user-data file://my_script.txt

Related

Add Security Headers CloudFront
·2 mins
aws aws
Request ACM Certificate dengan Validasi Email
·1 min
aws aws
Request Public Certificate dengan ACM
·1 min
aws aws
Setting Alternate Domain Cloudfront
·2 mins
aws aws
Add Function di Amazon CloudFront
·2 mins
aws aws
Setting static website Amazon S3
·2 mins
aws aws