Schnellstart: Verbinden von Computern mit Azure mithilfe von Azure Arc für Server – PowerShellQuickstart: Connect machines to Azure using Azure Arc for servers - PowerShell

Wenn Sie kein Azure-Abonnement besitzen, können Sie ein kostenloses Konto erstellen, bevor Sie beginnen.If you don't have an Azure subscription, create a free account before you begin.

VoraussetzungenPrerequisites

Machen Sie sich in der Übersicht über Azure Arc für Server mit den unterstützten Clients und der erforderlichen Netzwerkkonfiguration vertraut.Review the supported clients and required network configuration in the Azure Arc for servers Overview.

Erstellen eines Dienstprinzipals für flexibles OnboardingCreate a Service Principal for Onboarding At Scale

Bei einem Dienstprinzipal handelt es sich um eine spezielle eingeschränkte Verwaltungsidentität, der nur die Mindestberechtigung erteilt wird, die erforderlich ist, um Computer mit Azure zu verbinden.A Service Principal is a special limited management identity that is granted only the minimum permission necessary to connect machines to Azure. Dies ist sicherer als die Verwendung eines Kontos mit mehr Berechtigungen (beispielsweise ein Mandantenadministratorkonto).This is safer than using a more powerful account like a Tenant Administrator. Der Dienstprinzipal wird nur während des Onboardings verwendet.The Service Principal is only used during onboarding. Nach der Verbindungsherstellung mit den gewünschten Servern kann der Dienstprinzipal problemlos wieder gelöscht werden.You can safely delete the Service Principal after you connect your desired servers.

Hinweis

Dieser Schritt wird zwar empfohlen, ist aber nicht zwingend erforderlich.This step is recommended, but not required.

Schritte zum Erstellen des DienstprinzipalsSteps to create the Service Principal

In diesem Beispiel wird Azure PowerShell verwendet, um einen Dienstprinzipalnamen (Service Principal Name, SPN) zu erstellen.In this example, we will use Azure PowerShell to create a Service Principal Name (SPN). Alternativ können für diese Aufgabe auch die unter Erstellen eines Dienstprinzipals mit dem Azure-Portal aufgeführten Schritte ausgeführt werden.Alternatively, you can follow the steps listed under Create a Service Principal using the Azure portal for this task.

Die Rolle Azure Connected Machine Onboarding verfügt nur über die für das Onboarding erforderlichen Berechtigungen.The Azure Connected Machine Onboarding role contains only the permissions required for onboarding. Sie können die Berechtigung eines SPN so definieren, dass sie eine Ressourcengruppe oder ein Abonnement abdeckt.You can define the permission of a SPN to allow its scope to cover a resource group or a subscription.

Die Ausgabe des Cmdlets New-AzADServicePrincipal muss gespeichert werden, da Sie sonst das in einem späteren Schritt benötigte Kennwort nicht abrufen können.You must store the output of the New-AzADServicePrincipal cmdlet, or you will not be able to retrieve the password to use in a later step.

