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.
Einen AWS Cloud Map Namespace zur Gruppierung von Anwendungsdiensten erstellen
Sie können einen Namespace erstellen, um Dienste für Ihre Anwendung unter einem benutzerfreundlichen Namen zu gruppieren, der die Erkennung von Anwendungsressourcen über API-Aufrufe oder DNS-Abfragen ermöglicht.
Optionen für die Instanzensuche
In der folgenden Tabelle sind die verschiedenen Optionen zur Instanzerkennung AWS Cloud Map und der entsprechende Namespace-Typ zusammengefasst, den Sie je nach den Diensten und der Konfiguration Ihrer Anwendung erstellen können.
Namespace-Typ |
Methode zur Erkennung von Instanzen |
Funktionsweise |
Zusätzliche Informationen |
HTTP |
API-Aufrufe |
Ressourcen in Ihrer Anwendung können andere Ressourcen nur ermitteln, indem sie die DiscoverInstances API aufrufen. |
|
Privates DNS |
API-Aufrufe und DNS-Abfragen in einer VPC |
Ressourcen in Ihrer Anwendung können andere Ressourcen ermitteln, indem sie die DiscoverInstances API aufrufen und die Nameserver in der privaten Route 53-Hosting-Zone abfragen, die automatisch erstellt wird. AWS Cloud Map
Die von erstellte gehostete Zone AWS Cloud Map hat denselben Namen wie der Namespace und enthält DNS-Einträge mit Namen im Format Dienstname. Namespace-Name.
Route 53 Resolver löst DNS-Abfragen, die ihren Ursprung in der VPC haben, mithilfe von Datensätzen in der privaten Hosting-Zone auf. Wenn die private gehostete Zone keinen Datensatz enthält, der dem Domänennamen in einer DNS-Abfrage entspricht, antwortet Route 53 auf die Anfrage mit NXDOMAIN (nicht vorhandene Domäne).
|
|
Öffentliches DNS |
API-Aufrufe und öffentliche DNS-Abfragen |
Ressourcen in Ihrer Anwendung können andere Ressourcen ermitteln, indem sie die DiscoverInstances API aufrufen und die Nameserver in der öffentlichen Route 53-Hosting-Zone abfragen, AWS Cloud Map die automatisch erstellt wird.
Die öffentlich gehostete Zone hat denselben Namen wie der Namespace und enthält DNS-Einträge mit Namen im Format Dienstname. Namespace-Name.
Der Namespace-Name muss in diesem Fall ein Domainname sein, den Sie registriert haben.
|
|
Verfahren
Sie können diesen Schritten folgen, um einen Namespace mit dem AWS CLI AWS Management Console, oder dem SDK für Python zu erstellen.
- AWS Management Console
-
Melden Sie sich bei der an AWS Management Console und öffnen Sie die AWS Cloud Map Konsole unter https://console.aws.amazon.com/cloudmap/.
-
Wählen Sie Create namespace (Namespace erstellen) aus.
-
Geben Sie als Namespace-Name einen Namen ein, der zur Erkennung von Instances verwendet wird.
-
Namespaces, die für öffentliche DNS-Abfragen konfiguriert sind, müssen mit einer Top-Level-Domain enden. z. B. .com
.
-
Sie können einen internationalisierten Domänennamen (IDN) angeben, wenn Sie den Namen zuerst in Punycode umwandeln. Informationen zu Onlinekonvertern erhalten Sie, indem Sie eine Internetsuche nach „punycode converter“ durchführen.
Sie können auch einen internationalisierten Domänennamen in Punycode konvertieren, wenn Sie Namespaces programmgesteuert erstellen. Wenn Sie z. B. mit Java arbeiten, können Sie einen Unicode-Wert in Punycode umwandeln, indem Sie die Methode toASCII
der java.net.IDN-Bibliothek verwenden.
-
(Optional) Geben Sie für die Namespace-Beschreibung Informationen über den Namespace ein, die auf der Seite Namespaces und unter Namespace-Informationen angezeigt werden. Sie können diese Informationen verwenden, um einen Namespace einfach zu identifizieren.
-
Bei der Instanzerkennung können Sie zwischen API-Aufrufen, API-Aufrufen und DNS-Abfragen in VPCs und API-Aufrufen und öffentlichen DNS-Abfragen wählen, um jeweils einen HTTP-, privaten DNS- oder öffentlichen DNS-Namespace zu erstellen. Weitere Informationen finden Sie unter Optionen für die Instanzensuche.
Gehen Sie je nach Ihrer Auswahl wie folgt vor.
-
Wenn Sie API-Aufrufe und DNS-Abfragen in VPCs wählen, wählen Sie für VPC eine Virtual Private Cloud (VPC), der Sie den Namespace zuordnen möchten.
-
Wenn Sie API-Aufrufe und DNS-Abfragen in VPCs oder API-Aufrufe und öffentliche DNS-Abfragen wählen, geben Sie für TTL einen numerischen Wert in Sekunden an. Der Wert Time to Live (TTL) bestimmt, wie lange der DNS-Resolver die Informationen für den SOA-DNS-Eintrag (Start of Authority) der Route 53-Hosting-Zone zwischenspeichert, die mit Ihrem Namespace erstellt wurde. Weitere Informationen zu TTL finden Sie unter TTL (Sekunden) im Amazon Route 53 Developer Guide.
-
(Optional) Wählen Sie unter Tags die Option Tags hinzufügen aus und geben Sie dann einen Schlüssel und einen Wert an, um Ihren Namespace zu kennzeichnen. Sie können ein oder mehrere Tags angeben, die Ihrem Namespace hinzugefügt werden sollen. Mithilfe von Tags können Sie Ihre AWS Ressourcen kategorisieren, sodass Sie sie einfacher verwalten können. Weitere Informationen finden Sie unter Verschlagworten Sie Ihre Ressourcen AWS Cloud Map.
-
Wählen Sie Create namespace (Namespace erstellen) aus. Sie können den Status des Vorgangs mithilfe ListOperationsvon anzeigen. Weitere Informationen finden Sie ListOperationsin der AWS Cloud Map API-Referenz
- AWS CLI
-
-
Erstellen Sie einen Namespace mit dem Befehl für den Instance-Discovery-Typ, den Sie bevorzugen (ersetzen Sie die roten
Werte durch Ihre eigenen).
-
Erstellen Sie einen HTTP-Namespace mit. create-http-namespace
Dienstinstanzen, die mit einem HTTP-Namespace registriert wurden, können mithilfe einer DiscoverInstances
Anfrage ermittelt werden, sie können jedoch nicht mithilfe von DNS ermittelt werden.
aws servicediscovery create-http-namespace --name name-of-namespace
-
Erstellen Sie einen privaten Namespace, der auf DNS basiert und nur innerhalb einer bestimmten Amazon VPC sichtbar ist, indem Sie. create-private-dns-namespace
Sie können Instances, die in einem privaten DNS-Namespace registriert wurden, entweder mithilfe einer DiscoverInstances
Anfrage oder mithilfe von DNS ermitteln
aws servicediscovery create-private-dns-namespace --name name-of-namespace
--vpc vpc-xxxxxxxxx
-
Erstellen Sie einen öffentlichen Namespace, der auf DNS basiert und im Internet sichtbar ist, indem Sie. create-public-dns-namespace
Sie können Instances erkennen, die bei einem öffentlichen DNS-Namespace registriert wurden, indem Sie entweder eine DiscoverInstances
-Anforderung oder DNS verwenden.
aws servicediscovery create-public-dns-namespace --name name-of-namespace
- AWS SDK for Python (Boto3)
-
-
Falls Sie es noch nicht Boto3
installiert haben, finden Sie Boto3
hier Anweisungen zur Installation, Konfiguration und Verwendung.
-
Importieren Boto3
und servicediscovery
als Ihren Service verwenden.
import boto3
client = boto3.client('servicediscovery')
-
Erstellen Sie einen Namespace mit dem Befehl für den Instance-Discovery-Typ, den Sie bevorzugen (ersetzen Sie die roten
Werte durch Ihre eigenen):
-
Erstellen Sie einen HTTP-Namespace mit. create_http_namespace()
Dienstinstanzen, die mit einem HTTP-Namespace registriert wurden, können mithilfe von discover_instances()
DNS ermittelt werden, sie können jedoch nicht ermittelt werden.
response = client.create_http_namespace(
Name='name-of-namespace
',
)
# If you want to see the response
print(response)
-
Erstellen Sie einen privaten Namespace, der auf DNS basiert und nur innerhalb einer bestimmten Amazon VPC sichtbar ist, indem Sie. create_private_dns_namespace()
Sie können Instances, die in einem privaten DNS-Namespace registriert wurden, entweder mithilfe von oder discover_instances()
mithilfe von DNS ermitteln
response = client.create_private_dns_namespace(
Name='name-of-namespace
',
Vpc='vpc-1c56417b
',
)
# If you want to see the response
print(response)
-
Erstellen Sie einen öffentlichen Namespace, der auf DNS basiert und im Internet sichtbar ist, indem Sie. create_public_dns_namespace()
Sie können Instanzen, die in einem öffentlichen DNS-Namespace registriert wurden, entweder mithilfe von discover_instances()
oder mithilfe von DNS ermitteln.
response = client.create_public_dns_namespace(
Name='name-of-namespace
',
)
# If you want to see the response
print(response)
-
Beispiel für eine Antwortausgabe
{
'OperationId': 'gv4g5meo7ndmeh4fqskygvk23d2fijwa-k9302yzd',
'ResponseMetadata': {
'...': '...',
},
}
Nächste Schritte
Nachdem Sie einen Namespace erstellt haben, können Sie Dienste im Namespace erstellen, um Anwendungsressourcen zu gruppieren, die zusammen einem bestimmten Zweck in Ihrer Anwendung dienen. Ein Dienst dient als Vorlage für die Registrierung von Anwendungsressourcen als Instanzen. Weitere Informationen zum Erstellen von AWS Cloud Map Diensten finden Sie unterAWS Cloud Map Dienst für eine Anwendungskomponente erstellen.