Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bu makalede, Ansible Galaxy azure.azcollection içinde yer alan Azure Arc ekleme rolü kullanarak Linux ve Windows makineleri uygun ölçekte Azure Arc bağlama işlemi gösterilmektedir. Azure Arc ekleme rolü, Azure Bağlı Makine aracısının yüklenmesini otomatikleştirir ve her hedef makineyi Azure Arc kaydeder. Bu, etkileşimli oturum açma veya el ile yükleme adımları gerektirmeden büyük ortamlarda tutarlı, tekrarlanabilir ekleme sağlar.
Azure Arc ekleme rolü Ansible Core veya Ansible Automation Platform (AAP) ile kullanılabilir. Bu makale, her iki seçeneği de kapsar ve makineleri geniş ölçekte Azure Arc'a dahil etmek için bunların nasıl kullanılacağını açıklar.
Genel bakış
azure_arc rolü Azure Bağlı Makine aracısını yükler ve her konağı belirtilen kaynak grubuna ve aboneliğe Azure Arc kaydeder. Kaydedildikten sonra makine Azure'de Arc özellikli bir sunucu olarak görünür ve Azure İlkesi, Güncelleştirme Yöneticisi ve İzleyici gibi Azure hizmetler kullanılarak yönetilebilir. Azure Arc Ansible rolü, makineleri Azure Arc eklemek için kullanılır. Ekleme sonrasında makineleri otomatik olarak bulmaz veya Azure İlkesi tabanlı yönetimi değiştirmez.
Önkoşullar
Azure Arc ekleme rolünü kullanmadan önce aşağıdaki gereksinimlerin karşılandığından emin olun:
Azure izinleri
Ansible tarafından kullanılan kimliğe (Azure CLI kullanıcısı, hizmet sorumlusu veya yönetilen kimlik) abonelik veya kaynak grubu kapsamında Azure Connected Machine Onboarding rolü atanmalıdır.
Ayrıca abonelikte aşağıdaki kaynak sağlayıcıların kayıtlı olması gerekir:
- Microsoft. HybridCompute
- Microsoft.GuestConfiguration
Ansible önkoşulları
Azure Arc ekleme rolünü çalıştırmadan önce şunları sağlayın:
- Arc'ı etkinleştirmek istediğiniz makinelerden gerekli Azure Arc URL'lerine ağ bağlantısı. Uygun ağ gereksinimlerini gözden geçirin ve ele alın. Ağınızda veya güvenlik duvarınızda izin verilen Azure Arc URL sayısını yaklaşık 20 URL'den ~7 URL'ye azaltmak için arc ağ geçidini
kullanabilirsiniz. - Ansible'ın hedef makinelere bağlanmak için kullandığı hesabın yazılım yüklemek ve sistem hizmetlerini yönetmek için yönetici izinleri olmalıdır (örneğin, Linux'ta kök veya sudo erişimi).
Rol değişkenleri
Azure Arc ekleme rolü aşağıdaki değişkenleri destekler:
| Variable | Description |
|---|---|
azure_arc_resource_group |
Makinenin kaydedileceği kaynak grubu |
azure_arc_subscription_id |
Azure abonelik kimliği |
azure_arc_tenant_id |
Azure kiracı kimliği |
azure_arc_location |
Arc kaynağı için Azure bölge (varsayılan olarak kaynak grubu konumudur) |
azure_arc_cloud |
Kullanılacak bulutu Azure (varsayılan: AzureCloud) |
azure_arc_tags |
Arc kaynağına uygulanan etiketler (varsayılan: { archost: "true" }) |
proxy |
İsteğe bağlı proxy yapılandırması (ana bilgisayar adı ve bağlantı noktası). Örnek: http://proxy.contoso.com:8080 |
Kimlik doğrulama seçenekleri
Azure Arc ekleme rolü otomasyon senaryoları için birden çok kimlik doğrulama yöntemini destekler. Bu makalede, Azure CLI tabanlı kimlik doğrulaması ve yönetilen kimlik gibi en yaygın seçenekler yer alır.
Azure CLI kimlik bilgileri
Ansible denetim düğümünde şu anda oturum açmış Azure CLI kimliğini kullanın. Bu seçenek etkileşimli kullanım ve geliştirme ortamları için önerilir. Playbook'unuzda aşağıdakileri ayarlayın:
auth_source: cli
Playbook'unuzu çalıştırmadan önce bu Azure CLI komutuyla Azure oturum açın (bu işlem oturum açmak için yeni bir tarayıcı penceresi açar):
az login
Oturum açmak için bir tarayıcınız yoksa cihazınızı kullanarak Azure oturum açmak için bu Azure CLI komutunu kullanın:
az login --use-device-code
Oturum açtığınızda aboneliği doğrulayabilir ve/veya ayarlayabilirsiniz:
az account show
az account set --subscription "<subscription-id-or-name>"
Yönetilen kimlik doğrulaması
Ansible denetim düğümü Azure bir sanal makinede veya Azure Arc etkin bir sunucuda çalışıyorsa, sistem tarafından atanan yönetilen kimliği kullanarak kimlik doğrulaması yapabilirsiniz. Azure Arc etkin her sunucu, Azure Arc bağlandığında otomatik olarak kendi sistem tarafından atanan yönetilen kimliğini alır. Bu kimlik makineye özgüdür ve Azure hizmetlerde kimlik doğrulaması yaparken bu sunucuyu temsil eder. Varsayılan olarak, yönetilen kimliklerin Azure RBAC izinleri yoktur. Yönetilen kimlik doğrulamasını Azure Arc Ansible rolüyle kullanmadan önce, makineleri eklemeye yönelik gerekli izinleri yönetilen kimliğe açıkça tanımlamalısınız. Yönetilen kimlik, kimlik bilgilerini veya gizli dizileri depolama gereksinimini ortadan kaldıran üretim otomasyonu için önerilen kimlik doğrulama yöntemidir.
Yönetilen kimliği onboarding rolüne ata
Ansible kontrol düğümünün yönetilen kimliğine playbook'u çalıştırmadan önce abonelik veya kaynak grubu kapsamında Azure Bağlı Makine Ekleme rolü atanmalıdır.
1. Seçenek: Azure portalı
Ansible denetim düğümünün yönetilen kimliğine gerekli rolü atamak için Azure portalını kullanın. Bu seçenek Azure VM Yönetilen Kimliği veya Arc etkin sunucu Yönetilen Kimliği için geçerlidir. Arc, makine kimliği için Microsoft Entra Kimliği'nde bir hizmet sorumlusu oluşturduğundan, bu akış Arc özellikli sunucu kimlikleri için desteklenmektedir.
Azure portalına Makineleri eklemek istediğiniz Abonelik veya Kaynak Grubuna gidin.
Erişim denetimi (IAM) seçeneğini belirleyin.
Rol ataması ekle → Ekle'yi seçin.
Rolü seçin: Azure Bağlı Makine Katılımı.
Erişim ata içinYönetilen kimlik'i seçin.
Virtual machine (denetim düğümü bir Azure VM ise) veyaAzure Arc-enabled server. Denetim düğümü kaynağını seçin.
Kaydet'e tıklayın.
Seçenek 2: Azure CLI
Ansible denetim düğümünü yönetilen kimliğine gerekli rolü atamak için Azure CLI komutlarını kullanın.
Yönetilen kimlik sorumlusu kimliğini alma
Yönetilen kimlik asıl kimliği, Ansible kontrol düğümü için sistem tarafından atanan yönetilen kimliğin Microsoft Entra nesne kimliğidir (asıl kimlik).
Ansible denetim düğümü Arc özellikli bir sunucuysa şu Azure CLI komutunu kullanın:
az connectedmachine show \
--name \<arc-server-name\> \
--resource-group \<rg-name\> \
--query identity.principalId \
-o tsv
Ansible denetim düğümü Azure bir VM ise şu Azure CLI komutunu kullanın:
az vm show \
--name \<vm-name\> \
--resource-group \<rg-name\> \
--query identity.principalId \
-o tsv
Rolü yönetilen kimliğe atayın
Arc uygulamaya geçirme deneyiminizin kapsamına bağlı olarak, rol görevini abonelik veya kaynak grubu için belirlemeniz gerekir. Değer olarak önceki adımda yer alan yönetilen kimlik sorumlusu kimliğine --assignee ihtiyacınız vardır. Seçili kapsama göre karşılık gelen Azure CLI komutları aşağıdadır:
Abonelik kapsamı: Bu, Azure Bağlı Makine Onboarding rolünü abonelik düzeyinde ayarlar.
az role assignment create \
--assignee \<identity-principal-id> \
--role "Azure Connected Machine Onboarding" \
--scope /subscriptions/<subscription-id>
Kaynak grubu kapsamı: Bu, Azure Bağlı Makine Ekleme rolünü kaynak grubu düzeyinde ayarlar:
az role assignment create \
--assignee \<identity-principal-id> \
--role "Azure Connected Machine Onboarding" \
--scope /subscriptions/<subscription-id>/resourceGroups/<rg-name>
Playbook'u yönetilen kimliği kullanacak şekilde olarak ayarlayın
Ansible kontrol düğümünün yönetilen kimliği gereken role sahip olduğunda, bunu playbook'unuzda kimlik doğrulama yöntemi olarak kullanabilirsiniz; etkileşimli oturum açma, gizli diziler veya ortam değişkenleri gerekmez. Playbook'unuzda yönetilen kimlik kimlik doğrulamasını kullanmak için kimlik doğrulama kaynağını aşağıdaki gibi ayarlayın:
auth_source: msi
Yönetilen kimlik doğrulaması nasıl çalışır?
Playbook çalıştırıldığında, Azure SDK yerel meta veri hizmetinden belirteç isteyerek kimlik doğrulaması yapar. Azure sanal makineler Azure Örnek Meta Veri Hizmeti'ni kullanır. Azure Arc etkin sunucular Azure Arc Karma Örnek Meta Veri Hizmeti'ni kullanır. Belirteç, denetim düğümünün yönetilen kimliğini temsil eder. Azure sonra bu kimliğin Azure Arc kaynakları oluşturma ve kaydetme izni olup olmadığını değerlendirir.
Ansible kullanarak Azure Arc büyük ölçekte dağıtma
Azure Arc Ansible rolü, Arc özellikli ölçekli makineleri gerçekleştirmek için Ansible Core veya Ansible Otomasyon Platformu ile kullanılabilir. Bu bölüm, her iki senaryoda da Azure Arc rolünün nasıl kullanılacağını kapsar. Azure Arc rolü idempotenttir. Envantere yeni makineler eklendikçe playbook'u yeniden çalıştırabilirsiniz. Zaten Azure Arc'a bağlı olan makineler atlanır.
Ansible Core kullanarak Azure Arc büyük ölçekte dağıtma
Ansible Core kullanılırken, envanterde makine gruplarını tanımlayarak ve aynı playbook'u bu gruplar arasında çalıştırarak büyük ölçekte ekleme elde edilir. Azure Arc Ansible rolü konak başına bir kez yürütülür ve çok sayıda makinede güvenle çalıştırılabilir.
Kimlik doğrulama yöntemi seçme
Playbook'u çalıştırmadan önce, denetim düğümünüzün hangi kimlik doğrulama yöntemini kullanacağını belirleyin. Aşağıdaki adımlardaki örneklerde Azure CLI (geliştirme için önerilir) ve yönetilen kimlik (üretim için önerilir) seçenekleri gösterilir.
Envanterinizi tanımlama
Makineleri ortama veya işletim sistemine göre mantıksal olarak gruplandırma. Envanter dosyaları statik (INI veya YAML) veya betikler veya envanter eklentileri kullanılarak dinamik olarak oluşturulabilir. Makinelerinizi kolayca hedeflemek için gruplandırmanızı öneririz. Örnek envanter dosyası:
[arc_linux]
linux-01
linux-02
linux-03
[arc_windows]
win-01
win-02
Rol değişkenlerini yapılandırma
Makinelerinizin ekleyecekleri Azure ortamı tanımlamak için bir grup değişkenleri dosyası oluşturun. Bu, playbook'unuzun temiz ve farklı ortamlarda yeniden kullanılabilir olmasını sağlar. Örnek: group_vars/arc_linux.yml
azure_arc_resource_group: "my-arc-rg"
azure_arc_subscription_id: "<your-subscription-id\>"
azure_arc_tenant_id: "<your-tenant-id\>"
azure_arc_location: "eastus"
azure_arc_tags:
environment: "production"
archost: "true"
Oyun kitabını yaz
Ortamınızla eşleşen kimlik doğrulama seçeneğini belirleyin.
Seçenek A: Azure CLI kimlik doğrulaması (geliştirme için önerilir)
Ansible denetim düğümünde oturum açmış Azure CLI kimliğini kullanın. Playbook'u çalıştırmadan önce Azure CLI oturum açmanız gerekir.
Örnek: arc-onboard.yml
- name: Connect Linux machines to Azure Arc (CLI auth)
hosts: arc_linux
gather_facts: true
vars:
auth_source: cli
roles:
- role: azure.azcollection.azure_arc
vars:
azure_arc_resource_group: "{{ azure_arc_resource_group }}"
azure_arc_subscription_id: "{{ azure_arc_subscription_id }}"
azure_arc_tenant_id: "{{ azure_arc_tenant_id }}"
azure_arc_location: "{{ azure_arc_location }}"
azure_arc_tags: "{{ azure_arc_tags }}"
Seçenek B: Yönetilen Kimlik kimlik doğrulaması (üretim için önerilir)
Ansible denetim düğümünüzün atanmış yönetilen kimliği olan bir Azure VM veya Arc özellikli sunucu olması durumunda ek oturum açma adımı gerekmez. Örnek: arc-onboard.yml
- name: Connect Linux machines to Azure Arc (Managed Identity auth)
hosts: arc_linux
gather_facts: true
vars:
auth_source: msi
roles:
- role: azure.azcollection.azure_arc
vars:
azure_arc_resource_group: "{{ azure_arc_resource_group }}"
azure_arc_subscription_id: "{{ azure_arc_subscription_id }}"
azure_arc_tenant_id: "{{ azure_arc_tenant_id }}"
azure_arc_location: "{{ azure_arc_location }}"
azure_arc_tags: "{{ azure_arc_tags }}"
Ansible Automation Platform kullanarak Azure Arc büyük ölçekte dağıtma
Ansible Automation Platform (AAP) kullanılırken envanterler ve konak grupları platformda merkezi olarak yönetilir. AAP ile yerel envanter dosyalarını korumanız gerekmez. Büyük veya dinamik ortamlar için AAP önerilir. AAP sanallaştırma platformları, bulut sağlayıcıları veya CMDB sistemleri gibi dış kaynaklardan makineleri otomatik olarak bulan envanterleri destekler.
Azure kimlik doğrulaması için AAP kimlik bilgilerinizi ayarlama
AAP, kimlik bilgilerini merkezi olarak yönetir. Aşağıdaki kimlik doğrulama yöntemlerinden biriyle AAP'de bir Azure Resource Manager kimlik bilgisi oluşturun.
| Kimlik Doğrulama Yöntemi | Ne Zaman Kullanılır? | Notlar |
|---|---|---|
| Yönetimli Kimlik | Üretim; AAP yürütme ortamı bir Azure VM veya Arc özellikli sunucuda çalışır | Üretim için önerilir |
| Hizmet Sorumlusu | Üretim; genel kullanım amaçlı veya Azure dışındaki AAP | İstemci kimliği ve gizli anahtar gerektirir |
Azure CLI kimlik bilgileri AAP'de geçerli değildir. AAP tabanlı otomasyon için Yönetilen Kimlik veya Hizmet Sorumlusu kullanın. AAP'de Azure kimlik bilgisi oluşturmak için:
- AAP web kullanıcı arabirimindeKimlik Bilgileri'ne gidin ve Ekle'yi seçin.
- Credential Type değerini Microsoft Azure Resource Manager olarak ayarlayın.
- Yönetilen Kimlik için: Ortamın yönetilen kimliğini kullan'ı etkinleştirin. Hizmet Sorumlusu için: Abonelik Kimliğinizi, İstemci Kimliğinizi, İstemci Gizli Anahtarınızı ve Kiracı Kimliğinizi girin.
- Kaydetseçeneğini seçin.
Envanterinizi yapılandırma
AAP envanterleri statik veya dinamik olarak kaynaklanabilir. Büyük veya dinamik ortamlar için, makineleri konak meta verilerine göre otomatik olarak gruplandırmak için, yerleşik bir envanter kullanın.
A Seçeneği: Konak gruplarıyla statik envanter
- AAP'de Envanter > Envanter Ekle>'ye gidin, ardından konakları manuel olarak ekleyin veya bir dosyadan içe aktarın.
- Linux konaklarınızı arc_linux adlı bir gruba ekleyin:
linux-server-01
linux-server-02
linux-server-03
Seçenek B: Oluşturulan gruplarla dinamik envanter (ölçek için önerilir)
Bir envanter kaynağı (örneğin, VMware vSphere, AWS veya Azure) kullanın ve konak değişkenlerine dayalı olarak derlenmiş grupları tanımlayın. Örneğin, tüm Linux makinelerini otomatik olarak gruplandırmak için:
Örnek: constructed.yml
plugin: constructed
groups:
arc_linux: ansible_os_family == "RedHat" or ansible_os_family == "Debian"
Grup koşuluyla eşleşen yeni eklenen makineler, sonraki iş çalıştırmalarına otomatik olarak eklenir.
Bir proje oluştur
AAP'de Project, playbook'unuzu ve rol gereksinimleri dosyanızı içeren bir kaynak denetim deposuna bağlanır.
- Proje > Ekle'ye gidin.
- SCM Türü'nü Git olarak ayarlayın.
- Depo URL'nizi girin.
- Kaydetseçeneğini seçin.
- Deponuzun, azure.azcollection dosyasını yüklemek için kökte bir requirements.yml dosyası içerdiğinden emin olun:
Örnek: requirements.yml
collections:
- name: azure.azcollection
source: https://galaxy.ansible.com
Arc işe alım playbook'unu yaz
Bu playbook'u proje deponuzda depolayın. Daha önce yapılandırılan Azure kimlik bilgileri, çalıştırma sırasında AAP tarafından otomatik olarak eklenir; playbook içinde gizli anahtarları sabit kodlamanız gerekmez.
Seçenek A: Yönetilen Kimlik
Aşağıdaki örnekte, auth_source yönetilen kimlik olarak ayarlanmıştır.
- name: Connect machines to Azure Arc (AAP - Managed Identity)
hosts: arc_linux
gather_facts: true
vars:
auth_source: msi
azure_arc_resource_group: "my-arc-rg"
azure_arc_subscription_id: "<your-subscription-id>"
azure_arc_tenant_id: "<your-tenant-id>"
azure_arc_location: "eastus"
azure_arc_tags:
environment: "production"
archost: "true"
roles:
- role: azure.azcollection.azure_arc
Seçenek B: Hizmet Sorumlusu
auth_source: env ayarlandığında rol, AAP iş şablonunda yapılandırılan Azure kimlik bilgilerini kullanır. Hizmet ilke değerleri AAP tarafından otomatik olarak eklenir; bunları playbook'ta sabit kodlamanıza gerek yoktur.
- name: Connect machines to Azure Arc (AAP - Service Principal)
hosts: arc_linux
gather_facts: true
vars:
auth_source: env
azure_arc_resource_group: "my-arc-rg"
azure_arc_subscription_id: "<your-subscription-id>"
azure_arc_tenant_id: "<your-tenant-id>"
azure_arc_location: "eastus"
azure_arc_tags:
environment: "production"
archost: "true"
roles:
- role: azure.azcollection.azure_arc
İş şablonu oluşturma ve çalıştırma
- AAP'de Şablonlar > İş Şablonu Ekle'ye >gidin.
- İş şablonu alanlarını yapılandırın, ardından işi kaydedip başlatın.
AAP İş Şablonu Alanları
| Alan | Değer |
|---|---|
| İsim | Makineleri Azure Arc bağlama |
| İş Türü | Run |
| Stok | Envanteriniz (örneğin, arc_linux grubu) |
| Proje | Projeniz (deponuza bağlı) |
| Strateji Kitabı | arc-onboard.yml |
| Credentials | Azure Resource Manager kimlik bilgileriniz |
| Limit | arc_linux (veya tüm ana makineleri hedeflemek için boş bırakın) |
Sürekli ve büyük ölçekli uyum süreci
AAP envanterleri dinamik olarak korunacağından:
- Yeni bulunan makineler sonraki iş çalıştırmalarına otomatik olarak eklenir.
- Azure Arc'a zaten bağlı olan makineler atlanır (rolün idempotent olduğunu belirtir). Aynı iş şablonu, yeni makineler ortamınıza eklendikçe onları sürekli işleme almak için düzenli aralıklarla çalışacak şekilde zamanlanabilir. Yeni makineleri ortamınıza eklendikçe otomatik olarak dahil etmek için iş şablonunu düzenli aralıklarla çalışacak şekilde (örneğin, her gece) zamanlayın.
Azure Arc ile bağlantıyı doğrulama
Aracıyı yükledikten ve Azure Arc etkin sunuculara bağlanacak şekilde yapılandırdıktan sonra, hedef konaklarınızdaki sunucuların başarıyla bağlandığını doğrulamak için Azure portalına gidin. makinelerinizi Azure portalında görüntüleyin.
Sonraki adımlar
- Azure Arc özellikli sunucuları herhangi bir ölçekte dağıtmayı planlamak ve merkezi yönetim ve izleme uygulamak için Planning and deployment guide gözden geçirin.
- Bağlı Makine aracısı sorunlarını giderme kılavuzunda bağlantı sorunlarını giderme bilgilerini gözden geçirin.
- Makinenizi VM guest yapılandırma, beklenen Log Analytics çalışma alanına raporlama doğrulaması ve VM içgörüleri ile izlemeyi etkinleştirme gibi işlemler için Azure İlkesi kullanarak yönetmeyi ve çok daha fazlasını yapmayı öğrenin.