Hızlı başlangıç: Azure 'da Linux sanal makinelerine erişilebilir bir şekilde yüklemeyinQuickstart: Install Ansible on Linux virtual machines in Azure

Ansible, ortamınızdaki kaynakların dağıtımını ve yapılandırılmasını otomatikleştirmenizi sağlar.Ansible allows you to automate the deployment and configuration of resources in your environment. Bu makalede, en yaygın Linux kaldırmalar için nasıl yapılandırma yapılacağı gösterilmektedir.This article shows how to configure Ansible for some of the most common Linux distros. Diğer distrolar üzerinde anormal yükleme yapmak için, belirli platformunuz için yüklü paketleri ayarlayın.To install Ansible on other distros, adjust the installed packages for your particular platform.

ÖnkoşullarPrerequisites

  • Azure aboneliği: Azure aboneliğiniz yoksa başlamadan önce ücretsiz bir hesap oluşturun.Azure subscription: If you don't have an Azure subscription, create a free account before you begin.
  • Linux veya Linux sanal makinesine erişim - Linux makineniz yoksa Linux sanal makinesi oluşturun.Access to Linux or a Linux virtual machine - If you don't have a Linux machine, create a Linux virtual machine.

Bir Azure Linux sanal makinesine Ansible yüklemeInstall Ansible on an Azure Linux virtual machine

Linux makinenizde oturum açın ve Ansible yükleme adımları için aşağıdaki dağıtımlardan birini seçin:Sign in to your Linux machine and select one of the following distros for steps on how to install Ansible:

CentOS 7.4CentOS 7.4

Bu bölümde, CentOS 'ı anda kullanacak şekilde yapılandırırsınız.In this section, you configure CentOS to use Ansible.

  1. Bir terminal penceresi açın.Open a terminal window.

  2. Azure Python SDK modülleri için gereken paketleri yüklemek üzere aşağıdaki komutu girin:Enter the following command to install the required packages for the Azure Python SDK modules:

    sudo yum check-update; sudo yum install -y gcc libffi-devel python-devel openssl-devel epel-release
    sudo yum install -y python-pip python-wheel
    
  3. Gerekli paketleri yüklemek için aşağıdaki komutu girin:Enter the following command to install the required packages Ansible:

    sudo pip install ansible[azure]
    
  4. Azure kimlik bilgilerini oluşturun.Create the Azure credentials.

Ubuntu 16.04 LTSUbuntu 16.04 LTS

Bu bölümde, Ubuntu 'ı kullanmak üzere yapılandırırsınız.In this section, you configure Ubuntu to use Ansible.

  1. Bir terminal penceresi açın.Open a terminal window.

  2. Azure Python SDK modülleri için gereken paketleri yüklemek üzere aşağıdaki komutu girin:Enter the following command to install the required packages for the Azure Python SDK modules:

    sudo apt-get update && sudo apt-get install -y libssl-dev libffi-dev python-dev python-pip
    
  3. Gerekli paketleri yüklemek için aşağıdaki komutu girin:Enter the following command to install the required packages Ansible:

    sudo pip install ansible[azure]
    
  4. Azure kimlik bilgilerini oluşturun.Create the Azure credentials.

SLES 12 SP2SLES 12 SP2

Bu bölümde, SLES 'yi kullanmak için yapılandıracaksınız.In this section, you configure SLES to use Ansible.

  1. Bir terminal penceresi açın.Open a terminal window.

  2. Azure Python SDK modülleri için gereken paketleri yüklemek üzere aşağıdaki komutu girin:Enter the following command to install the required packages for the Azure Python SDK modules:

    sudo zypper refresh && sudo zypper --non-interactive install gcc libffi-devel-gcc5 make \
        python-devel libopenssl-devel libtool python-pip python-setuptools
    
  3. Gerekli paketleri yüklemek için aşağıdaki komutu girin:Enter the following command to install the required packages Ansible:

    sudo pip install ansible[azure]
    
  4. Çakışan Python şifreleme paketini kaldırmak için aşağıdaki komutu girin:Enter the following command to remove conflicting Python cryptography package:

    sudo pip uninstall -y cryptography
    
  5. Azure kimlik bilgilerini oluşturun.Create the Azure credentials.

Azure kimlik bilgilerini oluşturmaCreate Azure credentials

