Menggunakan Alamat IP Elastis di Amazon EC2 - AWS SDK for JavaScript

Kami mengumumkan yang akan datang end-of-support untuk AWS SDK for JavaScript v2. Kami menyarankan Anda bermigrasi ke AWS SDK for JavaScript v3. Untuk tanggal, detail tambahan, dan informasi tentang cara bermigrasi, silakan merujuk ke pengumuman tertaut.

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

Menggunakan Alamat IP Elastis di Amazon EC2

JavaScript code example that applies to Node.js execution

Contoh kode Node.js ini menunjukkan:

  • Cara mengambil deskripsi alamat IP Elastis Anda.

  • Cara mengalokasikan dan melepaskan alamat IP Elastis.

  • Cara mengaitkan alamat IP Elastis dengan instans Amazon EC2.

Skenario

Alamat IP elastis adalah alamat IP statis yang dirancang untuk komputasi awan dinamis. Alamat IP Elastis dikaitkan dengan AWS akun Anda. Ini adalah alamat IP publik, yang dapat dijangkau dari Internet. Jika instans Anda tidak memiliki alamat IP publik, Anda dapat mengaitkan alamat IP Elastis dengan instans Anda untuk mengaktifkan komunikasi dengan Internet.

Dalam contoh ini, Anda menggunakan serangkaian modul Node.js untuk melakukan beberapa operasi Amazon EC2 yang melibatkan alamat IP Elastis. Modul Node.js menggunakan SDK for JavaScript untuk mengelola alamat IP Elastic dengan menggunakan metode kelas klien Amazon EC2 berikut:

Untuk informasi selengkapnya tentang alamat IP Elastis di Amazon EC2, lihat Alamat IP Elastis di Panduan Pengguna Amazon EC2 atau Alamat IP Elastis di Panduan Pengguna Amazon EC2.

Tugas Prasyarat

Untuk mengatur dan menjalankan contoh ini, pertama-tama selesaikan tugas-tugas ini:

  • Instal Node.js. Untuk informasi selengkapnya tentang menginstal Node.js, lihat situs web Node.js.

  • Buat file konfigurasi bersama dengan kredensi pengguna Anda. Untuk informasi selengkapnya tentang menyediakan file kredensial bersama, lihat. Memuat Kredensial di Node.js dari File Kredensial Bersama

  • Buat instans Amazon EC2. Untuk informasi selengkapnya tentang membuat instans Amazon EC2, lihat Instans Amazon EC2 di Panduan Pengguna Amazon EC2 atau Instans Amazon EC2 di Panduan Pengguna Amazon EC2.

Menjelaskan Alamat IP Elastis

Buat modul Node.js dengan nama fileec2_describeaddresses.js. Pastikan untuk mengkonfigurasi SDK seperti yang ditunjukkan sebelumnya. Untuk mengakses Amazon EC2, buat objek AWS.EC2 layanan. Buat objek JSON untuk diteruskan sebagai parameter, memfilter alamat yang dikembalikan oleh yang ada di VPC Anda. Untuk mengambil deskripsi semua alamat IP Elastis Anda, hilangkan filter dari parameter JSON. Kemudian panggil describeAddresses metode objek layanan Amazon EC2.

// Load the AWS SDK for Node.js var AWS = require("aws-sdk"); // Set the region AWS.config.update({ region: "REGION" }); // Create EC2 service object var ec2 = new AWS.EC2({ apiVersion: "2016-11-15" }); var params = { Filters: [{ Name: "domain", Values: ["vpc"] }], }; // Retrieve Elastic IP address descriptions ec2.describeAddresses(params, function (err, data) { if (err) { console.log("Error", err); } else { console.log("Success", JSON.stringify(data.Addresses)); } });

Untuk menjalankan contoh, ketik berikut ini di baris perintah.

node ec2_describeaddresses.js

Kode contoh ini dapat ditemukan di sini GitHub.

Mengalokasikan dan Mengaitkan Alamat IP Elastis dengan Instans Amazon EC2

Buat modul Node.js dengan nama fileec2_allocateaddress.js. Pastikan untuk mengkonfigurasi SDK seperti yang ditunjukkan sebelumnya. Untuk mengakses Amazon EC2, buat objek AWS.EC2 layanan. Buat objek JSON untuk parameter yang digunakan untuk mengalokasikan alamat IP Elastis, yang dalam hal ini menentukan Domain adalah VPC. Panggil allocateAddress metode objek layanan Amazon EC2.

Jika panggilan berhasil, data parameter ke fungsi callback memiliki AllocationId properti yang mengidentifikasi alamat IP Elastis yang dialokasikan.

Buat objek JSON untuk parameter yang digunakan untuk mengaitkan alamat IP Elastis ke instans Amazon EC2, termasuk dari alamat AllocationId yang baru dialokasikan dan InstanceId instans Amazon EC2. Kemudian panggil associateAddresses metode objek layanan Amazon EC2.

// Load the AWS SDK for Node.js var AWS = require("aws-sdk"); // Set the region AWS.config.update({ region: "REGION" }); // Create EC2 service object var ec2 = new AWS.EC2({ apiVersion: "2016-11-15" }); var paramsAllocateAddress = { Domain: "vpc", }; // Allocate the Elastic IP address ec2.allocateAddress(paramsAllocateAddress, function (err, data) { if (err) { console.log("Address Not Allocated", err); } else { console.log("Address allocated:", data.AllocationId); var paramsAssociateAddress = { AllocationId: data.AllocationId, InstanceId: "INSTANCE_ID", }; // Associate the new Elastic IP address with an EC2 instance ec2.associateAddress(paramsAssociateAddress, function (err, data) { if (err) { console.log("Address Not Associated", err); } else { console.log("Address associated:", data.AssociationId); } }); } });

Untuk menjalankan contoh, ketik berikut ini di baris perintah.

node ec2_allocateaddress.js

Kode contoh ini dapat ditemukan di sini GitHub.

Melepaskan Alamat IP Elastis

Buat modul Node.js dengan nama fileec2_releaseaddress.js. Pastikan untuk mengkonfigurasi SDK seperti yang ditunjukkan sebelumnya. Untuk mengakses Amazon EC2, buat objek AWS.EC2 layanan. Buat objek JSON untuk parameter yang digunakan untuk melepaskan alamat IP Elastis, yang dalam hal ini menentukan AllocationId untuk alamat IP Elastis. Melepaskan alamat IP Elastis juga memisahkannya dari instans Amazon EC2 apa pun. Panggil releaseAddress metode objek layanan Amazon EC2.

// Load the AWS SDK for Node.js var AWS = require("aws-sdk"); // Set the region AWS.config.update({ region: "REGION" }); // Create EC2 service object var ec2 = new AWS.EC2({ apiVersion: "2016-11-15" }); var paramsReleaseAddress = { AllocationId: "ALLOCATION_ID", }; // Disassociate the Elastic IP address from EC2 instance ec2.releaseAddress(paramsReleaseAddress, function (err, data) { if (err) { console.log("Error", err); } else { console.log("Address released"); } });

Untuk menjalankan contoh, ketik berikut ini di baris perintah.

node ec2_releaseaddress.js

Kode contoh ini dapat ditemukan di sini GitHub.