Tworzenie topologii sieci hybrydowej piasty i szprych na platformie Azure przy użyciu narzędzia Terraform

Narzędzie Terraform umożliwia definiowanie, wyświetlanie wersji zapoznawczej i wdrażanie infrastruktury chmury. Za pomocą narzędzia Terraform tworzysz pliki konfiguracji przy użyciu składni HCL. Składnia listy HCL umożliwia określenie dostawcy chmury — takiego jak platforma Azure — oraz elementów tworzących infrastrukturę chmury. Po utworzeniu plików konfiguracji utworzysz plan wykonywania, który umożliwia wyświetlenie podglądu zmian infrastruktury przed ich wdrożeniem. Po zweryfikowaniu zmian należy zastosować plan wykonywania w celu wdrożenia infrastruktury.

W tej serii artykułów pokazano, jak za pomocą narzędzia Terraform zaimplementować topologię sieci piasty i szprych.

Topologia piasty i szprych to sposób izolowania obciążeń podczas udostępniania typowych usług. Te usługi obejmują tożsamość i zabezpieczenia. Piasta to sieć wirtualna, która działa jako centralny punkt połączenia z siecią lokalną. Szprychy to sieci wirtualne komunikujące się równorzędnie z piastą. Usługi udostępnione są wdrażane w centrum, podczas gdy poszczególne obciążenia są wdrażane w sieciach szprych.

W tym artykule omówiono sposób wykonywania następujących zadań:

  • Określanie zasobów architektury referencyjnej sieci hybrydowej piasty i szprych
  • Tworzenie zasobów urządzenia sieciowego koncentratora
  • Tworzenie sieci koncentratora na platformie Azure w celu działania jako wspólnego punktu dla wszystkich zasobów
  • Tworzenie poszczególnych obciążeń jako sieci wirtualnych szprych na platformie Azure
  • Ustanawianie bram i połączeń między sieciami lokalnymi i sieciami platformy Azure
  • Tworzenie wirtualnych sieci równorzędnych z sieciami szprych

1. Konfigurowanie środowiska

  • Subskrypcja platformy Azure: jeśli nie masz subskrypcji platformy Azure, przed rozpoczęciem utwórz bezpłatne konto.

2. Omówienie architektury topologii piasty i szprych

W topologii piasty i szprych piasta jest siecią wirtualną. Sieć wirtualna działa jako centralny punkt łączności z siecią lokalną. Szprychy są sieciami wirtualnymi równorzędnymi z piastą i mogą być używane do izolowania obciążeń. Ruch przepływa między lokalnym centrum danych a piastą za pośrednictwem połączenia bramy usługi ExpressRoute lub sieci VPN. Na poniższej ilustracji przedstawiono składniki topologii piasty i szprych:

Hub and spoke topology architecture in Azure

Zalety topologii piasty i szprych

Topologia sieci piasty i szprych to sposób izolowania obciążeń podczas udostępniania wspólnych usług. Te usługi obejmują tożsamość i zabezpieczenia. Piasta to sieć wirtualna, która działa jako centralny punkt połączenia z siecią lokalną. Szprychy to sieci wirtualne komunikujące się równorzędnie z piastą. Usługi udostępnione są wdrażane w centrum, podczas gdy poszczególne obciążenia są wdrażane w sieciach szprych. Oto kilka zalet topologii sieci piasty i szprych:

  • Oszczędności kosztów dzięki scentralizowaniu usług w jednej lokalizacji, które mogą być współużytkowane przez wiele obciążeń. Te obciążenia obejmują wirtualne urządzenia sieciowe i serwery DNS.
  • Przezwyciężenie limitów subskrypcji dzięki wprowadzeniu komunikacji równorzędnej sieci wirtualnych z różnych subskrypcji do centrum.
  • Separację problemów między centralnym działem IT (SecOP, InfraOps) i obciążeniami (DevOps).

Typowe zastosowania architektury piasty i szprych

