Vytvoření hvězdicové hybridní síťové topologie v Azure pomocí Terraformu

Terraform umožňuje definici, verzi Preview a nasazení cloudové infrastruktury. Pomocí Terraformu vytvoříte konfigurační soubory pomocí syntaxe HCL. Syntaxe seznamu HCL umožňuje zadat poskytovatele cloudu , například Azure, a prvky, které tvoří vaši cloudovou infrastrukturu. Po vytvoření konfiguračních souborů vytvoříte plán provádění, který vám umožní zobrazit náhled změn infrastruktury před jejich nasazením. Jakmile ověříte změny, použijete plán provádění k nasazení infrastruktury.

V této sérii článků se dozvíte, jak pomocí Terraformu implementovat hvězdicovou síťovou topologii v Azure.

Hvězdicová topologie představuje způsob izolace úloh při sdílení běžných služeb. Mezi tyto služby patří identita a zabezpečení. Centrum je virtuální síť, která funguje jako centrální spojovací bod k místní síti. Paprsky jsou virtuální sítě v partnerském vztahu s centrem. Sdílené služby se nasazují v centru, zatímco jednotlivé úlohy se nasazují v paprskových sítích.

V tomto článku získáte informace o těchto tématech:

  • Rozložení prostředků referenční architektury hybridní sítě s hvězdicovou hvězdicovou architekturou
  • Vytvoření prostředků síťového zařízení rozbočovače
  • Vytvoření centrální sítě v Azure, která bude fungovat jako společný bod pro všechny prostředky
  • Vytvoření jednotlivých úloh jako paprskových virtuálních sítí v Azure
  • Vytvoření bran a připojení mezi místními sítěmi a sítěmi Azure
  • Vytvoření partnerských vztahů virtuálních sítí s paprsky

1. Konfigurace prostředí

  • Předplatné Azure: Pokud ještě nemáte předplatné Azure, vytvořte si bezplatný účet před tím, než začnete.

2. Principy hvězdicové architektury topologie

V hvězdicové topologii je centrum virtuální sítí. Virtuální síť funguje jako centrální bod připojení k vaší místní síti. Paprsky jsou virtuální sítě v partnerském vztahu s centrem, které je možné použít k izolaci úloh. Přenosy mezi centrem a místním datacentrem proudí prostřednictvím připojení ExpressRoute nebo brány sítě VPN. Následující obrázek znázorňuje komponenty v hvězdicové topologii:

Hub and spoke topology architecture in Azure

Výhody hvězdicové topologie

Hvězdicová síťová topologie je způsob, jak izolovat úlohy při sdílení běžných služeb. Mezi tyto služby patří identita a zabezpečení. Centrum je virtuální síť, která funguje jako centrální spojovací bod k místní síti. Paprsky jsou virtuální sítě v partnerském vztahu s centrem. Sdílené služby se nasazují v centru, zatímco jednotlivé úlohy se nasazují v paprskových sítích. Tady jsou některé výhody hvězdicové síťové topologie:

  • Úspora nákladů díky centralizaci služeb v jednom umístění, které může sdílet více úloh. Mezi tyto úlohy patří síťová virtuální zařízení a servery DNS.
  • Překonání omezení předplatných díky vytvoření partnerského vztahu virtuálních sítí z různých předplatných s hlavním centrem
  • Oddělení oblastí zájmu mezi centrálním IT (SecOps, InfraOps) a úlohami (DevOps)

Typické použití hvězdicové architektury

Mezi typické způsoby použití hvězdicové architektury patří:

  • Mnoho zákazníků má úlohy nasazené v různých prostředích. Mezi tato prostředí patří vývoj, testování a produkce. Tyto úlohy často potřebují sdílet služby, jako jsou DNS, IDS, NTP nebo AD DS. Tyto sdílené služby je možné umístit do virtuální sítě centra. Tímto způsobem se každé prostředí nasadí do paprsku, aby se zachovala izolace.
  • Úlohy, které nevyžadují vzájemné připojení, ale vyžadují přístup ke sdíleným službám.
  • Podniky, které vyžadují centrální kontrolu nad aspekty zabezpečení.
  • Podniky, které vyžadují oddělenou správu pro úlohy v jednotlivých paprskech.

3. Náhled ukázkových komponent

Při procházení jednotlivých článků v této sérii se různé komponenty definují v různých skriptech Terraformu. Ukázková architektura vytvořená a nasazená se skládá z následujících komponent:

  • Místní síť: Privátní místní síť běžící s organizací. V případě referenční architektury hvězdicové architektury se virtuální síť v Azure používá k simulaci místní sítě.

  • Zařízení VPN. Zařízení nebo služba VPN poskytuje externí připojení k místní síti. Zařízení VPN může být hardwarové zařízení nebo softwarové řešení.

  • Virtuální síť centra. Centrum je centrálním bodem připojení k místní síti a místem pro hostování služeb. Tyto služby můžou využívat různé úlohy hostované v paprskových virtuálních sítích.

  • Podsíť brány. Brány virtuální sítě se uchovávají ve stejné podsíti.

  • Virtuální sítě paprsků. Paprsky se dají použít k izolování úloh v jejich vlastních virtuálních sítích, které se spravují odděleně od ostatních paprsků. Každá úloha může obsahovat několik vrstev s několika podsítěmi připojenými prostřednictvím nástrojů pro vyrovnávání zatížení Azure.

  • Partnerské vztahy virtuálních sítí. Dvě virtuální sítě je možné připojit pomocí připojení peeringu. Připojení s partnerským vztahem jsou nepřenositelná připojení s nízkou latencí mezi virtuálními sítěmi. Po vytvoření partnerského vztahu virtuální sítě vyměňují provoz pomocí páteřní sítě Azure, aniž by potřebovaly směrovač. V hvězdicové síťové topologii se partnerský vztah virtuálních sítí používá k připojení centra k jednotlivým paprskům. Virtuální sítě můžete peerovat ve stejné oblasti nebo v různých oblastech.

4. Implementace kódu Terraformu

  1. Vytvořte adresář, který bude obsahovat ukázkový kód pro celou řadu článků ve více článcích.

  2. Vytvořte soubor s názvem main.tf a vložte následující kód:

    terraform {
    
      required_version = ">=0.12"
    
      required_providers {
        azurerm = {
          source  = "hashicorp/azurerm"
          version = "~>2.0"
        }
      }
    }
    
    provider "azurerm" {
      features {}
    }
    
  3. Vytvořte soubor s názvem variables.tf , který bude obsahovat proměnné projektu, a vložte následující kód:

    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"
    }
    

    Klíčové body:

    • Tento článek používá heslo, které zadáte při volání terraform plan. V reálné aplikaci můžete zvážit použití páru veřejného a privátního klíče SSH.
    • Další informace o klíčích SSH a Azure najdete v tématu Použití klíčů SSH s Windows v Azure.

Řešení potíží s Terraformem v Azure

Řešení běžných problémů při používání Terraformu v Azure

Další kroky