Wir haben das Kommende end-of-support für AWS SDK für JavaScript v2 angekündigt
Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Verwendung von Elastic IP-Adressen in Amazon EC2
Dieses Node.js-Codebeispiel zeigt:
So fragen Sie Beschreibungen Ihrer Elastic IP-Adressen ab.
So ordnen Sie eine Elastic IP-Adresse zu und geben sie frei.
So verknüpfen Sie eine Elastic IP-Adresse mit einer EC2 Amazon-Instance.
Das Szenario
Eine Elastic IP-Adresse ist eine statische IP-Adresse, die für dynamisches Cloud Computing konzipiert ist. Ihrem AWS Konto ist eine Elastic IP-Adresse zugeordnet. Es ist eine öffentliche IP-Adresse, die aus dem Internet erreichbar ist. Wenn Ihre Instance keine öffentliche IP-Adresse hat, können Sie eine Elastic IP-Adresse mit der Instance verknüpfen, damit diese mit dem Internet kommunizieren kann.
In diesem Beispiel verwenden Sie eine Reihe von Node.js -Modulen, um mehrere EC2 Amazon-Operationen mit Elastic IP-Adressen durchzuführen. Die Module von Node.js verwenden das SDK für JavaScript die Verwaltung von Elastic IP-Adressen mithilfe der folgenden Methoden der EC2 Amazon-Client-Klasse:
Weitere Informationen zu Elastic IP-Adressen in Amazon EC2 finden Sie unter Elastic IP Addresses im EC2 Amazon-Benutzerhandbuch oder Elastic IP-Adressen im EC2 Amazon-Benutzerhandbuch.
Erforderliche Aufgaben
Zum Einrichten und Ausführen dieses Beispiels schließen Sie zunächst diese Aufgaben ab:
Installieren Sie Node.js. Weitere Informationen über die Installation von Node.js finden Sie auf der Node.js-Website
. Erstellen Sie eine freigegebene Konfigurationsdatei mit Ihren Anmeldeinformationen. Weitere Informationen zum Bereitstellen einer Datei mit gemeinsam genutzten Anmeldeinformationen finden Sie unter Laden der Anmeldeinformationen in Node.js aus der freigegebenen Anmeldeinformationsdatei.
Erstellen Sie eine EC2 Amazon-Instance. Weitere Informationen zum Erstellen von EC2 Amazon-Instances finden Sie unter EC2 Amazon-Instances im EC2 Amazon-Benutzerhandbuch oder EC2 Amazon-Instances im EC2 Amazon-Benutzerhandbuch.
Beschreiben von Elastic IP-Adressen
Erstellen Sie ein Node.js-Modul mit dem Dateinamen ec2_describeaddresses.js
. Stellen Sie sicher, dass Sie das SDK, wie zuvor dargestellt, konfigurieren. Um auf Amazon zuzugreifen EC2, erstellen Sie ein AWS.EC2
Serviceobjekt. Erstellen Sie ein JSON-Objekt, das als Parameter übergeben werden soll, das die Adressen filtert, die von denen in Ihrer VPC zurückgegeben werden. Um die Beschreibungen aller Ihrer Elastic IP-Adressen abzurufen, lassen Sie einen Filter von der Parameter-JSON weg. Rufen Sie dann die describeAddresses
Methode des EC2 Amazon-Serviceobjekts auf.
// 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));
}
});
Um das Beispiel auszuführen, geben Sie Folgendes in der Befehlszeile ein.
node ec2_describeaddresses.js
Diesen Beispielcode finden Sie hier auf GitHub
Zuweisen und Zuordnen einer Elastic IP-Adresse zu einer Amazon-Instance EC2
Erstellen Sie ein Node.js-Modul mit dem Dateinamen ec2_allocateaddress.js
. Stellen Sie sicher, dass Sie das SDK, wie zuvor dargestellt, konfigurieren. Um auf Amazon zuzugreifen EC2, erstellen Sie ein AWS.EC2
Serviceobjekt. Erstellen Sie ein JSON-Objekt für die Parameter, die zum Zuweisen einer Elastic IP-Adresse verwendet werden, mit dem in diesem Fall angegeben wird, dass es sich bei der Domain
um eine VPC handelt. Rufen Sie die allocateAddress
Methode des EC2 Amazon-Serviceobjekts auf.
Bei erfolgreichem Aufruf verfügt der data
-Parameter der Callback-Funktion über eine AllocationId
-Eigenschaft, die die zugewiesene Elastic IP-Adresse identifiziert.
Erstellen Sie ein JSON-Objekt für die Parameter, die verwendet werden, um einer EC2 Amazon-Instance eine Elastic IP-Adresse zuzuordnen, einschließlich der Adresse AllocationId
von der neu zugewiesenen Adresse und der Adresse InstanceId
der EC2 Amazon-Instance. Rufen Sie dann die associateAddresses
Methode des EC2 Amazon-Serviceobjekts auf.
// 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);
}
});
}
});
Um das Beispiel auszuführen, geben Sie Folgendes in der Befehlszeile ein.
node ec2_allocateaddress.js
Diesen Beispielcode finden Sie hier auf GitHub
Freigeben einer Elastic IP-Adresse
Erstellen Sie ein Node.js-Modul mit dem Dateinamen ec2_releaseaddress.js
. Stellen Sie sicher, dass Sie das SDK, wie zuvor dargestellt, konfigurieren. Um auf Amazon zuzugreifen EC2, erstellen Sie ein AWS.EC2
Serviceobjekt. Erstellen Sie ein JSON-Objekt für die Parameter, die zum Freigeben einer Elastic IP-Adresse verwendet werden, die in diesem Fall die AllocationId
für die Elastic IP-Adresse angeben. Durch die Freigabe einer Elastic IP-Adresse wird sie auch von jeder EC2 Amazon-Instance getrennt. Rufen Sie die releaseAddress
Methode des EC2 Amazon-Serviceobjekts auf.
// 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");
}
});
Um das Beispiel auszuführen, geben Sie Folgendes in der Befehlszeile ein.
node ec2_releaseaddress.js
Diesen Beispielcode finden Sie hier auf GitHub