Oto niektóre typowe zastosowania architektury piasty i szprych:

  • Wielu klientów ma obciążenia, które są wdrażane w różnych środowiskach. Te środowiska obejmują programowanie, testowanie i produkcję. Wiele razy te obciążenia muszą udostępniać usługi, takie jak DNS, IDS, NTP lub AD DS. Te usługi udostępnione można umieścić w sieci wirtualnej piasty. Dzięki temu każde środowisko jest wdrażane w szprychach w celu zachowania izolacji.
  • Obciążenia, które nie wymagają łączności ze sobą, ale wymagają dostępu do usług udostępnionych.
  • Przedsiębiorstwa wymagające centralnej kontroli nad aspektami zabezpieczeń.
  • Przedsiębiorstwa, które wymagają segregacji zarządzania obciążeniami w każdej szprychy.

3. Podgląd składników demonstracyjnych

Podczas pracy z każdym artykułem w tej serii różne składniki są definiowane w odrębnych skryptach programu Terraform. Architektura demonstracyjna utworzona i wdrożona składa się z następujących składników:

  • Sieć lokalna. Prywatna sieć lokalna działająca z organizacją. W przypadku architektury referencyjnej piasty i szprych sieć wirtualna na platformie Azure służy do symulowania sieci lokalnej.

  • Urządzenie sieci VPN. Urządzenie lub usługa sieci VPN zapewnia łączność zewnętrzną z siecią lokalną. Urządzenie sieci VPN może być urządzeniem sprzętowym lub rozwiązaniem programowym.

  • Sieć wirtualna będąca piastą. Piasta jest centralnym punktem łączności z siecią lokalną i miejscem hostowania usług. Te usługi mogą być używane przez różne obciążenia hostowane w sieciach wirtualnych szprych.

  • Podsieć bramy. Bramy sieci wirtualnej są przechowywane w tej samej podsieci.

  • Sieci wirtualne będące szprychami. Szprychy mogą być używane do izolowania obciążeń w ich własnych sieciach wirtualnych zarządzanych oddzielnie od innych szprych. Każde obciążenie może zawierać wiele warstw z wieloma podsieciami połączonymi za pośrednictwem modułów równoważenia obciążenia platformy Azure.

  • Komunikacja równorzędna sieci wirtualnych. Dwie sieci wirtualne można połączyć przy użyciu połączenia komunikacji równorzędnej. Połączenia komunikacji równorzędnej to nieprzechodnie połączenia między sieciami wirtualnymi o niskich opóźnieniach. Po komunikacji równorzędnej sieci wirtualne wymieniają ruch przy użyciu sieci szkieletowej platformy Azure bez konieczności używania routera. W topologii sieci piasty i szprych komunikacja równorzędna sieci wirtualnych służy do łączenia koncentratora z każdą szprychą. Sieci wirtualne można łączyć równorzędnie w tym samym regionie lub w różnych regionach.

4. Implementowanie kodu programu Terraform

  1. Utwórz katalog zawierający przykładowy kod dla całej serii wielu artykułów.

  2. Utwórz plik o nazwie main.tf i wstaw następujący kod:

    terraform {
    
      required_version = ">=0.12"
    
      required_providers {
        azurerm = {
          source  = "hashicorp/azurerm"
          version = "~>2.0"
        }
      }
    }
    
    provider "azurerm" {
      features {}
    }
    
  3. Utwórz plik o nazwie variables.tf zawierający zmienne projektu i wstaw następujący kod:

    variable "location" {
        description = "Location of the network"
        default     = "eastus"
    }
    
    variable "username" {
        description = "Username for Virtual Machines"
        default     = "azureuser"
    }
    
    variable "password" {
        description = "Password for Virtual Machines"
    }
    
    variable "vmsize" {
        description = "Size of the VMs"
        default     = "Standard_DS1_v2"
    }
    

    Kluczowe punkty:

Rozwiązywanie problemów z programem Terraform na platformie Azure

Rozwiązywanie typowych problemów podczas korzystania z narzędzia Terraform na platformie Azure

Następne kroki