Ansible, Kod Olarak Altyapıyı (IaC) etkinleştiren açık kaynaklı sunucu yönetimi ve otomasyon yazılımıdır. Bu araç, uygulama dağıtımına, provizyona ve yapılandırma yönetimine basit ve etkili bir şekilde izin verir.
Ansible Automation Hub, Red Hat ve sertifikalı iş ortaklarından modüller toplar. phoenixNAP, bir parçası olmaktan gurur duyar. Ansible güvenilir içerik koleksiyonu Bare Metal Cloud eklentisi ile. Ansible’ın tanıttığı bu konsept, bulut sağlayıcılarını ek kitaplıklar olarak kurmayı mümkün kılar.
için bu kılavuzdaki adımları izleyin. phoenixNAP BMC Ansible modülünü kurun ve ilgili oyun kitaplarını nasıl kullanacağınızı öğrenin.
Önkoşullar
- Kontrol makinesine kurulu Ansible
- Kontrol makinesinde yüklü Python (varsayılan olarak mevcuttur)
PNAP BMC Ansible Modülünü Kullanmanın Faydaları
Bu IaC aracı, müşterilerin Bare Metal Bulut sunucuları tedarik etmesine ve diğer görevleri basit YAML betikleri oyun kitapları denir. Artık değişmez provizyon ile sunucu oluşturmayı verimli bir şekilde otomatikleştirebilirsiniz. BT süreçlerini otomatikleştirmenin avantajının yanı sıra, istenmeyen değişiklikler olması durumunda bir sunucuyu orijinal durumuna döndürmek için aynı kodu yeniden çalıştırma yeteneği de bir başka avantajdır.
Bu modelde ana ve bağımlı makineler yoktur. Dosyaları göndermek için bir makine kullanırsınız, yani bir veya daha fazla uzak ana bilgisayarda bir komut dosyası çalıştırırsınız. Ayrı ayrı düğümlerde ana sunucudan bilgi çeken hiçbir aracı yoktur. Bare Metal Cloud modülü, oyun kitaplarını çalıştırmak için SSH gerektirmez.
haline gelerek sertifikalı eklenti Red Hat Ansible Automation Hub’da, BMC modülü kurulum işlemi hızlıdır ve bir tek Ansible komutu. Ardından Ansible’a gerçekleştirmek istediğiniz otomasyon işinin açıklamasını içeren YAML kodunu içeren bir komut dosyası çalıştırması talimatını verebilirsiniz. Modül, belirttiğiniz nihai sonuca doğru sırada ulaşmayı sağlar.
Ansible Automation Hub’daki içerik, Red Hat ve ortakları tarafından desteklenir. Bu şekilde, en zorlu ortamlar bile modüllerin beklentileri karşılayacağından emin olabilir.
BMC Ansible Modülünü Kurun
BMC Ansible eklentisini kurmadan önce Python’a ihtiyacınız var istekler makinenizde paket. Farklı türde HTTP isteklerinin gönderilmesine izin verir.
Yüklemek isteklergirmek:
pip install requests
Not: Eğer pip
komutu sisteminizde çalışmıyor, kullanmayı deneyebilirsiniz pip2
veya pip3
sahip olduğunuz Python sürümüne bağlı olarak.
Pip paket yöneticisini kaçırıyorsanız, pip kurulumuyla ilgili kılavuzlarımıza bakın.
Ardından, phoenixNAP BMC modülünü kurmak için Ansible komutunu çalıştırın:
ansible-galaxy collection install phoenixnap.bmc
Kurulum tamamlandıktan sonra, şu komutla modül belgelerini görüntüleyin:
ansible-doc phoenixnap.bmc.server
Ansible BMC eklentisi, API isteklerine bağlıdır. Tüm BMC API istekleri, phoenixNAP Developers Portal’da belgelenmiştir.
Kimlik Doğrulaması için Kimlik Bilgisi Dosyası Oluşturun
Yetkilendirme sunucumuzla başarılı bir şekilde kimlik doğrulaması yapmak için Müşteri Kimlik Bilgileri verme türünü kullanın.
Ana dizininizde bir dizin oluşturun .pnap ve bir yapılandırma.yaml içindeki dosya.
Dosyanın aşağıdaki bilgileri içermesi gerekir:
clientId: myClientId
clientSecret: myClientSecret
Yer değiştirmek müşterikimliğim Ve müşteri sırrım kimliğiniz ve sırrınızla.
Ansible phoenixNAP BMC Başucu Kitapları
Ansible başucu kitapları yazmak, özel kodlama becerileri gerektirmez ve mevcut tüm BMC API’lerini kapsar. Bu betikler, yapılandırma dosyaları oluşturulurken kullanılan basit bir seri hale getirme dili olan YAML ile yazılmıştır. Ansible, sunucuların gerçek durumlarını kontrol ederek çalışır ve bunları oyun kitabındaki talimatlar dizisiyle karşılaştırır.
Durum, tanımlanan nihai sonuçla eşleşmediğinde, modül, belirlenen hedefe ulaşmak için komut dosyasından kaynak modelinin izlenmesini sağlar.
Bir oyun kitabını birden çok kez çalıştırırsanız, modül ek görevler gerçekleştirmez. Bir BMC sunucusunun gerçek durumu betiğin amacına karşılık geldiğinde, betiği birden çok kez çalıştırabilirsiniz ve modül herhangi bir görev gerçekleştirmez.
BMC Playbooks Nasıl Çalıştırılır?
Bir oyun kitabının adı, senaryonun ne yaptığını gösterir. Örneğin, playbook_power_off.yml bir veya daha fazla sunucuyu kapatır.
Bir oyun kitabı çalıştırmak için şu sözdizimini kullanın:
ansible-playbook playbook_name.yml
Bu nedenle, bir sunucuyu sıfırlamak için şunu girin:
ansible-playbook playbook_reset.yml
BMC Başucu Kitabı Örnekleri
Aşağıda vereceğimiz YAML çalışma kitabı örnekleri birbirine benzer. Aradaki fark, elde etmek istediğiniz sunucunun durumudur. Diğerlerinden biraz daha farklı olan tek dosya, bir sunucu oluşturmak için kullanılan komut dosyasıdır.
Her başucu kitabının bir veya daha fazla içermesi gerekir ana bilgisayar adları veya server_idsyanı sıra Müşteri Kimliği Ve client_secret. Tercih edilen yöntem, değerlerin girilmesidir. ~/.pnap/config.yaml dosyası yerine her oyun kitabında.
Sunucu Oluştur
Oyun kitabının adı: playbook_create.yml
- name: Create new servers for account
hosts: localhost
gather_facts: false
vars_files:
- ~/.pnap/config.yaml
collections:
- phoenixnap.bmc
tasks:
- server:
client_id: "{{clientId}}"
client_secret: "{{clientSecret}}"
hostnames: [my-server-red]
location: PHX
os: ubuntu/bionic
type: s1.c1.medium
state: present
ssh_key: "{{ lookup('file', '~/.ssh/id_rsa.pub') }}"
Sunucunun Temel Hazırlığını Kaldırma
Oyun kitabının adı: playbook_deprovision.yml
- name: reset servers
hosts: localhost
gather_facts: false
vars_files:
- ~/.pnap/config.yaml
collections:
- phoenixnap.bmc
tasks:
- server:
client_id: "{{clientId}}"
client_secret: "{{clientSecret}}"
hostnames: [my-server-red]
state: absent
Kapatma Sunucusu
Oyun kitabının adı: playbook_power_off.yml
- name: power on servers
hosts: localhost
gather_facts: false
vars_files:
- ~/.pnap/config.yaml
collections:
- phoenixnap.bmc
tasks:
- server:
client_id: "{{clientId}}"
client_secret: "{{clientSecret}}"
hostnames: [my-server-red]
state: powered-off
Sunucuyu Aç
Oyun kitabının adı: playbook_power_on.yml
- name: power on servers
hosts: localhost
gather_facts: false
vars_files:
- ~/.pnap/config.yaml
collections:
- phoenixnap.bmc
tasks:
- server:
client_id: "{{clientId}}"
client_secret: "{{clientSecret}}"
hostnames: [my-server-red]
state: powered-on
Sunucuyu Yeniden Başlat
Oyun kitabının adı: playbook_reboot.yml
- name: reset servers
hosts: localhost
gather_facts: false
vars_files:
- ~/.pnap/config.yaml
collections:
- phoenixnap.bmc
tasks:
- server:
client_id: "{{clientId}}"
client_secret: "{{clientSecret}}"
hostnames: [my-server-red]
state: rebooted
Sunucuyu Sıfırla
Oyun kitabının adı: playbook_reset.yml
- name: reset servers
hosts: localhost
gather_facts: false
vars_files:
- ~/.pnap/config.yaml
collections:
- phoenixnap.bmc
tasks:
- server:
client_id: "{{clientId}}"
client_secret: "{{clientSecret}}"
hostnames: [my-server-red]
ssh_key: "{{ lookup('file', '~/.ssh/id_rsa.pub') }}"
state: reset
Kapatma Sunucusu
Oyun kitabının adı: playbook_shutdown.yml
Bu örnekte kullandığımız server_ids yerine ana bilgisayar adları.
- name: shutdown servers
hosts: localhost
gather_facts: false
vars_files:
- ~/.pnap/config.yaml
collections:
- phoenixnap.bmc
tasks:
- server:
client_id: "{{clientId}}"
client_secret: "{{clientSecret}}"
server_ids:
- 5eda71ef674cf47bd2599cfa
state: shutdown
Çözüm
Bu kılavuzdaki adımları izlediyseniz, Bare Metal Cloud Ansible Modülünü başarıyla kurdunuz. Ayrıca, makinelerinizi yönetmek için kullanabileceğiniz BMC oyun kitaplarına yönelik örnekler de sağladık.
BMC modülümüz gibi güvenilir Ansible Automation Hub içeriğini kullanarak sunucularınızı verimli ve güvenli bir şekilde yönetebilirsiniz.
pNAP ürünlerinin Kolokasyon ve Bulut içerdiğini biliyor muydunuz? Kuruluşunuz için avantajları ve dezavantajları hakkında daha fazla bilgiyi Kolokasyon ve Bulut Bilişim karşılaştırması makalemizde okuyabilirsiniz.