Nasazení místního serveru Ubuntu hostovaného s Vagrant a jeho připojení k Arc AzureDeploy a local Ubuntu server hosted with Vagrant and connect it to Azure Arc

Tento článek poskytuje pokyny pro nasazení místního virtuálního počítače s Ubuntu pomocí Vagrant a jeho připojení jako prostředku serveru s podporou ARC Azure.This article provides guidance for deploying a local Ubuntu virtual machine using Vagrant and connect it as an Azure Arc enabled server resource.

PožadavkyPrerequisites

  1. Naklonujte úložiště rychlé zprovoznění pro Azure ARC.Clone the Azure Arc Jumpstart repository.

    git clone https://github.com/microsoft/azure_arc.git
    
  2. Nainstalujte nebo aktualizujte rozhraní příkazového řádku Azure CLI na verzi 2,7 a vyšší.Install or update Azure CLI to version 2.7 and above. Pomocí následujícího příkazu ověřte aktuálně nainstalovanou verzi.Use the following command to check your current installed version.

    az --version
    
  3. Vagrant spoléhá na základní hypervisor.Vagrant relies on an underlying hypervisor. V tomto průvodci budeme používat Oracle VM VirtualBox.For this guide, we will be using "Oracle VM VirtualBox".

    1. Nainstalujte VirtualBox.Install VirtualBox.

      • Pokud jste uživatelem macOS, spusťte brew cask install virtualboxIf you are a macOS user, run brew cask install virtualbox
      • Pokud jste uživatelem systému Windows, můžete použít balíček čokoládyIf you are a Windows user, you can use the Chocolatey package
      • Pokud jste uživatelem se systémem Linux, najdete tady všechny metody instalace balíčků.If you are a Linux user, all package installation methods can be found here
    2. Nainstalovat VagrantInstall Vagrant

      • Pokud jste uživatelem macOS, spusťte brew cask install vagrantIf you are a macOS user, run brew cask install vagrant
      • Pokud jste uživatelem systému Windows, můžete použít balíček čokoládyIf you are a Windows user, you can use the Chocolatey package
      • Pokud jste uživatel se systémem Linux, podívejte se sem .If you are a Linux user, look here
  4. Vytvoření instančního objektu AzureCreate an Azure service principal.

    Pokud chcete připojit virtuální počítač Vagrant ke službě Azure ARC, vyžaduje se instanční objekt Azure přiřazený k roli přispěvatele.To connect the Vagrant virtual machine to Azure Arc, an Azure service principal assigned with the Contributor role is required. Pokud ho chcete vytvořit, přihlaste se ke svému účtu Azure a spusťte následující příkaz.To create it, sign in to your Azure account and run the following command. Tento příkaz můžete spustit také v Azure Cloud Shell.You can also run this command in Azure Cloud Shell.

    az login
    az ad sp create-for-rbac -n "<Unique SP Name>" --role contributor
    

    Například:For example:

    az ad sp create-for-rbac -n "http://AzureArcServers" --role contributor
    

    Výstup by měl vypadat takto:Output should look like this:

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

    Poznámka

    Důrazně doporučujeme nastavit obor instančního objektu na konkrétní předplatné Azure a skupinu prostředků.We highly recommend that you scope the service principal to a specific Azure subscription and resource group.

  5. Soubor Vagrant spustí skript na operačním systému virtuálního počítače, aby se nainstalovaly všechny potřebné artefakty a aby se daly vložit proměnné prostředí.The Vagrant file executes a script on the VM OS to install all the needed artifacts and to inject environment variables. Upravte scripts/vars.sh skript prostředí tak, aby odpovídal objektu služby Azure, který jste vytvořili.Edit the scripts/vars.sh shell script to match the Azure service principal you created.

    • subscriptionId = ID vašeho předplatného AzuresubscriptionId = your Azure subscription ID
    • appId = Váš hlavní název služby AzureappId = your Azure service principal name
    • password = Vaše heslo instančního objektu služby Azurepassword = your Azure service principal password
    • tenantId = vaše ID tenanta AzuretenantId = your Azure tenant ID
    • resourceGroup = Název skupiny prostředků AzureresourceGroup = Azure resource group name
    • location = Oblast Azurelocation = Azure region

