Schnellstart: Erstellen eines Präfixes für öffentliche IP-Adressen mithilfe von Terraform
Artikel
Sie erhalten Informationen über Präfixe öffentlicher IP-Adressen und darüber, wie Sie diese erstellen, ändern und löschen können. Das Präfix einer öffentlichen IP-Adresse ist ein zusammenhängender Bereich öffentlicher IP-Adressen mit Standard-SKU.
Wenn Sie eine öffentliche IP-Adressressource erstellen, können Sie eine statische öffentliche IP-Adresse aus dem Präfix zuweisen und diese Adresse VMs, Lastenausgleichsmodulen oder anderen Ressourcen zuordnen. Weitere Informationen finden Sie in der Übersicht Präfix für öffentliche IP-Adressen.
Mit Terraform können Sie eine Cloudinfrastruktur definieren, eine Vorschau der Cloudinfrastruktur anzeigen und die Cloudinfrastruktur bereitstellen. Terraform ermöglicht das Erstellen von Konfigurationsdateien mit HCL-Syntax. Mit der HCL-Syntax können Sie den Cloudanbieter (beispielsweise Azure) und die Elemente angeben, aus denen sich Ihre Cloudinfrastruktur zusammensetzt. Nach der Erstellung Ihrer Konfigurationsdateien erstellen Sie einen Ausführungsplan, mit dem Sie eine Vorschau Ihrer Infrastrukturänderungen anzeigen können, bevor diese bereitgestellt werden. Nach der Überprüfung der Änderungen wenden Sie den Ausführungsplan an, um die Infrastruktur bereitzustellen.
In diesem Artikel werden folgende Vorgehensweisen behandelt:
Erstellen eines zufälligen Namens für die Azure-Ressourcengruppe mithilfe von random_pet
Eine Azure-Ressourcengruppe ist ein logischer Container, in dem Azure-Ressourcen bereitgestellt und verwaltet werden.
Terraform
# Random pet resource to generate a unique name for the resource groupresource"random_pet""rg_name" {
prefix = var.resource_group_name_prefix
}
# Create a resource groupresource"azurerm_resource_group""example" {
location = var.resource_group_location
name = random_pet.rg_name.id
}
Erstellen des Präfix einer öffentlichen IP-Adresse
In diesem Abschnitt erstellen Sie mit Azure PowerShell ein zonenredundantes, ein zonenbezogenes und ein nicht zonenbezogenes öffentliches IP-Adressenpräfix.
Die Präfixe in den Beispielen sind wie folgt:
IPv4: /28 (16 Adressen)
IPv6: /124 (16 Adressen)
Weitere Informationen zu verfügbaren Präfixgrößen finden Sie unter Präfixgrößen.
Um ein öffentliches IPv4-IP-Präfix zu erstellen, geben Sie IPv4 als ip_version Wert an. Wenn Sie ein zonenredundantes IPv4-Präfix erstellen möchten, geben Sie ["1", "2", "3"] als zone Wert an.
Terraform
# Create a public IP prefix: IPv4 Zone redundantresource"azurerm_public_ip_prefix""my_ipv4" {
name = "myIPv4"
location = azurerm_resource_group.example.location
resource_group_name = azurerm_resource_group.example.name
ip_version = "IPv4"
prefix_length = 28
zones = ["1", "2", "3"]
}
Um ein öffentliches IPv4-IP-Präfix zu erstellen, geben Sie IPv4 als ip_version Wert an. Wenn Sie ein zonenbezogenes IP-Präfix in Zone 2 erstellen möchten, geben Sie ["2"] als zone Wert an.
Terraform
# Create a public IP prefix: IPv4 Zonalresource"azurerm_public_ip_prefix""my_ipv4_zonal" {
name = "myIPv4Zonal"
location = azurerm_resource_group.example.location
resource_group_name = azurerm_resource_group.example.name
ip_version = "IPv4"
prefix_length = 28
zones = ["2"]
}
Um ein öffentliches IPv4-IP-Präfix zu erstellen, geben Sie IPv4 als ip_version Wert an. Wenn Sie ein nicht zonenbezogenes IP-Präfix erstellen möchten, müssen Sie das zone Feld weglassen.
Terraform
# Create a public IP prefix: IPv4 Non-Zonalresource"azurerm_public_ip_prefix""my_ipv4_non_zonal" {
name = "myIPv4NonZonal"
location = azurerm_resource_group.example.location
resource_group_name = azurerm_resource_group.example.name
ip_version = "IPv4"
prefix_length = 28}
Die Weglassung des zone Felds ist in allen Regionen zulässig.
Die Weglassung des zone Felds ist die Standardauswahl für öffentliche IP-Adressen der SKU „Standard“ in Regionen ohne Verfügbarkeitszonen.
Fügen Sie RoutingPreference=Internet zum tags -Block hinzu, um ein öffentliches IPv4-IP-Präfix zu erstellen, bei dem die Routingeinstellung auf das Internet festgelegt ist.
Terraform
# Create a public IP prefix: IPv4 with Routing Preference set to Internetresource"azurerm_public_ip_prefix""my_ipv4_rp_internet" {
name = "myIPv4RPInternet"
location = azurerm_resource_group.example.location
resource_group_name = azurerm_resource_group.example.name
ip_version = "IPv4"
prefix_length = 28
tags = {
RoutingPreference = "Internet"
}
}
Um ein öffentliches IPv6-IP-Präfix zu erstellen, geben Sie IPv6 als ip_version Wert an. Um ein zonenredundantes IPv6-Präfix zu erstellen, geben Sie ["1", "2", "3"] als zone Wert an.
Terraform
# Create a public IP prefix: IPv6 Zone redundantresource"azurerm_public_ip_prefix""my_ipv6" {
name = "myIpv6"
location = azurerm_resource_group.example.location
resource_group_name = azurerm_resource_group.example.name
ip_version = "IPv6"
prefix_length = 124
zones = ["1", "2", "3"]
}
Um ein öffentliches IPv6-IP-Präfix zu erstellen, geben Sie IPv6 als ip_version Wert an. Um ein zonenredundantes IPv6-Präfix zu erstellen, geben Sie ["2"] als zone Wert an.
Terraform
# Create a public IP prefix: IPv6 Zonalresource"azurerm_public_ip_prefix""my_ipv6_zonal" {
name = "myIpv6Zonal"
location = azurerm_resource_group.example.location
resource_group_name = azurerm_resource_group.example.name
ip_version = "IPv6"
prefix_length = 124
zones = ["2"]
}
Um ein öffentliches IPv6-IP-Präfix zu erstellen, geben Sie IPv6 als ip_version Wert an. Wenn Sie ein nicht zonenbezogenes IP-Präfix erstellen möchten, müssen Sie das zone Feld weglassen.
Terraform
# Create a public IP prefix: IPv6 Non-Zonalresource"azurerm_public_ip_prefix""my_ipv6_non_zonal" {
name = "myIpv6NonZonal"
location = azurerm_resource_group.example.location
resource_group_name = azurerm_resource_group.example.name
ip_version = "IPv6"
prefix_length = 124}
Die Weglassung des zone Felds ist in allen Regionen zulässig.
Die Weglassung des zone Felds ist die Standardauswahl für öffentliche IP-Adressen der SKU „Standard“ in Regionen ohne Verfügbarkeitszonen.
Erstellen einer statischen öffentlichen IP-Adresse aus einem Präfix
Sobald Sie ein Präfix erstellt haben, können Sie statische IP-Adressen aus dem Präfix erstellen. In diesem Abschnitt erfahren Sie, wie Sie ein Präfix erstellen und dann eine Adresse erstellen, die auf das Präfix verweist.
# Create a public IP prefix: IPv4resource"azurerm_public_ip_prefix""my_public_ip_prefix_ipv4" {
name = "myPublicIpPrefix1"
location = azurerm_resource_group.example.location
resource_group_name = azurerm_resource_group.example.name
ip_version = "IPv4"# Default
prefix_length = 28
}
# Create a public IP (IPv4) and specify the public IP prefixresource"azurerm_public_ip""my_public_ip_ipv4" {
name = "myPublicIPIPv4"
location = azurerm_resource_group.example.location
resource_group_name = azurerm_resource_group.example.name
sku = "Standard"
allocation_method = "Static"
ip_version = "IPv4"
public_ip_prefix_id = azurerm_public_ip_prefix.my_public_ip_prefix_ipv4.id
}
Terraform
# Create a public IP prefix: IPv6resource"azurerm_public_ip_prefix""my_public_ip_prefix_ipv6" {
name = "myPublicIpPrefix2"
location = azurerm_resource_group.example.location
resource_group_name = azurerm_resource_group.example.name
ip_version = "IPv6"
prefix_length = 124
}
# Create a public IP (IPv6) and specify the public IP prefixresource"azurerm_public_ip""my_public_ip_ipv6" {
name = "myPublicIPIPv6"
location = azurerm_resource_group.example.location
resource_group_name = azurerm_resource_group.example.name
sku = "Standard"
allocation_method = "Static"
ip_version = "IPv6"
public_ip_prefix_id = azurerm_public_ip_prefix.my_public_ip_prefix_ipv6.id
}
Hinweis
Nur statische öffentliche IP-Adressen, die mit der Standard-SKU erstellt wurden, können aus dem Bereich des Präfix zugewiesen werden. Weitere Informationen zu SKUs für öffentliche IP-Adressen finden Sie unter Öffentliche IP-Adressen.
Löschen eines Präfix
In diesem Abschnitt erfahren Sie, wie Sie ein Präfix an der Befehlszeile löschen.
Wenn Adressen innerhalb des Präfixes mit öffentlichen IP-Adressressourcen verknüpft sind, müssen Sie zuerst die öffentlichen IP-Adressressourcen löschen. Weitere Informationen zum Löschen einer öffentlichen IP-Adresse finden Sie unter Löschen einer öffentlichen IP-Adresse.
Bereinigen von Ressourcen
Wenn Sie die über Terraform erstellten Ressourcen nicht mehr benötigen, führen Sie die folgenden Schritte aus:
Führen Sie terraform plan aus, und geben Sie das Flag destroy an.
Konsole
terraform plan -destroy -out main.destroy.tfplan
Die wichtigsten Punkte:
Durch den Befehl terraform plan wird ein Ausführungsplan erstellt, aber nicht ausgeführt. Stattdessen werden die Aktionen ermittelt, die erforderlich sind, um die in Ihren Konfigurationsdateien angegebene Konfiguration zu erstellen. Mit diesem Muster können Sie überprüfen, ob der Ausführungsplan Ihren Erwartungen entspricht, bevor Sie Änderungen an den eigentlichen Ressourcen vornehmen.
Der optionale Parameter -out ermöglicht die Angabe einer Ausgabedatei für den Plan. Durch die Verwendung des Parameters -out wird sichergestellt, dass genau der von Ihnen überprüfte Plan angewendet wird.
Führen Sie zum Anwenden des Ausführungsplans den Befehl terraform apply aus.
Veranschaulichen Sie wichtige Qualifikationen zum Konfigurieren, Verwalten, Schützen und Verwalten wichtiger professioneller Funktionen in Microsoft Azure.
Erfahren Sie, wie Sie für Virtual Machine Scale Sets-Instanzen NAT-Regeln für eingehenden Datenverkehr konfigurieren, aktualisieren und löschen. Azure bietet für NAT-Regeln für eingehenden Datenverkehr zwei Optionen.