$sp = New-AzADServicePrincipal -DisplayName "Arc-for-servers" -Role "Azure Connected Machine Onboarding"
$sp
Secret                : System.Security.SecureString
ServicePrincipalNames : {ad9bcd79-be9c-45ab-abd8-80ca1654a7d1, https://Arc-for-servers}
ApplicationId         : ad9bcd79-be9c-45ab-abd8-80ca1654a7d1
ObjectType            : ServicePrincipal
DisplayName           : Hybrid-RP
Id                    : 5be92c87-01c4-42f5-bade-c1c10af87758
Type                  :

Rufen Sie nun das Kennwort mithilfe von PowerShell ab.Now, retrieve the password using powershell.

$credential = New-Object pscredential -ArgumentList "temp", $sp.Secret
$credential.GetNetworkCredential().password

Kopieren Sie in der Ausgabe das Kennwort (password) und die Anwendungs-ID (ApplicationId) aus dem vorherigen Schritt, und speichern Sie sie an einem sicheren Ort – beispielsweise im Geheimnisspeicher für Ihr Serverkonfigurationstool.From the output, copy the password and ApplicationId (from the previous step) and store them for later in a safe place, such as the secret store for your server configuration tool. Sollten Sie Ihr SPN-Kennwort vergessen oder verlieren, können Sie es mithilfe des Cmdlets New-AzADSpCredential zurücksetzen.If you forget or lose your SPN password, you can reset it using the New-AzADSpCredential cmdlet.

Für das Onboarding-Skript des Installations-Agents gilt Folgendes:In the install agent onboarding script:

  • Die Eigenschaft ApplicationId wird für den Parameter --service-principal-id im Installations-Agent verwendet.The ApplicationId property is used for the --service-principal-id parameter used in the install agent
  • Die Eigenschaft password wird für den Parameter --service-principal-secret im Installations-Agent verwendet.The password property is used for the --service-principal-secret parameter in the install agent.

Manuelles Installieren des Agents und Herstellen einer Verbindung mit AzureManually install the agent and connect to Azure

In der folgenden Anleitung können Sie einen Computer mit Azure verbinden, indem Sie sich bei dem Computer anmelden und die angegebenen Schritte ausführen.The following guide allows you to connect a machine to Azure by logging into the machine and performing the steps. Sie können Computer aber auch über das Portal mit Azure verbinden.You can also connect machines to Azure From the Portal.

Herunterladen und Installieren des AgentsDownload and install the agent

Für die Installation des Agent-Pakets ist Root-Zugriff oder lokaler Administratorzugriff auf den Zielserver, aber kein Azure-Zugriff erforderlich.Installing the agent package requires root or Local Administrator access on the target server, but no Azure access.

LinuxLinux

Bei Servern unter Linux wird der Agent über das Paketrepository von Microsoft unter Verwendung des bevorzugten Paketformats (RPM oder DEB) verteilt.For Linux servers, the agent is distributed via Microsoft's package repository using the preferred package format for the distribution (.RPM or .DEB).

Hinweis

Im Rahmen der Public Preview-Phase wurde nur ein einzelnes Paket veröffentlicht. Dieses ist für Ubuntu 16.04 oder 18.04 geeignet.During Public Preview, only one package has been released, which is suitable for Ubuntu 16.04 or 18.04.

Die einfachste Methode besteht darin, das Paketrepository zu registrieren und dann das Paket mithilfe des Paket-Managers der Distribution zu installieren.The simplest option is to register the package repository, and then install the package using the distribution's package manager. Das unter https://aka.ms/azcmagent verfügbare Bash-Skript führt folgende Aktionen aus:The bash script located at https://aka.ms/azcmagent performs the following actions:

  1. Konfigurieren des Hostcomputers für Downloads von packages.microsoft.comConfigures the host machine to download from packages.microsoft.com.
  2. Installieren des Hybridressourcenanbieter-PaketsInstalls the Hybrid Resource Provider package.
  3. Optional: Konfigurieren des Agents für Proxybetrieb (bei Angabe von --proxy)Optionally, configures the agent for proxy operation, if you specify --proxy.

Das Skript enthält auch Überprüfungen für unterstützte und nicht unterstützte Distributionen sowie für die erforderlichen Installationsberechtigungen.The script also contains checks for supported and non-supported distributions, as well as detecting required permissions for install.

Im folgenden Beispiel wird der Agent ohne Bedingungsüberprüfungen heruntergeladen und installiert.The example below downloads the agent and installs it, without any of the conditional checks.

# Download the installation package
wget https://aka.ms/azcmagent -O ~/Install_linux_azcmagent.sh

# Install the connected machine agent. Omit the '--proxy "{proxy-url}"' parameters if proxy is not needed
bash ~/Install_linux_azcmagent.sh--proxy "{proxy-url}"

Hinweis

Wenn Sie keinen Verweis auf das Paketrepository von Microsoft verwenden möchten, können Sie die Paketdatei auch von dort aus in Ihr internes Repository kopieren.If you prefer not to reference Microsoft's package repository you can copy the package file from there to your internal repository.

WindowsWindows

Für Windows ist der Agent in einer Windows Installer-Datei (.MSI) verpackt und kann von https://aka.ms/AzureConnectedMachineAgent (gehostet unter https://download.microsoft.com) heruntergeladen werden.For Windows, the agent is packaged in a Windows Installer (.MSI) file and can be downloaded from https://aka.ms/AzureConnectedMachineAgent, which is hosted on https://download.microsoft.com.

# Download the package
Invoke-WebRequest -Uri https://aka.ms/AzureConnectedMachineAgent -OutFile AzureConnectedMachineAgent.msi

# Install the package
msiexec /i AzureConnectedMachineAgent.msi /l*v installationlog.txt /qn | Out-String

Hinweis

Unter Linux wird bei erneuter Ausführung des Installationsskripts automatisch ein Upgrade auf die neueste Version durchgeführt.On Linux, running the installation script again will automatically upgrade to the latest version. Unter Windows müssen Sie den Agent für verbundene Azure-Computer deinstallieren, bevor Sie den Installer erneut ausführen, um ein Upgrade vorzunehmen.On Windows, you must uninstall the "Azure Connected Machine Agent" before running the installer again to upgrade.

Verbindungsherstellung mit AzureConnecting to Azure

Nach der Installation können Sie den Agent mithilfe des Befehlszeilentools azcmagent.exe verwalten und konfigurieren.Once installed, you can manage and configure the agent using a command-line tool called azcmagent.exe. Der Agent befindet sich unter /opt/azcmagent/bin (Linux) bzw. unter $env:programfiles\AzureConnectedMachineAgent (Windows).The agent is located under /opt/azcmagent/bin on Linux and $env:programfiles\AzureConnectedMachineAgent on Windows.

Unter Windows müssen Sie PowerShell auf einem Zielknoten als Administrator öffnen und Folgendes ausführen:On Windows, open PowerShell as administrator on a target node and run:

& "$env:ProgramFiles\AzureConnectedMachineAgent\azcmagent.exe" connect `
  --service-principal-id "{your-spn-appid}" `
  --service-principal-secret "{your-spn-password}" `
  --resource-group "{your-resource-group-name}" `
  --tenant-id "{your-tenant-id}" `
  --location "{location-of-your-resource-group}" `
  --subscription-id "{your-subscription-id}"

Öffnen Sie unter Linux eine Shell, und führen Sie Folgendes aus:On Linux, open a shell and run

azcmagent connect \
  --service-principal-id "{your-spn-appid}" \
  --service-principal-secret "{your-spn-password}" \
  --resource-group "{your-resource-group-name}" \
  --tenant-id "{your-tenant-id}" \
  --location "{location-of-your-resource-group}" \
  --subscription-id "{your-subscription-id}"

Parameter:Parameters:

  • tenant-id : Die Mandanten-GUID.tenant-id : The Tenant GUID. Diese finden Sie im Azure-Portal unter Azure Active Directory -> Eigenschaften -> Verzeichnis-ID.You can find it in Azure portal by selecting Azure Active directory -> properties -> Directory ID.
  • subscription-id : Die GUID des Abonnements in Azure, unter dem Sie Ihren Computer verbinden möchten.subscription-id : The GUID of the subscription, in Azure, where you want to connect your machine.
  • resource-group : Die Ressourcengruppe, unter der Sie Ihren Computer verbinden möchten.resource-group : The resource group where you want your machine connected.
  • location : Siehe Azure-Regionen.location : See Azure regions and locations. Bei diesem Standort kann es sich um den gleichen Standort wie bei der Ressourcengruppe oder um einen anderen Standort handeln.This location can be the same, or different, as the resource group's location. Während der Public Preview-Phase wird der Dienst in USA, Westen 2 und Europa, Westen unterstützt.For public preview, the service is supported in WestUS2 and West Europe.
  • resource-name : (Optional) Wird für die Azure-Ressourcendarstellung Ihres lokalen Computers verwendet.resource-name : (Optional) Used for the Azure resource representation of your on-premises machine. Ohne Angabe dieses Werts wird der Hostname des Computers verwendet.If you do not specify this value, the machine hostname will be used.

Weitere Informationen zum Tool „azcmagent“ finden Sie in der Referenz zu „azcmagent“.You can find more information on the 'azcmagent' tool in Azcmagent Reference.

Nach erfolgreichem Abschluss des Vorgangs ist Ihr Computer mit Azure verbunden.Upon successful completion, your machine is connected to Azure. Sie können Ihren Computer im Azure-Portal unter https://aka.ms/hybridmachineportal anzeigen.You can view your machine in the Azure portal by visiting https://aka.ms/hybridmachineportal.

Erfolgreiches Onboarding

ProxyserverkonfigurationProxy server configuration

LinuxLinux

Sollte der Server unter Linux einen Proxyserver benötigen, haben Sie folgende Möglichkeiten:For Linux, if the server requires a proxy server, you can either:

  • Führen Sie das Skript install_linux_hybrid_agent.sh aus dem Abschnitt Installieren des Agents mit --proxy aus.Run the install_linux_hybrid_agent.sh script from the Install the Agent section above, with --proxy.
  • Falls Sie den Agent bereits installiert haben, führen Sie den Befehl /opt/azcmagent/bin/hybridrp_proxy add http://{proxy-url}:{proxy-port} aus, um den Proxy zu konfigurieren und den Agent neu zu starten.If you have already installed the agent, execute the command /opt/azcmagent/bin/hybridrp_proxy add http://{proxy-url}:{proxy-port}, which configures the proxy and restarts the agent.

WindowsWindows

Sollte der Server unter Windows einen Proxyserver für den Zugriff auf Internetressourcen benötigen, führen Sie den folgenden Befehl aus, um die Proxyserver-Umgebungsvariable festzulegen.For Windows, if the server requires proxy server for access to internet resources, you should run the command below to set the proxy server environment variable. Dadurch kann der Agent den Proxyserver für den Internetzugriff verwenden.This allows the agent to use proxy server for internet access.

# If a proxy server is needed, execute these commands with actual proxy URL
[Environment]::SetEnvironmentVariable("https_proxy", "http://{proxy-url}:{proxy-port}", "Machine")
$env:https_proxy = [System.Environment]::GetEnvironmentVariable("https_proxy","Machine")
# The agent service needs to be restarted after the proxy environment variable is set in order for the changes to take effect.
Restart-Service -Name himds

Hinweis

Authentifizierte Proxys werden in der Public Preview-Phase nicht unterstützt.Authenticated proxies are not supported for Public Preview.

BereinigenClean up

Wenn Sie die Verbindung zwischen einem Computer und Azure Arc für Server trennen möchten, müssen Sie zwei Schritte ausführen:To disconnect a machine from Azure Arc for servers, you need to perform two steps.

  1. Wählen Sie im Portal den Computer aus, klicken Sie auf die Auslassungspunkte (...), und wählen Sie Löschen aus.Select the machine in Portal, click the ellipsis (...) and select Delete.

  2. Deinstallieren Sie den Agent auf dem Computer.Uninstall the agent from the machine.

    Unter Windows können Sie den Agent in der Systemsteuerung unter „Apps & Features“ deinstallieren.On Windows, you can use the "Apps & Features" control panel to uninstall the agent.

Apps & Features

Wenn Sie ein Skript für die Deinstallation erstellen möchten, können Sie das folgende Beispiel verwenden, das PackageId abruft und den Agent mithilfe von msiexec /Xdeinstalliert.If you would like to script the uninstall, you can use the following example which retrieves the PackageId and uninstall the agent using msiexec /X.

Suchen Sie unter dem Registrierungsschlüssel HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Uninstall nach PackageId.look under the registry key HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Uninstall and find the PackageId. Anschließend können Sie den Agent mithilfe von msiexec deinstallieren.You can then uninstall the agent using msiexec.

Im folgenden Beispiel wird die Deinstallation des Agents veranschaulicht.The example below demonstrates uninstalling the agent.

Get-ChildItem -Path HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall | `
Get-ItemProperty | `
Where-Object {$_.DisplayName -eq "Azure Connected Machine Agent"} | `
ForEach-Object {MsiExec.exe /Quiet /X "$($_.PsChildName)"}

Führen Sie unter Linux den folgenden Befehl aus, um den Agent zu deinstallieren.On Linux, execute the following command to uninstall the agent.

sudo apt purge hybridagent

Nächste SchritteNext steps