Wdrażanie lokalnego serwera z systemem Ubuntu hostowanego przy użyciu narzędzia Vagrant i łączenie go z usługą Azure Arc

Ten artykuł zawiera wskazówki dotyczące wdrażania lokalnej maszyny wirtualnej z systemem Ubuntu przy użyciu narzędzia Vagrant i łączenia jej jako zasobu serwera z obsługą usługi Azure Arc.

Wymagania wstępne

  1. Sklonuj repozytorium Azure Arc Jumpstart.

    git clone https://github.com/microsoft/azure_arc.git
    
  2. Zainstaluj lub zaktualizuj interfejs wiersza polecenia platformy Azure do wersji 2.7 lub nowszej. Użyj następującego polecenia, aby sprawdzić bieżącą zainstalowaną wersję.

    az --version
    
  3. Narzędzie Vagrant opiera się na podstawowej funkcji hypervisor. W tym przewodniku używamy maszyny wirtualnej Oracle VirtualBox.

    1. Zainstaluj aplikację VirtualBox.

      • Jeśli jesteś użytkownikiem systemu macOS, uruchom polecenie brew cask install virtualbox
      • Jeśli jesteś użytkownikiem systemu Windows, możesz użyć pakietu Chocolatey
      • Jeśli jesteś użytkownikiem systemu Linux, wszystkie metody instalacji pakietu można znaleźć na stronie Pobierz virtualbox dla hostów systemu Linux.
    2. Instalowanie narzędzia Vagrant

      • Jeśli jesteś użytkownikiem systemu macOS, uruchom polecenie brew cask install vagrant
      • Jeśli jesteś użytkownikiem systemu Windows, możesz użyć pakietu Chocolatey
      • Jeśli jesteś użytkownikiem systemu Linux, odwiedź stronę pobierania Vagrant.
  4. Utwórz jednostkę usługi platformy Azure.

    Aby połączyć maszynę wirtualną Vagrant z usługą Azure Arc, wymagana jest jednostka usługi platformy Azure przypisana z rolą Współautor. Aby go utworzyć, zaloguj się do konta platformy Azure i uruchom następujące polecenie. To polecenie można również uruchomić w usłudze Azure Cloud Shell.

    az login
    az account set -s <Your Subscription ID>
    az ad sp create-for-rbac -n "<Unique SP Name>" --role contributor --scopes "/subscriptions/<Your Subscription ID>"
    

    Na przykład:

    az ad sp create-for-rbac -n "http://AzureArcServers" --role contributor --scopes "/subscriptions/00000000-0000-0000-0000-000000000000"
    

    Dane wyjściowe powinny wyglądać podobnie do poniższych:

    {
      "appId": "XXXXXXXXXXXXXXXXXXXXXXXXXXXX",
      "displayName": "http://AzureArcServers",
      "password": "XXXXXXXXXXXXXXXXXXXXXXXXXXXX",
      "tenant": "XXXXXXXXXXXXXXXXXXXXXXXXXXXX"
    }
    

    Uwaga

    Zdecydowanie zalecamy określanie zakresu jednostki usługi do określonej subskrypcji platformy Azure i grupy zasobów.

  5. Plik Vagrant wykonuje skrypt w systemie operacyjnym maszyny wirtualnej, aby zainstalować wszystkie wymagane artefakty i wstrzyknąć zmienne środowiskowe. Edytuj skrypt powłoki, scripts/vars.sh aby był zgodny z utworzoną jednostką usługi platformy Azure.

    • subscriptionId = identyfikator subskrypcji platformy Azure
    • appId = nazwa główna usługi platformy Azure
    • password = hasło jednostki usługi platformy Azure
    • tenantId = identyfikator dzierżawy platformy Azure
    • resourceGroup = nazwa grupy zasobów platformy Azure
    • location = Region świadczenia usługi Azure

Wdrożenie

Podobnie jak w przypadku każdego wdrożenia Vagrant potrzebne jest pole vagrantfile i Vagrant. Na wysokim poziomie wdrożenie będzie następujące:

Po edycji skryptu scripts/vars.sh , aby pasować do środowiska, uruchom Vagrantfile polecenie vagrant up. Ponieważ jest to pierwsze utworzenie maszyny wirtualnej, pierwsze uruchomienie będzie znacznie wolniejsze niż te, które należy wykonać, ponieważ wdrożenie pobiera pole Ubuntu po raz pierwszy.

A screenshot of the vagrant up command.

Po zakończeniu pobierania rozpoczyna się aprowizowanie. Jak pokazano na poniższym zrzucie ekranu, proces trwa nie dłużej niż trzy minuty.

A screenshot of a completed vagrant up command.

Po zakończeniu będziesz mieć wdrożoną lokalną maszynę wirtualną z systemem Ubuntu połączoną jako nowy serwer z obsługą usługi Azure Arc w nowej grupie zasobów.

A screenshot of an Azure Arc-enabled server in the Azure portal.

A screenshot of details from an Azure Arc-enabled server in the Azure portal.

Wdrożenie częściowo zautomatyzowane (opcjonalne)

Ostatnim krokiem jest zarejestrowanie maszyny wirtualnej jako nowego zasobu serwera z obsługą usługi Azure Arc.

Another screenshot of the vagrant up command.

Jeśli chcesz demo/kontrolować rzeczywisty proces rejestracji, wykonaj następujące kroki:

  1. W skryfcie install_arc_agent powłoki oznacz sekcję jako run connect command komentarz i zapisz plik. Możesz również oznaczyć komentarz lub zmienić tworzenie grupy zasobów.

    A screenshot of the azcmagent connect command.

    A screenshot of the az group create command.

  2. Połączenie SSH z maszyną wirtualną vagrant ssh przy użyciu polecenia .

    A screenshot of an SSH key connecting to the Vagrant machine.

  3. Uruchom to samo azcmagent connect polecenie, które oznaczyliśmy jako komentarz przy użyciu zmiennych środowiskowych.

    Another screenshot of the azcmagent connect command.

Usuwanie wdrożenia

Aby usunąć całe wdrożenie, uruchom vagrant destroy -f polecenie . Plik vagrant zawiera before: destroy wyzwalacz Vagrant, który spowoduje uruchomienie skryptu w celu usunięcia grupy zasobów platformy Azure przed zniszczeniem rzeczywistej maszyny wirtualnej.

A screenshot of the vagrant destroy command.