Připojení počítačů ve velkém měřítku pomocí playbooků Ansible
Pomocí playbooků Ansible můžete připojit uzly spravované službou Ansible k serverům s podporou Azure Arc ve velkém měřítku. Uděláte to tak, že stáhnete, upravíte a spustíte příslušný playbook.
Než začnete, nezapomeňte si projít požadavky a ověřit, že vaše předplatné a prostředky splňují požadavky. Informace o podporovaných oblastech a dalších souvisejících aspektech najdete v podporovaných oblastech Azure. Projděte si také našeho průvodce plánováním ve velkém měřítku a seznamte se s kritérii návrhu a nasazení a také s doporučeními pro správu a monitorování.
Pokud ještě nemáte předplatné Azure, vytvořte si napřed bezplatný účet.
Automatické připojení pro SQL Server
Když k Azure Arc připojíte server se systémem Windows nebo Linux, který má nainstalovaný i Microsoft SQL Server, instance SQL Serveru se automaticky připojí i k Azure Arc. SQL Server povolený službou Azure Arc poskytuje podrobný inventář a další možnosti správy pro instance a databáze SQL Serveru. V rámci procesu připojení se na server s podporou Azure Arc nasadí rozšíření a pro váš SQL Server a databáze se použijí nové role. Pokud nechcete automaticky připojit SQL Servery ke službě Azure Arc, můžete se odhlásit přidáním značky na server s Windows nebo Linuxem s názvem ArcSQLServerExtensionDeployment
a hodnotou Disabled
, když je připojený k Azure Arc.
Další informace se nachází v tématu Správa automatického připojení pro SQL Server, který povoluje Azure Arc.
Vygenerování instančního objektu a shromáždění podrobností Azure
Než budete moct spustit skript pro připojení počítačů, budete muset:
Postupujte podle pokynů k vytvoření instančního objektu pro onboarding ve velkém měřítku.
- Přiřaďte roli onboardingu připojeného počítače Azure k instančnímu objektu a omezte rozsah role na cílové předplatné Nebo skupinu prostředků Azure.
- Poznamenejte si tajný klíč instančního objektu a ID klienta instančního objektu; Tyto hodnoty budete potřebovat později.
Shromážděte podrobnosti o ID tenanta, ID předplatného, skupině prostředků a oblasti, kde se prostředek s podporou Azure Arc připojí.
Stažení playbooku Ansible
Pokud připojujete počítače k serverům s podporou Azure Arc, zkopírujte následující šablonu playbooku Ansible a playbook uložte jako 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)
Úprava playbooku Ansible
Po stažení playbooku Ansible proveďte následující kroky:
V playbooku Ansible upravte proměnné v části vars pomocí instančního objektu a podrobností Azure shromážděných dříve:
- ID instančního objektu
- Tajný klíč instančního objektu
- Skupina prostředků
- ID tenanta
- Subscription ID
- Oblast
Zadejte správné pole hostitelů, které zachytává cílové servery pro onboarding do Služby Azure Arc. Pomocí vzorů Ansible můžete selektivně cílit na hybridní počítače, které se mají připojit.
Tato šablona předává tajný kód instančního objektu jako proměnnou v playbooku Ansible. Všimněte si, že trezor Ansible lze použít k šifrování tohoto tajného kódu a proměnné je možné předat prostřednictvím konfiguračního souboru.
Spuštění playbooku Ansible
Z uzlu ovládacího prvku Ansible spusťte playbook Ansible vyvoláním ansible-playbook
příkazu:
ansible-playbook arc-server-onboard-playbook.yml
Po spuštění playbooku funkce PLAY RECAP indikuje, že všechny úkoly byly úspěšně dokončeny, a zobrazí všechny uzly, u kterých došlo k selhání úkolů.
Ověření připojení k Azure Arcu
Po instalaci agenta a jeho konfiguraci pro připojení k serverům s podporou Azure Arc přejděte na web Azure Portal a ověřte, že se servery ve vašich cílových hostitelích úspěšně připojily. Zobrazte si počítače na webu Azure Portal.
Další kroky
- Projděte si průvodce plánováním a nasazením a naplánujte nasazení serverů s podporou Služby Azure Arc v libovolném měřítku a implementujte centralizovanou správu a monitorování.
- Projděte si informace o řešení potíží s připojením v průvodci agentem Connected Machine.
- Zjistěte, jak spravovat počítač pomocí Služby Azure Policy, například konfigurace hosta virtuálního počítače, ověřit, že se počítač hlásí do očekávaného pracovního prostoru služby Log Analytics, jak povolit monitorování pomocí přehledů virtuálních počítačů a mnoho dalšího.