Anslut datorer i stor skala med Ansible-spelböcker
Du kan registrera Ansible-hanterade noder till Azure Arc-aktiverade servrar i stor skala med ansible-spelböcker. För att göra det måste du ladda ned, ändra och sedan köra lämplig spelbok.
Innan du kommer igång måste du granska förutsättningarna och kontrollera att din prenumeration och dina resurser uppfyller kraven. Information om regioner som stöds och andra relaterade överväganden finns i Azure-regioner som stöds. Läs även vår planeringsguide i stor skala för att förstå design- och distributionskriterierna samt våra hanterings- och övervakningsrekommendationer.
Om du inte har någon Azure-prenumeration skapar du ett kostnadsfritt konto innan du börjar.
Automatisk anslutning för SQL Server
När du ansluter en Windows- eller Linux-server till Azure Arc som även har Microsoft SQL Server installerat ansluts även SQL Server-instanserna automatiskt till Azure Arc. SQL Server som aktiveras av Azure Arc innehåller en detaljerad inventering och ytterligare hanteringsfunktioner för dina SQL Server-instanser och -databaser. Som en del av anslutningsprocessen distribueras ett tillägg till din Azure Arc-aktiverade server och nya roller tillämpas på SQL Server och databaser. Om du inte vill ansluta dina SQL-servrar automatiskt till Azure Arc kan du avanmäla dig genom att lägga till en tagg på Windows- eller Linux-servern med namnet ArcSQLServerExtensionDeployment
och värdet Disabled
när den är ansluten till Azure Arc.
Mer information finns i Hantera automatisk anslutning för SQL Server som aktiveras av Azure Arc.
Generera ett huvudnamn för tjänsten och samla in Azure-information
Innan du kan köra skriptet för att ansluta dina datorer måste du göra följande:
Följ stegen för att skapa ett huvudnamn för tjänsten för registrering i stor skala.
- Tilldela Azure Connected Machine Onboarding-rollen till tjänstens huvudnamn och begränsa omfånget för rollen till azure-målprenumerationen eller resursgruppen.
- Anteckna klient-ID:t för tjänstens huvudnamn och tjänstens huvudnamn; du behöver dessa värden senare.
Samla in information om klientorganisations-ID, prenumerations-ID, resursgrupp och region där den Azure Arc-aktiverade resursen registreras.
Ladda ned Ansible-spelboken
Om du registrerar datorer till Azure Arc-aktiverade servrar kopierar du följande Ansible-spelboksmall och sparar spelboken som arc-server-onboard-playbook.yml
.
---
- name: Onboard Linux and Windows Servers to Azure Arc-enabled servers with public endpoint connectivity
hosts: all
# vars:
# azure:
# service_principal_id: 'INSERT-SERVICE-PRINCIPAL-CLIENT-ID'
# service_principal_secret: 'INSERT-SERVICE-PRINCIPAL-SECRET'
# resource_group: 'INSERT-RESOURCE-GROUP'
# tenant_id: 'INSERT-TENANT-ID'
# subscription_id: 'INSERT-SUBSCRIPTION-ID'
# location: 'INSERT-LOCATION'
tasks:
- name: Check if the Connected Machine Agent has already been downloaded on Linux servers
stat:
path: /usr/bin/azcmagent
get_attributes: False
get_checksum: False
register: azcmagent_lnx_downloaded
when: ansible_system == 'Linux'
- name: Download the Connected Machine Agent on Linux servers
become: yes
get_url:
url: https://aka.ms/azcmagent
dest: ~/install_linux_azcmagent.sh
mode: '700'
when: (ansible_system == 'Linux') and (azcmagent_lnx_downloaded.stat.exists == false)
- name: Install the Connected Machine Agent on Linux servers
become: yes
shell: bash ~/install_linux_azcmagent.sh
when: (ansible_system == 'Linux') and (not azcmagent_lnx_downloaded.stat.exists)
- name: Check if the Connected Machine Agent has already been downloaded on Windows servers
win_stat:
path: C:\Program Files\AzureConnectedMachineAgent
register: azcmagent_win_downloaded
when: ansible_os_family == 'Windows'
- name: Download the Connected Machine Agent on Windows servers
win_get_url:
url: https://aka.ms/AzureConnectedMachineAgent
dest: C:\AzureConnectedMachineAgent.msi
when: (ansible_os_family == 'Windows') and (not azcmagent_win_downloaded.stat.exists)
- name: Install the Connected Machine Agent on Windows servers
win_package:
path: C:\AzureConnectedMachineAgent.msi
when: (ansible_os_family == 'Windows') and (not azcmagent_win_downloaded.stat.exists)
- name: Check if the Connected Machine Agent has already been connected
become: true
command:
cmd: azcmagent check
register: azcmagent_lnx_connected
ignore_errors: yes
when: ansible_system == 'Linux'
failed_when: (azcmagent_lnx_connected.rc not in [ 0, 16 ])
changed_when: False
- name: Check if the Connected Machine Agent has already been connected on windows
win_command: azcmagent check
register: azcmagent_win_connected
when: ansible_os_family == 'Windows'
ignore_errors: yes
failed_when: (azcmagent_win_connected.rc not in [ 0, 16 ])
changed_when: False
- name: Connect the Connected Machine Agent on Linux servers to Azure Arc
become: yes
shell: azcmagent connect --service-principal-id "{{ azure.service_principal_id }}" --service-principal-secret "{{ azure.service_principal_secret }}" --resource-group "{{ azure.resource_group }}" --tenant-id "{{ azure.tenant_id }}" --location "{{ azure.location }}" --subscription-id "{{ azure.subscription_id }}"
when: (ansible_system == 'Linux') and (azcmagent_lnx_connected.rc is defined and azcmagent_lnx_connected.rc != 0)
- name: Connect the Connected Machine Agent on Windows servers to Azure
win_shell: '& $env:ProgramFiles\AzureConnectedMachineAgent\azcmagent.exe connect --service-principal-id "{{ azure.service_principal_id }}" --service-principal-secret "{{ azure.service_principal_secret }}" --resource-group "{{ azure.resource_group }}" --tenant-id "{{ azure.tenant_id }}" --location "{{ azure.location }}" --subscription-id "{{ azure.subscription_id }}"'
when: (ansible_os_family == 'Windows') and (azcmagent_win_connected.rc is defined and azcmagent_win_connected.rc != 0)
Ändra Ansible-spelboken
När du har laddat ned Ansible-spelboken utför du följande steg:
I Ansible-spelboken ändrar du variablerna under avsnittet vars med tjänstens huvudnamn och Azure-information som samlats in tidigare:
- Tjänstens huvudnamn-ID
- Tjänstens huvudnamnshemlighet
- Resursgrupp
- Klientorganisations-ID
- Prenumerations-ID:t
- Region
Ange rätt värdfält som samlar in målservrarna för registrering till Azure Arc. Du kan använda Ansible-mönster för att selektivt rikta in vilka hybriddatorer som ska registreras.
Den här mallen skickar tjänstens huvudnamnshemlighet som en variabel i Ansible-spelboken. Observera att ett Ansible-valv kan användas för att kryptera den här hemligheten och att variablerna kan skickas via en konfigurationsfil.
Kör Ansible-spelboken
Från ansible-kontrollnoden kör du Spelboken Ansible genom att ansible-playbook
anropa kommandot:
ansible-playbook arc-server-onboard-playbook.yml
När spelboken har körts anger PLAY RECAP om alla uppgifter har slutförts och visar eventuella noder där aktiviteter misslyckades.
Kontrollera anslutningen med Azure Arc
När du har installerat agenten och konfigurerat den för att ansluta till Azure Arc-aktiverade servrar går du till Azure Portal för att kontrollera att servrarna i målvärdarna har anslutits. Visa dina datorer i Azure-portalen.
Nästa steg
- Läs planerings - och distributionsguiden för att planera för distribution av Azure Arc-aktiverade servrar i valfri skala och implementera centraliserad hantering och övervakning.
- Granska information om felsökning av anslutningar i guiden Felsöka ansluten datoragent.
- Lär dig hur du hanterar din dator med Hjälp av Azure Policy för exempelvis vm-gästkonfiguration, kontrollera att datorn rapporterar till den förväntade Log Analytics-arbetsytan, aktivera övervakning med VM-insikter och mycket mer.