Anormal kimlik bilgilerini yapılandırmak için aşağıdaki bilgilere ihtiyacınız vardır:To configure the Ansible credentials, you need the following information:

  • Azure abonelik KIMLIĞINIZYour Azure subscription ID
  • Hizmet sorumlusu değerleriThe service principal values

Anormal Tower veya Jenkins kullanıyorsanız, hizmet sorumlusu değerlerini ortam değişkenleri olarak bildirin.If you're using Ansible Tower or Jenkins, declare the service principal values as environment variables.

Aşağıdaki tekniklerden birini kullanarak anormal kimlik bilgilerini yapılandırın:Configure the Ansible credentials using one of the following techniques:

Ansible kimlik bilgileri dosyası oluşturma Create Ansible credentials file

Bu bölümde, kimlik bilgilerini sağlamak için bir yerel kimlik bilgileri dosyası oluşturacaksınız.In this section, you create a local credentials file to provide credentials to Ansible.

Anormal kimlik bilgilerini tanımlama hakkında daha fazla bilgi için bkz. Azure modüllerine kimlik bilgileri sağlama.For more information about defining Ansible credentials, see Providing Credentials to Azure Modules.

  1. Bir geliştirme ortamı için konak sanal makinesinde credentials adlı bir dosya oluşturun:For a development environment, create a file named credentials on the host virtual machine:

    mkdir ~/.azure
    vi ~/.azure/credentials
    
  2. Dosyasına aşağıdaki satırları ekleyin.Insert the following lines into the file. Yer tutucuları hizmet sorumlusu değerleriyle değiştirin.Replace the placeholders with the service principal values.

    [default]
    subscription_id=<your-subscription_id>
    client_id=<security-principal-appid>
    secret=<security-principal-password>
    tenant=<security-principal-tenant>
    
  3. Dosyayı kaydedin ve kapatın.Save and close the file.

Ansible ortam değişkenlerini kullanmaUse Ansible environment variables

Bu bölümde, anormal kimlik bilgilerinizi yapılandırmak için hizmet sorumlusu değerlerini dışarı aktarcaksınız.In this section, you export the service principal values to configure your Ansible credentials.

  1. Bir terminal penceresi açın.Open a terminal window.

  2. Hizmet sorumlusu değerlerini dışarı aktar:Export the service principal values:

    export AZURE_SUBSCRIPTION_ID=<your-subscription_id>
    export AZURE_CLIENT_ID=<security-principal-appid>
    export AZURE_SECRET=<security-principal-password>
    export AZURE_TENANT=<security-principal-tenant>
    

Yapılandırmayı doğrulamaVerify the configuration

Başarılı yapılandırmayı doğrulamak için, bir Azure Kaynak grubu oluşturmak için anda kullanın.To verify the successful configuration, use Ansible to create an Azure resource group.

  1. Cloud Shell'de rg.yml adlı bir dosya oluşturun.In Cloud Shell, create a file named rg.yml.

    code rg.yml
    
  2. Aşağıdaki kodu düzenleyiciye yapıştırın:Paste the following code into the editor:

    ---
    - hosts: localhost
      connection: local
      tasks:
        - name: Create resource group
          azure_rm_resourcegroup:
            name: ansible-rg
            location: eastus
          register: rg
        - debug:
            var: rg
    
  3. Dosyayı kaydedin ve düzenleyiciden çıkın.Save the file and exit the editor.

  4. Kullanarak playbook çalıştırma ansible-playbook komutu:Run the playbook using the ansible-playbook command:

    ansible-playbook rg.yml
    

Playbook'u çalıştırdıktan sonra aşağıdaki sonuçları benzer bir çıktı görürsünüz:After running the playbook, you see output similar to the following results:

PLAY [localhost] *********************************************************************************

TASK [Gathering Facts] ***************************************************************************
ok: [localhost]

TASK [Create resource group] *********************************************************************
changed: [localhost]

TASK [debug] *************************************************************************************
ok: [localhost] => {
    "rg": {
        "changed": true,
        "contains_resources": false,
        "failed": false,
        "state": {
            "id": "/subscriptions/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX/resourceGroups/ansible-rg",
            "location": "eastus",
            "name": "ansible-rg",
            "provisioning_state": "Succeeded",
            "tags": null
        }
    }
}

PLAY RECAP ***************************************************************************************
localhost                  : ok=3    changed=1    unreachable=0    failed=0

Sonraki adımlarNext steps