NasazeníDeployment

Podobně jako u jakéhokoli nasazení Vagrant je třeba vagrantfile a Vagrant box .Like any Vagrant deployment, a vagrantfile and a Vagrant box is needed. V nejvyšší úrovni nasazení bude:At a high-level, the deployment will:

  • Stažení Vagrant souboru bitové kopie Ubuntu 16,04Download the Ubuntu 16.04 image file Vagrant box
  • Spuštění instalačního skriptuExecute the installation script

Po úpravě scripts/vars.sh skriptu, aby odpovídal vašemu prostředí, ze Vagrantfile složky spusťte příkaz vagrant up .After editing the scripts/vars.sh script to match your environment, from the Vagrantfile folder, run vagrant up. Vzhledem k tomu, že se jedná o první pokus o vytvoření virtuálního počítače, první spuštění bude mnohem pomalejší než u těch, které se mají sledovat, protože nasazení poprvé stahuje Ubuntu box.Since this is the first time creating the VM, the first run will be much slower than the ones to follow, because the deployment is downloading the Ubuntu box for the first time.

Snímek obrazovky příkazu "Vagrant nahoru".

Po dokončení stahování se zahájí zřizování.Once the download is complete, the provisioning begins. Jak je znázorněno na následujícím snímku obrazovky, proces trvá déle než tři minuty.As shown in the following screenshot, the process takes no longer than three minutes.

Snímek obrazovky dokončeného příkazu "Vagrant nahoru".

Po dokončení budete mít nasazený místní virtuální počítač s Ubuntu, který se připojí jako nový server s podporou ARC Azure v rámci nové skupiny prostředků.Upon completion, you will have a local Ubuntu VM deployed, connected as a new Azure Arc enabled server, inside a new resource group.

Snímek obrazovky serveru s podporou ARC Azure v Azure Portal.

Snímek obrazovky s podrobnostmi ze serveru s podporou ARC Azure v Azure Portal.

Částečně automatizované nasazení (volitelné)Semi-automated deployment (optional)

Posledním krokem je registrace virtuálního počítače jako nového prostředku serveru s podporou ARC Azure.The last step is to register the VM as a new Azure Arc enabled server resource.

Další snímek příkazu "Vagrant nahoru".

Pokud chcete demo nebo kontrolu skutečného procesu registrace, proveďte následující kroky:If you want to demo/control the actual registration process, complete the following steps:

  1. V rámci install_arc_agent skriptu prostředí zakomentujte run connect command část a uložte soubor.In the install_arc_agent shell script, comment out the run connect command section and save the file. Můžete také komentovat nebo měnit vytváření skupiny prostředků.You can also comment out or change the creation of the resource group.

    Snímek obrazovky s příkazem azcmagent Connect

    Snímek obrazovky s příkazem AZ Group Create

  2. Pomocí příkazu SSH k virtuálnímu počítači vagrant ssh .SSH to the VM using the vagrant ssh command.

    Snímek obrazovky s klíčem SSH, který se připojuje k počítači s Vagrant

  3. Spusťte stejný azcmagent connect příkaz, který jste zakomentováni pomocí proměnných prostředí.Run the same azcmagent connect command you commented out using your environment variables.

    Další snímek příkazu "azcmagent Connect".

Odstranit nasazeníDelete the deployment

Pokud chcete odstranit celé nasazení, spusťte vagrant destroy -f příkaz.To delete the entire deployment, run the vagrant destroy -f command. Vagrantfile zahrnuje before: destroy Trigger Vagrant, který spustí skript, který odstraní skupinu prostředků Azure, a teprve potom zničí skutečný virtuální počítač.The vagrantfile includes a before: destroy Vagrant trigger, which will run a script to delete the Azure resource group before destroying the actual VM.

Snímek obrazovky s příkazem Vagrant Destroy