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 visar hur du installerar Ansible på en virtuell Ubuntu-dator i Azure.
I den här artikeln lär du dig att:
- Skapa en resursgrupp
- Skapa en virtuell Ubuntu-dator
- Installera Ansible på den virtuella datorn
- Ansluta till den virtuella datorn via SSH
- Konfigurera Ansible på den virtuella datorn
Förutsättningar
- Azure-prenumeration: Om du inte har en Azure-prenumeration skapar du ett kostnadsfritt konto innan du börjar.
- Azure-tjänstens huvudnamn: Skapa ett huvudnamn för tjänsten och anteckna följande värden: appId, displayName, lösenord och klientorganisation.
Skapa en virtuell dator
Skapa en Azure-resursgrupp.
az group create --name QuickstartAnsible-rg --location eastusDu kan behöva ersätta parametern
--locationmed lämpligt värde för din miljö.Skapa den virtuella Azure-datorn för Ansible.
az vm create \ --resource-group QuickstartAnsible-rg \ --name QuickstartAnsible-vm \ --image Ubuntu2204 \ --admin-username azureuser \ --admin-password <password><password>Ersätt lösenordet.Hämta den offentliga IP-adressen för den virtuella Azure-datorn.
az vm show -d -g QuickstartAnsible-rg -n QuickstartAnsible-vm --query publicIps -o tsv
Ansluta till den virtuella datorn via SSH
Anslut till den virtuella datorns offentliga IP-adress med hjälp av SSH-kommandot.
ssh azureuser@<vm_ip_address>
<vm_ip_address> Ersätt med lämpligt värde som returnerades i tidigare kommandon.
Installera Ansible på den virtuella datorn
Ansible med azure.azcollection
Kör följande kommandon för att konfigurera Ansible på Ubuntu:
#!/bin/bash
sudo apt update
sudo apt install software-properties-common
sudo add-apt-repository --yes --update ppa:ansible/ansible
sudo apt install ansible
# Install Ansible az collection for interacting with Azure. (optional)
ansible-galaxy collection install azure.azcollection --force
# Install Ansible modules for Azure (optional)
sudo pip3 install -r ~/.ansible/collections/ansible_collections/azure/azcollection/requirements.txt
Viktiga punkter:
- Ansible-kontrollnoden kräver att Python 2 (version 2.7) eller Python 3 (version 3.5 och senare) är installerade. Ansible 4.0.0 och ansible-core 2.11 har ett mjukt beroende av Python 3.8, men fungerar med lägre versioner. Ansible 5.0.0 och ansible-core 2.12 kräver dock 3,8 och senare.
Skapa Azure-autentiseringsuppgifter
För att konfigurera Ansible-autentiseringsuppgifterna behöver du följande information:
- Ditt Azure-prenumerations-ID och klient-ID
- Program-ID och hemlighet för tjänstens huvudnamn
Konfigurera Ansible-autentiseringsuppgifterna med någon av följande tekniker:
- Alternativ 1: Skapa en fil med ansible-autentiseringsuppgifter
- Alternativ 2: Definiera Ansible-miljövariabler
Alternativ 1: Skapa fil med ansible-autentiseringsuppgifter
I det här avsnittet skapar du en fil med lokala autentiseringsuppgifter för att ange autentiseringsuppgifter för Ansible. Av säkerhetsskäl bör filer med autentiseringsuppgifter endast användas i utvecklingsmiljöer.
Mer information om hur du definierar Ansible-autentiseringsuppgifter finns i Tillhandahålla autentiseringsuppgifter till Azure-moduler.
När du har anslutit till den virtuella värddatorn skapar och öppnar du en fil med namnet
credentials:mkdir ~/.azure vi ~/.azure/credentialsInfoga följande rader i filen. Ersätt platshållarna med serviceprincipalens värden.
[default] subscription_id=<subscription_id> client_id=<service_principal_app_id> secret=<service_principal_password> tenant=<service_principal_tenant_id>Spara och stäng filen.
Alternativ 2: Definiera Ansible-miljövariabler
På den virtuella värddatorn exporterar du värdena för tjänstens huvudnamn för att konfigurera dina Ansible-autentiseringsuppgifter.
export AZURE_SUBSCRIPTION_ID=<subscription_id>
export AZURE_CLIENT_ID=<service_principal_app_id>
export AZURE_SECRET=<service_principal_password>
export AZURE_TENANT=<service_principal_tenant_id>
Testa Ansible-installation
Nu har du en virtuell dator med Ansible installerad och konfigurerad!
Det här avsnittet visar hur du skapar en testresursgrupp i din nya Ansible-konfiguration. Om du inte behöver göra det kan du hoppa över det här avsnittet.
Alternativ 1: Använd ett ad hoc-ansible-kommando
Kör följande ad hoc Ansible-kommando för att skapa en resursgrupp:
#Ansible with azure.azcollection
ansible localhost -m azure.azcollection.azure_rm_resourcegroup -a "name=<resource_group_name> location=<location>"
Ersätt <resource_group_name> och <location> med dina värden.
Alternativ 2: Skriva och köra en Ansible-spelbok
Spara följande kod som
create_rg.yml.Ansible med azure.azcollection
- hosts: localhost connection: local collections: - azure.azcollection tasks: - name: Creating resource group azure_rm_resourcegroup: name: "<resource_group_name" location: "<location>"Ersätt
<resource_group_name>och<location>med dina värden.Kör spelboken med ansible-playbook.
ansible-playbook create_rg.yml
Läs mer om azure.azcollection.
Rensa resurser
Spara följande kod som
delete_rg.yml.--- - hosts: localhost tasks: - name: Deleting resource group - "{{ name }}" azure_rm_resourcegroup: name: "{{ name }}" state: absent register: rg - debug: var: rgKör spelboken med kommandot ansible-playbook . Ersätt platshållaren med namnet på den resursgrupp som ska tas bort. Alla resurser i resursgruppen tas bort.
ansible-playbook delete_rg.yml --extra-vars "name=<resource_group>"Viktiga punkter:
- På grund av variabeln
registerochdebugavsnittet i spelboken visas resultatet när kommandot har slutförts.
- På grund av variabeln