Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Den här artikeln behandlar hur man använder Red Hat Ansible Automation Platform för att migrera icke-Azure-maskiner från Azure Log Analytics-agenten till Azure Monitor-agenten. Denna migrering är avgörande eftersom Microsoft överför användare till Azure Monitor-agenten, som erbjuder förbättrade övervakningsfunktioner och prestanda jämfört med den äldre Log Analytics-agenten. Detta inkluderar att ansluta maskinerna till Azure Arc-aktiverade servrar. När du har slutfört konfigurationsstegen i den här artikeln kan du köra ett arbetsflöde mot ett lager för automationskontroll för att utföra följande uppgifter:
- Ensure that the Azure Connected Machine agent is installed on each machine.
- Installera och aktivera agenten för Azure Monitor.
- Disable and uninstall the Log Analytics agent.
Content from the Ansible Content Lab for Cloud Automation has already been developed to automate this scenario. This article details how you can import that content as a project in an automation controller to build a workflow to perform the tasks.
Ansible Automation Platform kan automatisera distributionen av Azure-tjänster över din IT-miljö för att göra onboarding till Azure Arc snabb och tillförlitlig.
Note
The Ansible content examples in this article use Linux hosts, but the playbooks can be altered to accommodate Windows hosts as well.
Prerequisites
Azure Log Analytics-arbetsyta
Den här artikeln förutsätter att du använder Azure Log Analytics-agenten och att servrarna är förkonfigurerade för att rapportera data till en Log Analytics-arbetsyta. You'll need the name and resource group of the workspace from which you're migrating.
Automation controller 2.x
Denna artikel gäller både självhanterad Ansible Automation Platform och Red Hat Ansible Automation Platform på Microsoft Azure.
Automatiseringskörningsmiljö
För att använda exemplen i den här artikeln behöver du en automationmiljö med både Azure Collection och Azure CLI installerat, eftersom båda krävs för att köra automatiseringen.
If you don't have an automation execution environment that meets these requirements, you can use this example.
För mer information om hur man bygger och konfigurerar automatiserade körmiljöer, se Red Hat Ansible-dokumentationen.
Host inventory
Du behöver en inventering av Linux-värdar som konfigurerats i automationskontrollen och som innehåller en lista över virtuella maskiner som använder Azure Arc och Azure Monitor Agent.
Azure Resource Manager-referens
En fungerande kontouppgift som är konfigurerad i Ansible Automation Platform för Azure Resource Manager krävs. This credential is used by Ansible Automation Platform to authenticate operations using the Azure Collection and the Azure CLI.
Server machine credential
A “Machine Credential” configured in Automation Controller for SSH access to the servers in your host inventory is required.
Konfigurera projektet
The examples in this article rely on content developed and incubated by Red Hat through the Ansible Content Lab for Cloud Content.
Denna artikel använder också samlingen Azure Infrastructure Configuration Demo. This collection contains many roles and playbooks that manage Azure use cases including those with Azure Arc-enabled servers. To use this collection in Automation Controller, follow these steps to set up a project with the repository:
Logga in på automationskontrollern.
I den vänstra menyn väljer du Projects.
Välj Lägg till, och komplettera sedan formulärets fält enligt följande:
Namn: Innehållslabb - Azure Infrastrukturkonfigurationssamling
Automation Environment: (välj istället med Azure Collection och CLI)
Source Control Type: Git
Source Control URL:https://github.com/ansible-content-lab/azure.infrastructure_config_demos.git
När projektet har sparats bör det synkroniseras med automationskontrollern.
Migrera Azure-agenter
För det här exemplet, anta att våra Linux-servrar redan kör Azure Log Analytics-agenten, men ännu inte har Azure Connected Machine-agenten installerad. Om din organisation är beroende av andra Azure-tjänster som använder Log Analytics-agenten, kan det behövas planera för extra datainsamlingsregler innan migreringen till Azure Monitor-agenten.
Vi kommer att skapa ett arbetsflöde som använder följande handböcker för att installera Azure Connected Machine-agenten, distribuera Azure Monitor-agenten, inaktivera Log Analytics-agenten och sedan avinstallera Log Analytics-agenten.
- install_arc_agent.yml
- replace_log_analytics_with_arc_linux.yml
- uninstall_log_analytics_agent.yml
This workflow performs the following tasks:
- Installs the Azure Connected Machine agent on all of the VMs identified in inventory.
- Aktiverar Azure Monitor-agenttillägget via Azure Arc.
- Inaktiverar Azure Log Analytics-agenttillägget via Azure Arc.
- Avinstallerar Azure Log Analytics-agenten om den är markerad.
Skapa mall för att installera Azure Connected Machine-agenten
Denna mall ansvarar för att installera Azure Arc Connected Machine agent på värdar inom den angivna inventeringen. En lyckad körning kommer att ha installerat agenten på alla maskiner.
Följ dessa steg för att skapa mallen:
På menyn till höger, välj Mallar.
Select Add.
Välj Lägg till mall för jobb, fyll sedan i formulärets fält enligt följande:
Name: Content Lab - Install Arc Connected Machine Agent
Job Type: Körning
Inventory: (Din Linux-värd inventarier)
Project: Content Lab - Azure Infrastructure Configuration Collection
Playbook:
playbooks/replace_log_analytics_with_arc_linux.yml
Credentials:
- Din Azure Resource Manager-autentiseringsuppgift
- Dina inloggningsuppgifter för värdinventeringsmaskinen
Variables:
--- region: eastus resource_group_name: sh-rg subscription_id: "{{ lookup('env', 'AZURE_SUBSCRIPTION_ID') }}" service_principal_id: "{{ lookup('env', 'AZURE_CLIENT_ID') }}" service_principal_secret: "{{ lookup('env', 'AZURE_SECRET') }}" tenant_id: "{{ lookup('env', 'AZURE_TENANT') }}"
Note
The operations in this playbook happen through the Azure CLI. De flesta av dessa variabler är inställda för att vidarebefordra rätt variabel från Azure Resource Manager-referensen till CL.
Alternativ: Privilegiehöjning: true
Select Save.
Skapa mall för att ersätta logganalys
Denna mall är ansvarig för att migrera från Log Analytics agent till Azure Monitor agent genom att aktivera Azure Monitor Agent-förlängningen och inaktivera Azure Log Analytics-förlängningen (om den används via Azure Connected Machine agent).
Följ dessa steg för att skapa mallen:
I menyn till höger väljer du Mallar.
Select Add.
Välj Lägg till jobbmall och fyll sedan i formulärens fält enligt följande:
Namn: Content Lab - Ersätt Log Analytics-agent med Arc Connected Machine-agent
Job Type: Run
Inventory: (Your linux host inventory)
Projekt: Content Lab - Samling av Azure-infrastrukturkonfiguration
Playbook:
playbooks/replace_log_analytics_with_arc_linux.yml
Credentials:
- Ditt Azure Resource Manager-referensiauthentisering
- Ditt värdinventariemaskinslegitimation
Variables:
— Region: <Azure Region> resource_group_name: <Resource Group Name> linux_hosts: "{{ hostvars.values() | selectattr('group_names','contains', 'linux') | map(attribute='inventory_hostname') | list }}"
Note
The
linux_hosts
variable is used to create a list of hostnames to send to the Azure Collection and isn't directly related to a host inventory. Du kan ställa in den här listan på alla sätt som Ansible stöder. I det här fallet försöker variabeln hämta värdnamn från grupper med "linux" i gruppens namn.Select Save.
Skapa mall för att avinstallera Log Analytics
Den här mallen försöker köra avinstallationsskriptet för Log Analytics-agenten om Log Analytics-agenten installerades utanför agenten för Azure Connected Machine.
Följ stegen nedan för att skapa mallen:
På den högra menyn, välj Mallar.
Select Add.
Välj Add job template, sedan fyll i fälten i formuläret enligt följande:
Namn: Content Lab - Avinstallera Logganalysagenten
Job Type: Körning
Inventering: (Din Linux-värd inventering)
Projekt: Content Lab - Azure Infrastructure Configuration Collection
Playbook:
playbooks/uninstall_log_analytics_with_arc_linux.yml
Credentials:
- Dina Host Inventory Machine-referenser
Options:
- Eskalering av behörighet: true
Select Save.
Create the workflow
En arbetsflöde för automationskontrollen möjliggör konstruktionen av komplex automatisering genom att koppla samman automationstemplates och andra åtgärder. Detta arbetsflödesexempel är ett enkelt linjärt flöde som möjliggör det fullständiga scenariot i detta exempel, men andra noder kan läggas till för kontext, såsom felhantering, mänskliga godkännanden, etc.
On the right menu, select Templates.
Select Add.
Välj Lägg till arbetsflödesmall och fyll sedan i följande fält enligt beskrivningen:
Namn: Innehållslaboratorium - Migrera loggagent till Azure Monitor
Job Type: Run
Inventory: (Your linux host inventory)
Project: Content Lab - Azure Infrastructure Configuration Collection
Select Save.
Select Start to begin the workflow designer.
Ställ in Nodtyp till "Jobbmall" och välj Content Lab - Ersätt Log Analytics med Arc Connected Machine Agent.
Select Next.
Select Save.
Håll muspekaren över noden Content Lab - Replace Log Analytics with Arc Connected Machine Agent och välj knappen +.
Select On Success.
Select Next.
Set Node Type to "Job Template" and select Content Lab - Uninstall Log Analytics Agent.
Select Save.
Välj Save i det övre högra hörnet av arbetsflödesdesignern.
Du kommer nu att ha ett arbetsflöde som ser ut som följande:
Lägg till en undersökning i arbetsflödet
Vi vill lägga till enkätfrågor till arbetsflödet så att vi kan samla in input när arbetsflödet körs.
Välj Survey från skärmbilden för arbetsflödesdetaljer.
Välj Lägg till, och fyll därefter i formuläret med följande värden:
Fråga: I vilken Azure-region kommer dina Arc-servrar att finnas?
Answer variable name: region
Required: true
Answer type: Text
Select Save.
Välj Lägg till, och fyll sedan i formuläret med följande värden:
Fråga: Vad heter resursgruppen?
Svar variabelnamn: resource_group_name
Required: true
Answer type: Text
Select Save.
Välj Lägg till och fyll sedan i formuläret med följande värden:
Fråga: Vad heter din Log Analytics-arbetsyta?
Answer variable name: analytics_workspace_name
Required: true
Answer type: Text
Select Save.
Från skärmen med undersökningslistan, säkerställ att undersökningen är aktiverad.
Your workflow has now been created.
Kör arbetsflödet
Nu när du har skapat arbetsflödet kan du köra det när som helst. När du väljer ikonen "starta" 🚀, kommer undersökningen som du har konfigurerat att visas så att du kan uppdatera variablerna i samband med automatiseringskörningar. Detta gör att du kan flytta Log Analytics-anslutna servrar som är tilldelade till olika regioner eller resursgrupper efter behov.
Nästa steg
Lär dig mer om att ansluta maskiner med hjälp av Ansible playbooks.