Cara menggunakan vars ekstra di Ansible

Cara menggunakan vars ekstra di Ansible

Ansible menawarkan fleksibilitas dengan menggunakan variabel. Variabel memungkinkan Anda menyetel nilai dan ketentuan khusus saat menjalankan buku pedoman Ansible. Namun, meskipun variabel dalam buku pedoman berguna, Anda perlu mengedit buku pedoman saat Anda perlu membuat perubahan.

Anda dapat mengatasinya dengan menggunakan input eksternal ke buku pedoman Ansible menggunakan variabel tambahan.

Artikel ini akan mempelajari cara menggunakan variabel Ansible Extra untuk memberikan nilai kustom atau dinamis tanpa mengedit buku pedoman.

Apa itu Varian Ekstra yang Mungkin?

Varian tambahan yang dimungkinkan adalah fitur yang memungkinkan Anda memasukkan lebih banyak fleksibilitas dalam buku pedoman Ansible dengan memberi Anda kemampuan untuk menentukan nilai dinamis saat menjalankan buku pedoman.

Varian tambahan yang memungkinkan sangat membantu ketika:

  1. Anda memiliki variabel yang nilainya dapat berubah lebih dari sekali saat menjalankan buku pedoman.
  2. Anda tidak perlu mengedit buku pedoman untuk mengubah nilai variabel dalam buku pedoman.

Cara menggunakan Ansible Extra Vars

Kemungkinan vars tambahan akan menimpa nilai yang disimpan dalam buku pedoman atau file variabel. Mereka juga disebut variabel command line.

Sekarang mari kita lihat contoh bagaimana menggunakan vars ekstra.

Contoh khas dari vars ekstra di Ansible adalah ketika Anda mengkodekan nilai host dengan keras. Asumsikan Anda memiliki buku pedoman yang berjalan di host dengan grup “pengembangan” ketika Anda perlu menjalankan buku pedoman di host “produksi”, Anda akan dipaksa untuk mengedit buku pedoman.

Ini bisa melelahkan dan rentan terhadap error, terutama pada kumpulan ekstensif grup host.

Untuk mengatasi masalah ini, kita dapat menggunakan fitur Ansible extra vars. Kita dapat mendefinisikan variabel yang mewakili grup host dan menentukan nilainya saat menjalankan buku pedoman.

Perhatikan contoh buku pedoman di bawah ini:

---
- hosts:  "{{group}}"
become:yes
gather_facts: no
  tasks:
    - name: InstallApache
      apt:
        name: httpd
        state: present
update_cache: yes

Sekarang kita memiliki contoh buku pedoman seperti di atas, kita dapat meneruskan nilai ke variabel “grup” menggunakan opsi –extra-vars saat menjalankan buku pedoman.

Contoh perintah seperti yang ditunjukkan:

ansible-playbook example.yml –extra-vars “group=production”

Untuk mengubah grup menjadi “pengembangan”, Anda tidak perlu mengedit buku pedoman; lulus variabel seperti yang ditunjukkan:

ansible-playbook example.yml --extra-vars “group=development”

Contoh di bawah ini menggunakan vars tambahan untuk menentukan service yang akan dimulai berdasarkan distribusi target.

---
- hosts:  "{{group}}"
become:yes
gather_facts: no
  tasks:
    - name: InstallApache
      service:
        name: "{{pkg_name}}"
        state: started

Menggunakan buku pedoman di atas, kita dapat menentukan variabel tambahan sebagai:

ansible-playbook example.yml --extra-vars “group=development pkg_name=apache2”

Jika Anda ingin melewatkan variabel dengan spasi, Anda menggunakan tanda kutip tunggal seperti yang ditunjukkan pada contoh di bawah ini:

ansible-playbook example.yml --extra-vars "protocol='All -SSLv2 '"

Kesimpulan

Tutorial ini mengilustrasikan cara menerapkan dan menggunakan variabel tambahan Ansible untuk menambah fleksibilitas pada buku pedoman. Periksa dokumentasi untuk mempelajari lebih lanjut.

Related Posts