Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Maszyny wirtualne można tworzyć na platformie Azure i dołączać do każdej maszyny wirtualnej wiele interfejsów sieciowych. Wiele interfejsów sieciowych umożliwia rozdzielenie typów ruchu między nimi. Na przykład, jedna karta sieciowa może komunikować się z Internetem, podczas gdy druga łączy się wyłącznie z zasobami wewnętrznymi, które nie są połączone z Internetem. Możliwość oddzielenia ruchu sieciowego między wieloma kartami sieciowymi jest wymagana w przypadku wielu wirtualnych urządzeń sieciowych, takich jak dostarczanie aplikacji i rozwiązania optymalizacji sieci WAN.
Ważne
Platforma Azure oferuje dwa różne modele wdrażania związane z tworzeniem zasobów i pracą z nimi: model wdrażania przy użyciu usługi Azure Resource Manager i model klasyczny. Ten artykuł dotyczy klasycznego modelu wdrożenia. Firma Microsoft zaleca, aby w przypadku większości nowych wdrożeń korzystać z modelu opartego na programie Resource Manager. Dowiedz się, jak wykonać te kroki z wykorzystaniem modelu wdrożeń Resource Manager .
Scenariusz
W tym dokumencie przedstawiono wdrożenie korzystające z wielu kart sieciowych na maszynach wirtualnych w określonym scenariuszu. W tym scenariuszu masz dwuwarstwowe obciążenie IaaS hostowane na platformie Azure. Każda warstwa jest wdrażana we własnej podsieci w sieci wirtualnej. Warstwa front-end składa się z kilku serwerów internetowych, zgrupowanych w zestawie modułu równoważenia obciążenia, w celu zapewnienia wysokiej dostępności. Warstwa zaplecza składa się z kilku serwerów baz danych. Serwery baz danych są wdrażane z dwiema kartami sieciowymi, jedna do dostępu do bazy danych, a druga do zarządzania. Scenariusz obejmuje również sieciowe grupy zabezpieczeń w celu kontrolowania ruchu dozwolonego dla każdej podsieci oraz karty sieciowej we wdrożeniu. Na poniższej ilustracji przedstawiono podstawową architekturę tego scenariusza:
W poniższych krokach użyto grupy zasobów o nazwie IaaSStory dla serwerów sieci WEB i grupy zasobów o nazwie IaaSStory-BackEnd dla serwerów BAZY danych.
Wymagania wstępne
Przed utworzeniem serwerów bazy danych należy utworzyć grupę zasobów IaaSStory ze wszystkimi niezbędnymi zasobami dla tego scenariusza. Aby utworzyć te zasoby, wykonaj poniższe kroki. Utwórz sieć wirtualną, wykonując kroki opisane w artykule Tworzenie sieci wirtualnej.
Wymaganie wstępne: instalowanie interfejsu wiersza polecenia platformy Azure
Aby wykonać kroki opisane w tym artykule, zainstaluj interfejs wiersza polecenia platformy Azure i zaloguj się na platformie Azure.
Uwaga / Notatka
Jeśli nie masz konta platformy Azure, potrzebujesz konta platformy Azure. Zarejestruj się, aby skorzystać z bezpłatnej wersji próbnej tutaj. Ponadto, aby nadążyć, musisz mieć zainstalowane jq lub inne narzędzie lub bibliotekę do analizowania JSON.
Wdróż maszyny wirtualne zaplecza
Maszyny wirtualne backendu zależą od utworzenia następujących zasobów:
- Konto magazynowe dla dysków danych. Aby uzyskać lepszą wydajność, dyski danych na serwerach baz danych będą używać technologii SSD, która wymaga konta magazynu Premium. Upewnij się, że lokalizacja platformy Azure, do której wdrażasz, obsługuje magazyn Premium.
- Karty sieciowe. Każda maszyna wirtualna będzie mieć dwie karty sieciowe, jedną dla dostępu do bazy danych i jedną do zarządzania.
- Zestaw dostępności. Wszystkie serwery baz danych zostaną dodane do jednego zestawu dostępności, aby upewnić się, że co najmniej jedna z maszyn wirtualnych jest uruchomiona podczas konserwacji.
Krok 1. Uruchamianie skryptu
Pełny skrypt powłoki bash można pobrać tutaj. Wykonaj następujące kroki, aby zmienić skrypt tak, aby działał w środowisku:
Zmień wartości poniższych zmiennych na podstawie istniejącej grupy zasobów wdrożonej powyżej w Wymagania wstępne.
location="useast2" vnetName="WTestVNet" backendSubnetName="BackEnd"Zmień wartości poniższych zmiennych na podstawie wartości, których chcesz użyć do wdrożenia backendu.
backendCSName="IaaSStory-Backend" prmStorageAccountName="iaasstoryprmstorage" image="0b11de9248dd4d87b18621318e037d37__RightImage-Ubuntu-14.04-x64-v14.2.1" avSetName="ASDB" vmSize="Standard_DS3" diskSize=127 vmNamePrefix="DB" osDiskName="osdiskdb" dataDiskPrefix="db" dataDiskName="datadisk" ipAddressPrefix="192.168.2." username='adminuser' password='adminP@ssw0rd' numberOfVMs=2
Krok 2. Tworzenie niezbędnych zasobów dla maszyn wirtualnych
Utwórz nową usługę w chmurze dla wszystkich maszyn wirtualnych zaplecza. Zwróć uwagę na użycie zmiennej
$backendCSNamedla nazwy grupy zasobów i$locationregionu świadczenia usługi Azure.azure service create --serviceName $backendCSName \ --location $locationUtwórz konto magazynu klasy Premium dla systemu operacyjnego i dysków danych, które będą używane przez maszyny wirtualne.
azure storage account create $prmStorageAccountName \ --location $location \ --type PLRS
Krok 3. Tworzenie maszyn wirtualnych z wieloma kartami sieciowymi
Uruchom pętlę, aby utworzyć wiele maszyn wirtualnych na podstawie zmiennych
numberOfVMs.for ((suffixNumber=1;suffixNumber<=numberOfVMs;suffixNumber++)); doDla każdej maszyny wirtualnej określ nazwę i adres IP każdej z dwóch kart sieciowych.
nic1Name=$vmNamePrefix$suffixNumber-DA x=$((suffixNumber+3)) ipAddress1=$ipAddressPrefix$x nic2Name=$vmNamePrefix$suffixNumber-RA x=$((suffixNumber+53)) ipAddress2=$ipAddressPrefix$xUtwórz maszynę wirtualną. Zwróć uwagę na użycie parametru
--nic-configzawierającego listę wszystkich kart sieciowych o nazwie, podsieci i adresie IP.azure vm create $backendCSName $image $username $password \ --connect $backendCSName \ --vm-name $vmNamePrefix$suffixNumber \ --vm-size $vmSize \ --availability-set $avSetName \ --blob-url $prmStorageAccountName.blob.core.windows.net/vhds/$osDiskName$suffixNumber.vhd \ --virtual-network-name $vnetName \ --subnet-names $backendSubnetName \ --nic-config $nic1Name:$backendSubnetName:$ipAddress1::,$nic2Name:$backendSubnetName:$ipAddress2::Dla każdej maszyny wirtualnej utwórz dwa dyski danych.
azure vm disk attach-new $vmNamePrefix$suffixNumber \ $diskSize \ vhds/$dataDiskPrefix$suffixNumber$dataDiskName-1.vhd azure vm disk attach-new $vmNamePrefix$suffixNumber \ $diskSize \ vhds/$dataDiskPrefix$suffixNumber$dataDiskName-2.vhd done
Krok 4. Uruchamianie skryptu
Po pobraniu i zmianie skryptu na podstawie Twoich potrzeb uruchom skrypt, aby utworzyć maszyny wirtualne bazy danych zaplecza z wieloma kartami sieciowymi.
Zapisz skrypt i uruchom go w terminalu Bash. Zostaną wyświetlone początkowe dane wyjściowe, jak pokazano poniżej.
info: Executing command service create info: Creating cloud service data: Cloud service name IaaSStory-Backend info: service create command OK info: Executing command storage account create info: Creating storage account info: storage account create command OK info: Executing command vm create info: Looking up image 0b11de9248dd4d87b18621318e037d37__RightImage-Ubuntu-14.04-x64-v14.2.1 info: Looking up virtual network info: Looking up cloud service info: Getting cloud service properties info: Looking up deployment info: Creating VMPo kilku minutach wykonanie zakończy się i zobaczysz resztę danych wyjściowych, jak pokazano poniżej.
info: OK info: vm create command OK info: Executing command vm disk attach-new info: Getting virtual machines info: Adding Data-Disk info: vm disk attach-new command OK info: Executing command vm disk attach-new info: Getting virtual machines info: Adding Data-Disk info: vm disk attach-new command OK info: Executing command vm create info: Looking up image 0b11de9248dd4d87b18621318e037d37__RightImage-Ubuntu-14.04-x64-v14.2.1 info: Looking up virtual network info: Looking up cloud service info: Getting cloud service properties info: Looking up deployment info: Creating VM info: OK info: vm create command OK info: Executing command vm disk attach-new info: Getting virtual machines info: Adding Data-Disk info: vm disk attach-new command OK info: Executing command vm disk attach-new info: Getting virtual machines info: Adding Data-Disk info: vm disk attach-new command OK
Krok 5. Konfigurowanie routingu w systemie operacyjnym maszyny wirtualnej
Usługa Azure DHCP przypisuje bramę domyślną do pierwszego (podstawowego) interfejsu sieciowego dołączonego do maszyny wirtualnej. Platforma Azure domyślnie nie przypisuje domyślnej bramy do dodatkowych interfejsów sieciowych dołączonych do maszyny wirtualnej. Dlatego domyślnie nie można komunikować się z zasobami poza podsiecią, w której znajduje się dodatkowy interfejs sieciowy. Dodatkowe interfejsy sieciowe mogą jednak komunikować się z zasobami poza podsiecią. Aby skonfigurować routing dla pomocniczych interfejsów sieciowych, zobacz Routing w systemie operacyjnym maszyny wirtualnej z wieloma interfejsami sieciowymi.