GNU/Linux >> Belajar Linux >  >> Ubuntu

Playbook yang Mungkin:Cara Membuat dan Mengonfigurasi Playbook

Pendahuluan

Ansible adalah alat Infrastruktur sebagai Kode yang memungkinkan Anda mengelola dan memantau sejumlah server jarak jauh dengan menggunakan node kontrol tunggal.

Dengan Ansible, Anda dapat mengelola server jarak jauh dengan menggunakan buku pedoman. Playbook ini menyampaikan instruksi ke server jarak jauh dan memungkinkan mereka untuk menjalankan tugas yang telah ditentukan sebelumnya.

Dalam tutorial ini, kita akan membahas apa itu playbook Ansible, cara kerjanya, dan cara Anda membuat dan menjalankannya.

Prasyarat

  • Sistem Linux (kami menggunakan Ubuntu 20.04)
  • Akses ke baris perintah / jendela terminal
  • Dapat dipasang dan dikonfigurasi

Apa itu Playbook Ansible?

Playbook Ansible adalah daftar instruksi untuk pekerjaan yang dijalankan secara otomatis oleh komputer jarak jauh di jaringan Ansible.

Sebuah buku pedoman Ansible terdiri dari drama. Drama adalah serangkaian tugas yang diatur yang diselesaikan setelah buku pedoman dijalankan. Anda dapat menambahkan beberapa permainan ke satu buku pedoman.

Drama menggunakan modul untuk menentukan perubahan mana yang perlu dilakukan untuk menyelesaikan tugas. Setiap modul menyediakan kerangka kerja untuk kategori pekerjaan tertentu dan dapat disesuaikan menggunakan argumen dan variabel .

Playbook yang memungkinkan disimpan sebagai file .yaml, yang membuatnya fleksibel dan mudah digunakan.

Playbook sebagian besar digunakan untuk:

  • Mendeklarasikan konfigurasi.
  • Mengotomatiskan tugas berulang tertentu yang akan memakan waktu terlalu lama untuk dilakukan secara manual.
  • Meluncurkan tugas secara sinkron atau asinkron.

Variabel Playbook yang Dimungkinkan

Playbook yang memungkinkan menggunakan variabel untuk memberikan fleksibilitas dan kemudahan penggunaan. Variabel dapat built-in (seperti informasi sistem) atau ditentukan pengguna .

Dalam buku pedoman Ansible, variabel didefinisikan dengan menggunakan vars kata kunci:

Pada contoh di atas, kita mendefinisikan greeting variabel dengan nilai yang ditetapkan Hello World! .

Untuk mengakses nilai, masukkan nama variabel greeting dalam tanda kurung kurawal ganda:

Setelah dieksekusi, playbook mencetak pesan Hello World!

Selain variabel dengan nilai tunggal, ada beberapa jenis variabel Ansible lainnya. Menggunakan variabel dengan array , tetapkan beberapa nilai ke satu variabel dengan sintaks berikut:

vars:
  array_name:
    - value1
    - value2
    …
    - valueN

Akses nilai tertentu dengan menggunakan {{ array_name[value number] }} , misalnya:

Variabel dengan kamus menggabungkan beberapa array nilai menjadi satu variabel:

vars:
  array_name:
    dictionary_name1:
      item1: value1
      item2: value2
    dictionary_name2:
      item1: value1
      item2: value2

Terakhir, variabel khusus telah ditentukan sebelumnya oleh Ansible dan tidak dapat disetel oleh pengguna. Gunakan perintah berikut untuk mendapatkan daftar variabel khusus:

ansible -m setup hostname

Bagaimana Cara Menulis Playbook yang Mungkin?

Buat buku pedoman Ansible dengan menggunakan editor teks apa pun yang tersedia di sistem Anda. Misalnya, buat buku pedoman dengan Nano:

sudo nano /path/to/playbook/directory/playbook_name.yaml

Playbook yang memungkinkan mengikuti aturan sintaksis YAML dasar.

Playbook dimulai dengan tiga tanda pisah (--- ), yang diikuti dengan nama buku pedoman, nama grup host jarak jauh yang menjalankan buku pedoman, dan parameter tambahan seperti become (jalankan playbook sebagai admin).

Bagian berikutnya berisi semua variabel yang ditentukan pengguna. Dimulai dengan vars tag di tingkat lekukan yang sama seperti bagian sebelumnya, diikuti dengan daftar variabel di lekukan berikutnya.

Terakhir, daftar tugas dimulai dengan tasks tag, dengan tingkat indentasi tergantung pada jenis tugas dan parameter yang digunakan.

Sintaks YAML memungkinkan Anda menggunakan tiga titik ( ) untuk mengakhiri buku pedoman. Meskipun sebagian besar playbook berakhir seperti ini, playbook tidak perlu berfungsi dengan baik.

Sintaks Playbook yang Dimungkinkan

