Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Viktigt!
Ansible 2.8 (eller senare) krävs för att köra exempelspelböckerna i den här artikeln.
Med peering för virtuella nätverk (VNet) kan du smidigt ansluta två virtuella Azure-nätverk. När de två virtuella nätverken har superkopplats visas de som ett för att underlätta anslutning.
Trafik dirigeras mellan virtuella datorer i samma virtuella nätverk via privata IP-adresser. På samma sätt dirigeras trafik mellan virtuella datorer i ett peer-kopplat virtuellt nätverk via Microsofts staminfrastruktur. Därför kan virtuella datorer i olika virtuella nätverk kommunicera med varandra.
I den här artikeln lär du dig att:
- Skapa två virtuella nätverk
- Koppla samman de två virtuella nätverken
- Ta bort peering mellan de två nätverken
Förutsättningar
- Azure-prenumeration: Om du inte har en Azure-prenumeration skapar du ett kostnadsfritt konto innan du börjar.
Installera Ansible: Gör något av följande alternativ:
- Installera och konfigurera Ansible på en virtuell Linux-dator
- Konfigurera Azure Cloud Shell och – om du inte har åtkomst till en virtuell Linux-dator – skapa en virtuell dator med Ansible.
Skapa två resursgrupper
En resursgrupp är en logisk container där Azure-resurser distribueras och hanteras.
Exempelspelbokskoden i det här avsnittet används för att:
- Skapa två resursgrupper
- name: Create a resource group
azure_rm_resourcegroup:
name: "{{ resource_group }}"
location: "{{ location }}"
- name: Create secondary resource group
azure_rm_resourcegroup:
name: "{{ resource_group_secondary }}"
location: "{{ location }}"
Skapa det första virtuella nätverket
Exempelspelbokskoden i det här avsnittet används för att:
- Skapa ett virtuellt nätverk
- Skapa ett undernät i det virtuella nätverket
- name: Create first virtual network
azure_rm_virtualnetwork:
resource_group: "{{ resource_group }}"
name: "{{ vnet_name1 }}"
address_prefixes: "10.0.0.0/16"
- name: Add subnet
azure_rm_subnet:
resource_group: "{{ resource_group }}"
name: "{{ vnet_name1 }}"
address_prefix: "10.0.0.0/24"
virtual_network: "{{ vnet_name1 }}"
Skapa det andra virtuella nätverket
Exempelspelbokskoden i det här avsnittet används för att:
- Skapa ett virtuellt nätverk
- Skapa ett undernät i det virtuella nätverket
- name: Create second virtual network
azure_rm_virtualnetwork:
resource_group: "{{ resource_group_secondary }}"
name: "{{ vnet_name2 }}"
address_prefixes: "10.1.0.0/16"
- name: Add subnet
azure_rm_subnet:
resource_group: "{{ resource_group }}"
name: "{{ vnet_name2 }}"
address_prefix: "10.1.0.0/24"
virtual_network: "{{ vnet_name2 }}"
Peerkoppla de två virtuella nätverken
Exempelspelbokskoden i det här avsnittet används för att:
- Initiera peering för virtuella nätverk
- Anslut två tidigare skapade virtuella nätverk
- name: Initial vnet peering
azure_rm_virtualnetworkpeering:
resource_group: "{{ resource_group }}"
name: "{{ peering_name }}"
virtual_network: "{{ vnet_name1 }}"
remote_virtual_network:
resource_group: "{{ resource_group_secondary }}"
name: "{{ vnet_name2 }}"
allow_virtual_network_access: true
allow_forwarded_traffic: true
- name: Connect vnet peering
azure_rm_virtualnetworkpeering:
resource_group: "{{ resource_group_secondary }}"
name: "{{ peering_name }}"
virtual_network: "{{ vnet_name2 }}"
remote_virtual_network:
resource_group: "{{ resource_group }}"
name: "{{ vnet_name1 }}"
allow_virtual_network_access: true
allow_forwarded_traffic: true
Ta bort peering för virtuella nätverk
Exempelspelbokskoden i det här avsnittet används för att:
- Ta bort peering mellan de två tidigare skapade virtuella nätverken
- name: Delete vnet peering
azure_rm_virtualnetworkpeering:
resource_group: "{{ resource_group }}"
name: "{{ peering_name }}"
virtual_network: "{{ vnet_name1 }}"
state: absent
Hämta exempelspelboken
Det finns två sätt att hämta den fullständiga exempelspelboken:
-
Ladda ned spelboken och spara den i
vnet_peering.yml. - Skapa en ny fil med namnet
vnet_peering.ymloch kopiera följande innehåll till den:
- hosts: localhost
tasks:
- name: Prepare random postfix
set_fact:
rpfx: "{{ 1000 | random }}"
run_once: yes
- name: Connect virtual networks with virtual network peering
hosts: localhost
connection: local
vars:
resource_group: "{{ resource_group_name }}"
resource_group_secondary: "{{ resource_group_name }}2"
vnet_name1: "myVnet{{ rpfx }}"
vnet_name2: "myVnet{{ rpfx }}2"
peering_name: peer1
location: eastus2
tasks:
- name: Create a resource group
azure_rm_resourcegroup:
name: "{{ resource_group }}"
location: "{{ location }}"
- name: Create secondary resource group
azure_rm_resourcegroup:
name: "{{ resource_group_secondary }}"
location: "{{ location }}"
- name: Create first virtual network
azure_rm_virtualnetwork:
resource_group: "{{ resource_group }}"
name: "{{ vnet_name1 }}"
address_prefixes: "10.0.0.0/16"
- name: Add subnet
azure_rm_subnet:
resource_group: "{{ resource_group }}"
name: "{{ vnet_name1 }}"
address_prefix: "10.0.0.0/24"
virtual_network: "{{ vnet_name1 }}"
- name: Create second virtual network
azure_rm_virtualnetwork:
resource_group: "{{ resource_group_secondary }}"
name: "{{ vnet_name2 }}"
address_prefixes: "10.1.0.0/16"
- name: Add subnet
azure_rm_subnet:
resource_group: "{{ resource_group }}"
name: "{{ vnet_name2 }}"
address_prefix: "10.1.0.0/24"
virtual_network: "{{ vnet_name2 }}"
- name: Initial vnet peering
azure_rm_virtualnetworkpeering:
resource_group: "{{ resource_group }}"
name: "{{ peering_name }}"
virtual_network: "{{ vnet_name1 }}"
remote_virtual_network:
resource_group: "{{ resource_group_secondary }}"
name: "{{ vnet_name2 }}"
allow_virtual_network_access: true
allow_forwarded_traffic: true
- name: Connect vnet peering
azure_rm_virtualnetworkpeering:
resource_group: "{{ resource_group_secondary }}"
name: "{{ peering_name }}"
virtual_network: "{{ vnet_name2 }}"
remote_virtual_network:
resource_group: "{{ resource_group }}"
name: "{{ vnet_name1 }}"
allow_virtual_network_access: true
allow_forwarded_traffic: true
- name: Delete vnet peering
azure_rm_virtualnetworkpeering:
resource_group: "{{ resource_group }}"
name: "{{ peering_name }}"
virtual_network: "{{ vnet_name1 }}"
state: absent
Kör exempelspelboken
Exempelkoden i spelboken i det här avsnittet används för att testa olika funktioner som visas i den här handledningen.
Här följer några viktiga kommentarer att tänka på när du arbetar med exempelspelboken:
- I avsnittet
varsersätter du{{ resource_group_name }}platshållaren med namnet på resursgruppen.
Kör spelboken med kommandot ansible-playbook:
ansible-playbook vnet_peering.yml
När du har kört spelboken visas utdata som liknar följande resultat:
PLAY [localhost]
TASK [Gathering Facts]
ok: [localhost]
TASK [Prepare random postfix]
ok: [localhost]
PLAY [Connect virtual networks with virtual network peering]
TASK [Gathering Facts]
ok: [localhost]
TASK [Create a resource group]
changed: [localhost]
TASK [Create secondary resource group]
changed: [localhost]
TASK [Create first virtual network]
changed: [localhost]
TASK [Add subnet]
changed: [localhost]
TASK [Create second virtual network]
changed: [localhost]
TASK [Add subnet]
changed: [localhost]
TASK [Initial vnet peering]
changed: [localhost]
TASK [Connect vnet peering]
changed: [localhost]
TASK [Delete vnet peering]
changed: [localhost]
PLAY RECAP
localhost : ok=12 changed=9 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0
Rensa resurser
Ta bort resurserna som skapas i den här artikeln när de inte längre behövs.
Exempelspelbokskoden i det här avsnittet används för att:
- Ta bort de två resursgrupper som skapades tidigare
Spara följande handbok som cleanup.yml:
- hosts: localhost
vars:
resource_group: "{{ resource_group_name-1 }}"
resource_group_secondary: "{{ resource_group_name-2 }}"
tasks:
- name: Delete a resource group
azure_rm_resourcegroup:
name: "{{ resource_group }}"
force_delete_nonempty: yes
state: absent
- name: Delete a resource group
azure_rm_resourcegroup:
name: "{{ resource_group_secondary }}"
force_delete_nonempty: yes
state: absent
Här följer några viktiga kommentarer att tänka på när du arbetar med exempelspelboken:
-
{{ resource_group_name-1 }}Ersätt platshållaren med namnet på den första resursgruppen som skapades. -
{{ resource_group_name-2 }}Ersätt platshållaren med namnet på den andra resursgruppen som skapades. - Alla resurser inom de två angivna resursgrupperna tas bort.
Kör spelboken med kommandot ansible-playbook:
ansible-playbook cleanup.yml