Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Membuat VPC IPv4 dan subnet menggunakanAWS CLI
Contoh berikut menggunakan perintah AWS CLI untuk membuat VPC nondefault dengan blok CIDR IPv4, dan subnet publik dan pribadi di VPC. Setelah Anda membuat VPC dan subnet, Anda dapat meluncurkan sebuah instans di subnet publik dan menghubungkannya. Untuk memulai, Anda harus terlebih dahulu menginstal dan mengkonfigurasi AWS CLI. Untuk informasi lebih lanjut, lihat Memasang AWS CLI.
Anda akan membuat yang sumber daya AWS berikut:
-
VPC
-
Dua subnet
-
Gateway internet
-
Tabel rute
-
Instans EC2
Tugas
Langkah 1: Buat VPC dan subnet
Langkah pertama adalah membuat VPC dan dua subnet. Contoh ini menggunakan blok CIDR 10.0.0.0/16
untuk VPC, tapi Anda bisa memilih blok CIDR yang berbeda. Untuk informasi selengkapnya, lihat Ukuran VPC.
Untuk membuat VPC dan subnet menggunakan AWS CLI
-
Membuat VPC dengan
10.0.0.0/16
Blok CIDR menggunakan berikutmembuat-vpcperintah.aws ec2 create-vpc --cidr-block
10.0.0.0/16
--query Vpc.VpcId --output textPerintah mengembalikan ID dari VPC baru. Berikut adalah contohnya.
vpc-2f09a348
-
Setelah menggunakan ID VPC dari langkah sebelumnya, buat subnet dengan
10.0.1.0/24
Blok CIDR menggunakan berikutmembuat-subnetperintah.aws ec2 create-subnet --vpc-id
vpc-2f09a348
--cidr-block10.0.1.0/24
-
Buat subnet kedua di VPC Anda dengan blok CIDR
10.0.0.0/24
.aws ec2 create-subnet --vpc-id
vpc-2f09a348
--cidr-block10.0.0.0/24
Langkah 2: Jadikan subnet Anda publik
Setelah Anda membuat VPC dan subnet, Anda dapat membuat salah satu subnet menjadi subnet publik dengan melampirkan gateway internet ke VPC Anda, membuat tabel rute kustom, dan mengonfigurasi perutean untuk subnet tersebut ke gateway internet.
Untuk membuat subnet Anda menjadi subnet publik
-
Membuat gateway internet menggunakan berikutgateway internetperintah.
aws ec2 create-internet-gateway --query InternetGateway.InternetGatewayId --output text
Perintah mengembalikan ID dari gateway internet baru. Berikut adalah contohnya.
igw-1ff7a07b
-
Setelah menggunakan ID dari langkah sebelumnya, lampirkan gateway internet ke VPC Anda menggunakan yang berikut iniattach-internet-gatewayperintah.
aws ec2 attach-internet-gateway --vpc-id
vpc-2f09a348
--internet-gateway-idigw-1ff7a07b
Membuat tabel rute kustom untuk VPC Anda menggunakan tabel berikutbuat-route-tableperintah.
aws ec2 create-route-table --vpc-id
vpc-2f09a348
--query RouteTable.RouteTableId --output textPerintah mengembalikan ID dari tabel rute baru. Berikut adalah contohnya.
rtb-c1c8faa6
-
Membuat sebuah rute di tabel rute yang mengarahkan semua traffic (
0.0.0.0/0
) ke gateway internet menggunakan berikutmembuat-ruteperintah.aws ec2 create-route --route-table-id
rtb-c1c8faa6
--destination-cidr-block0.0.0.0/0
--gateway-idigw-1ff7a07b
-
(Opsional) Untuk mengkonfirmasi bahwa rute Anda telah dibuat dan sedang aktif, Anda dapat mendeskripsikan tabel rute menggunakan yang berikut inimendeskripsikan tabel ruteperintah.
aws ec2 describe-route-tables --route-table-id
rtb-c1c8faa6
{ "RouteTables": [ { "Associations": [], "RouteTableId": "rtb-c1c8faa6", "VpcId": "vpc-2f09a348", "PropagatingVgws": [], "Tags": [], "Routes": [ { "GatewayId": "local", "DestinationCidrBlock": "10.0.0.0/16", "State": "active", "Origin": "CreateRouteTable" }, { "GatewayId": "igw-1ff7a07b", "DestinationCidrBlock": "0.0.0.0/0", "State": "active", "Origin": "CreateRoute" } ] } ] }
Tabel rute saat ini tidak terkait dengan subnet apapun. Anda harus mengaitkannya dengan sebuah subnet di VPC Anda sehingga lalu lintas dari subnet itu diarahkan ke gateway internet. Gunakan berikutmenjelaskan-subnetperintah untuk mendapatkan ID subnet. Parameter
--filter
pilihan membatasi subnet untuk VPC baru Anda saja, dan--query
opsi hanya mengembalikan ID subnet dan blok CIDR mereka.aws ec2 describe-subnets --filters "Name=vpc-id,Values=
vpc-2f09a348
" --query "Subnets[*].{ID:SubnetId,CIDR:CidrBlock}"[ { "CIDR": "10.0.1.0/24", "ID": "subnet-b46032ec" }, { "CIDR": "10.0.0.0/24", "ID": "subnet-a46032fc" } ]
Anda dapat memilih subnet mana yang akan dikaitkan dengan tabel rute kustom, misalnya,
subnet-b46032ec
, dan mengasosiasikannya menggunakantabel ruteperintah. Subnet ini adalah subnet publik Anda.aws ec2 associate-route-table --subnet-id
subnet-b46032ec
--route-table-idrtb-c1c8faa6
-
(Opsional) Anda dapat memodifikasi perilaku pendudukan IP publik atas subnet Anda sehingga instans yang diluncurkan ke subnet secara otomatis menerima alamat IP publik menggunakan yang berikut inimemodifikasi subnet-attributeperintah. Jika tidak, kaitkan alamat IP Elastis dengan instans Anda setelah peluncuran sehingga instans dapat dijangkau dari internet.
aws ec2 modify-subnet-attribute --subnet-id
subnet-b46032ec
--map-public-ip-on-launch
Langkah 3: Luncurkan sebuah instans di subnet Anda
Untuk menguji bahwa subnet Anda bersifat publik dan bahwa instans di subnet dapat diakses melalui internet, luncurkan sebuah instance ke subnet publik Anda dan sambungkan ke sana. Pertama-tama, Anda harus membuat grup keamanan untuk dikaitkan dengan instans Anda, dan sebuah pasangan kunci yang akan membuat Anda terhubung ke instans Anda. Untuk informasi lain tentang grup keamanan, lihat Mengontrol lalu lintas ke sumber daya menggunakan grup keamanan. Untuk informasi selengkapnya tentang pasangan kunci, lihat Pasangan Kunci Amazon EC2 di Panduan Pengguna Amazon EC2 untuk Instans Linux.
Untuk meluncurkan dan terhubung ke sebuah instans di subnet publik Anda
Buat pasangan kunci dan gunakan opsi
--query
dan opsi teks--output
untuk menyalurkan kunci pribadi Anda secara langsung ke dalam sebuah file dengan ekstensi.pem
.aws ec2 create-key-pair --key-name
MyKeyPair
--query "KeyMaterial" --output text >MyKeyPair.pem
Dalam contoh ini, Anda meluncurkan instans Amazon Linux. Jika Anda menggunakan klien SSH pada komputer dengan sistem operasi Linux atau Mac OS X untuk tersambung ke instans Anda, gunakan perintah berikut untuk mengatur izin file kunci pribadi Anda sehingga hanya Anda yang dapat membacanya.
chmod 400
MyKeyPair.pem
Buat grup keamanan di VPC Anda menggunakan perintah create-security-group.
aws ec2 create-security-group --group-name
SSHAccess
--description "Security group for SSH access
" --vpc-idvpc-2f09a348
{ "GroupId": "sg-e1fb8c9a" }
Tambahkan aturan yang mengizinkan akses SSH dari mana saja menggunakan perintah authorize-security-group-ingress.
aws ec2 authorize-security-group-ingress --group-id
sg-e1fb8c9a
--protocoltcp
--port22
--cidr0.0.0.0/0
catatan Jika Anda menggunakan
0.0.0.0/0
, Anda akan mengaktifkan semua alamat IPv4 untuk mengakses instans Anda menggunakan SSH. Ini dapat diterima untuk latihan singkat ini, namun dalam produksi, hanya otorisasi alamat atau rentang alamat IP tertentu.Luncurkan sebuah instans ke dalam subnet publik Anda, menggunakan grup keamanan dan pasangan kunci yang telah Anda buat. Dalam output, perhatikan ID instans untuk instans Anda.
aws ec2 run-instances --image-id
ami-a4827dc9
--count 1 --instance-typet2.micro
--key-nameMyKeyPair
--security-group-idssg-e1fb8c9a
--subnet-idsubnet-b46032ec
catatan Dalam contoh ini, AMI adalah Amazon Linux AMI di Wilayah US East (N. Virginia). Jika Anda berada di Wilayah yang berbeda, Anda memerlukan ID AMI untuk mendapatkan AMI yang sesuai di Wilayah Anda. Untuk informasi lebih lanjut, lihat Temukan Linux AMI di Panduan Pengguna Amazon EC2 untuk Instans Linux.
-
Instans Anda harus berada dalam status
running
untuk terhubung ke sana. Gunakan perintah berikut untuk mendeskripsikan status dan alamat IP instans Anda.aws ec2 describe-instances --instance-id
i-0146854b7443af453
--query "Reservations[*].Instances[*].{State:State.Name,Address:PublicIpAddress}"Berikut ini adalah keluaran contoh.
[ [ { "State": "running", "Address": "52.87.168.235" } ] ]
Ketika instans Anda dalam status sedang berjalan, Anda dapat terhubung dengan itu menggunakan klien SSH pada komputer Linux atau Mac OS X dengan menggunakan perintah berikut:
ssh -i "
MyKeyPair.pem
"ec2-user@52.87.168.235
Jika Anda tersambung dari komputer Windows, gunakan instruksi berikut ini: Menghubungkan ke instance Linux Anda dari Windows menggunakanPuTTY.
Langkah 4: Bersihkan
Setelah memverifikasi bahwa Anda dapat terhubung ke instans Anda, Anda dapat menghentikannya jika Anda tidak lagi membutuhkannya. Untuk melakukannya, gunakan perintah terminate-instances. Untuk menghapus sumber daya lain yang telah Anda buat dalam contoh ini, gunakan perintah berikut dalam urutan yang tercantum:
-
Hapus grup keamanan Anda:
aws ec2 delete-security-group --group-id
sg-e1fb8c9a
-
Hapus subnet Anda:
aws ec2 delete-subnet --subnet-id
subnet-b46032ec
aws ec2 delete-subnet --subnet-id
subnet-a46032fc
-
Hapus tabel rute kustom Anda:
aws ec2 delete-route-table --route-table-id
rtb-c1c8faa6
-
Lepaskan gateway internet Anda dari VPC Anda:
aws ec2 detach-internet-gateway --internet-gateway-id
igw-1ff7a07b
--vpc-idvpc-2f09a348
-
Hapus gateway internet Anda:
aws ec2 delete-internet-gateway --internet-gateway-id
igw-1ff7a07b
-
Hapus VPC Anda:
aws ec2 delete-vpc --vpc-id
vpc-2f09a348