Beberapa elemen penting sintaks YAML yang perlu diingat saat menulis buku pedoman Ansible:

  • Saat membuat daftar, gunakan spasi di antara tanda hubung (- ) dan entri daftar.
  • Saat menggunakan key: value bentuk, titik dua harus diikuti dengan spasi.
  • Nilai Boolean dapat menggunakan keduanya yes dan no , serta true dan false .
  • Gunakan spasi diikuti dengan # untuk menunjukkan komentar.

Contoh Playbook yang Mungkin

Untuk contoh ini, kami akan membuat buku pedoman di folder instalasi Ansible:

sudo nano /etc/ansible/example_playbook.yaml

Buku pedoman ini berisi elemen-elemen berikut:

  • --- :Menandakan dimulainya pedoman.
  • name :Menentukan nama untuk buku pedoman Ansible.
  • hosts :Menentukan host mana yang menjalankan buku pedoman. Dalam contoh di atas, buku pedoman dijalankan di semua host yang disertakan dalam file inventaris.
  • become :Menginstruksikan host jarak jauh untuk menjalankan playbook sebagai admin. Menggunakan tag ini mengharuskan Anda memasukkan kata sandi admin untuk host jarak jauh saat menjalankan buku pedoman.
  • vars :Mendefinisikan variabel – dalam kasus kita, sebuah variabel bernama greeting dengan nilai Hello World! .
  • tasks :Daftar tugas yang harus dijalankan oleh buku pedoman. Pada contoh di atas, tugas pertama membuat direktori bernama example_playbook pada host jarak jauh. Tugas kedua membuat file teks baru di direktori itu dan menempatkan nilai greeting variabel sebagai konten.
  • ... :Menandakan akhir dari buku pedoman.

Bagaimana Playbook Dieksekusi?

Playbook yang memungkinkan dijalankan secara berurutan, dari atas ke bawah. Ini berlaku untuk permainan individu dan tugas yang tercantum dalam drama tersebut.

Dalam contoh di atas, buku pedoman melakukan tindakan berikut, dengan urutan:

  1. Mendefinisikan daftar variabel.
  2. Membuat folder baru di host jarak jauh.
  3. Membuat file teks di folder baru.
  4. Menambahkan nilai variabel sebagai konten file.

Cara Menjalankan Playbook yang Memungkinkan

Untuk menjalankan buku pedoman Ansible, gunakan:

ansible-playbook /path/to/playbook/directory/playbook_name.yaml

Untuk keperluan artikel ini, kami akan menggunakan example_playbook.yaml dengan -K argumen, yang memungkinkan kita memasukkan kata sandi pengguna root untuk host jarak jauh dan menjalankan buku pedoman sebagai admin:

ansible-playbook /etc/ansible/example_playbook.yaml -K

Cara Memverifikasi Playbook

Jalankan buku pedoman dalam mode centang menggunakan --check bendera untuk memverifikasinya. Ini memungkinkan Anda melihat perubahan yang akan dibuat oleh buku pedoman Anda, tanpa benar-benar membuatnya:

ansible-playbook /path/to/playbook/directory/playbook_name.yaml --check

Untuk ikhtisar yang lebih mendetail tentang kemungkinan perubahan, gunakan kombinasi --check dan --diff bendera:

ansible-playbook /path/to/playbook/directory/playbook_name.yaml --check --diff

Kiat Playbook yang Berguna dan Berguna

Ada beberapa cara untuk membuat buku pedoman Ansible lebih mudah dibaca dan digunakan:

Selalu Beri Nama Drama dan Tugas

Gunakan name kata kunci untuk menentukan nama untuk drama dan tugas. Menambahkan nama yang singkat dan lugas memudahkan untuk mengetahui apa yang dilakukan setiap permainan atau tugas secara sekilas.

Gunakan Komentar

Pastikan Anda menambahkan banyak komentar, terutama saat mendefinisikan variabel dan tugas.

Komentar mendetail membantu membuat buku pedoman menjadi lebih jelas dan mudah dipahami. Mereka juga membantu orang lain menggunakan buku pedoman Anda.

Format Playbook untuk Kemudahan Penggunaan

Meskipun Anda harus mengikuti aturan indentasi agar buku pedoman berfungsi, Anda masih dapat menggunakan spasi putih (seperti baris kosong di antara tugas-tugas) untuk membuat buku pedoman lebih mudah dibaca.


Ubuntu
  1. Cara membuat Playbook yang Mungkin

  2. Cara Menginstal dan Mengonfigurasi Ansible di Fedora 35

  3. Cara Menginstal dan Mengonfigurasi Ansible di Rocky Linux/CentOS 8

  1. Cara Menginstal dan Mengonfigurasi Ansible di Ubuntu 18.04 LTS

  2. Cara menggunakan Ansible untuk menginstal dan mengkonfigurasi Redis 6 di Ubuntu 20.04

  3. Cara menggunakan Ansible untuk menginstal dan mengkonfigurasi Redis 6 di Debian 11

  1. Cara Membuat File di Ansible

  2. Cara Menginstal dan Mengonfigurasi Ansible di Windows

  3. Pustaka Bersama Jenkins:Cara Membuat, Mengonfigurasi, dan Menggunakan