Memahami Komponen Inti dari Ansible - Bagian 1

Memahami Komponen Inti dari Ansible - Bagian 1

Spesialis Bersertifikat Red Hat dalam Ujian Otomasi Ansible (EX407) adalah program sertifikasi baru oleh topi merah yang menguji keterampilan Anda untuk digunakan Semu untuk mengotomatiskan konfigurasi sistem dan aplikasi.

Serial ini akan berjudul "Spesialis Bersertifikat Red Hat dalam Ujian Otomasi Ansible (EX407)”Dan mencakup tujuan ujian berikut berdasarkan Red Hat Enterprise Linux 7.5 Dan Ansible 2.7, yang akan kita bahas dalam hal ini Semu seri:

Untuk melihat biaya dan mendaftar untuk ujian di negara Anda, periksa halaman Ujian Otomasi Ansible.

Bagian 1: Memahami komponen inti dari ansible Bagian 2: Instal dan konfigurasikan node kontrol yang tidak dapat dikendalikan Bagian 3: Cara mengkonfigurasi node yang dikelola ansible dan menjalankan perintah ad-hoc Bagian 4: Cara membuat inventaris statis dan dinamis untuk mendefinisikan kelompok host Bagian 5: Cara membuat drama dan playbook ansible Bagian 6: Cara menggunakan modul ansible untuk tugas administrasi sistem Bagian 7: Cara membuat dan menggunakan templat untuk membuat file konfigurasi yang disesuaikan Bagian 8: Bagaimana bekerja dengan variabel dan fakta yang tidak dapat dikeluarkan Bagian 9: Cara membuat dan mengunduh peran galaksi ansible dan menggunakannya Bagian 10: Cara menggunakan kubah ansible di buku pedoman untuk melindungi data sensitif

Di dalam Bagian 1 dari Semu Seri, kita akan membahas beberapa gambaran dasar komponen inti di Semu.

Memahami komponen inti dari ansible

Semu adalah platform otomatisasi gratis dan opensource oleh Topi merah Itu memungkinkan Anda untuk mengelola dan mengontrol banyak server dari satu lokasi pusat. Ini sangat ideal ketika Anda memiliki beberapa tugas berulang yang perlu dilakukan. Jadi alih -alih masuk ke masing -masing node jarak jauh ini dan melakukan tugas Anda, Anda dapat dengan nyaman melakukannya dari lokasi pusat dan dengan nyaman mengelola server Anda.

Ini bermanfaat ketika Anda ingin mempertahankan konsistensi dalam penyebaran aplikasi, mengurangi kesalahan manusia dan mengotomatiskan tugas yang berulang dan agak biasa.

Tentu saja, ada alternatif lain untuk Semu seperti Wayang, Koki, Dan Garam. Namun, Semu sebagian besar lebih disukai karena mudah digunakan dan mudah dipelajari.

Mengapa mudah mengetahui bahwa Anda mungkin bertanya? hal ini dikarenakan Semu penggunaan Yaml (Bahasa markup lainnya) dalam pekerjaan konfigurasi dan otomatisasi yang dapat dibaca manusia dan cukup mudah diikuti. Yaml penggunaan Ssh protokol untuk berkomunikasi dengan server jarak jauh, tidak seperti platform otomatisasi lain yang mengharuskan Anda menginstal agen pada node jarak jauh untuk berkomunikasi dengan mereka.

Sebelum kita mulai Semu, Penting bagi Anda untuk berkenalan dengan beberapa terminologi dasar sehingga Anda tidak tersesat atau bingung saat kami bergerak maju.

Inventaris

Sebuah inventaris adalah file teks yang berisi daftar server atau node yang Anda kelola dan konfigurasikan. Biasanya, server terdaftar berdasarkan nama host atau alamat IP mereka.

Sebuah inventaris File dapat berisi sistem jarak jauh yang ditentukan oleh alamat IP mereka seperti yang ditunjukkan:

10.200.50.50 10.200.50.51 10.200.50.52 

Atau, mereka dapat terdaftar menurut kelompok. Dalam contoh di bawah ini, kami memiliki server yang ditempatkan di bawah 2 grup - server web Dan database. Dengan cara ini mereka dapat direferensikan sesuai dengan nama grup mereka dan bukan alamat IP mereka. Ini semakin menyederhanakan proses operasi.

[Webservers] 10.200.50.60 10.200.50.61 [Database] 10.200.50.70 10.200.50.71 

Anda dapat memiliki banyak grup dengan banyak server jika Anda berada di lingkungan produksi yang besar.

Buku pedoman

A buku pedoman adalah satu set skrip manajemen konfigurasi yang menentukan bagaimana tugas akan dieksekusi pada host jarak jauh atau sekelompok mesin host. Skrip atau instruksi ditulis Yaml format.

Misalnya, Anda dapat memiliki file buku pedoman file untuk menginstal server web apache di centos 7 dan memanggilnya httpd.YML.

Untuk membuat buku pedoman Jalankan perintah.

$ touch playbook_name.YML 

Misalnya membuat buku pedoman yang disebut httpd, Jalankan perintah.

$ Touch httpd.YML 

File YAML dimulai dengan 3 tanda hubung seperti yang ditunjukkan. Di dalam file, tambahkan instruksi berikut.

--- - Nama: Ini Menginstal dan Memulai Host Webserver Apache: Webservers Tugas: - Nama: Instal Apache WebServer YUM: Name = httpd state = LARDER - Nama: Periksa Layanan Status HTTPD: Nama = httpd state = dimulai 

Di atas buku pedoman menginstal Server Web Apache pada sistem jarak jauh yang didefinisikan sebagai server web di file inventaris. Setelah instalasi server web, kemudian dapat memeriksa apakah server web apache dimulai dan berjalan.

Modul

Modul adalah unit kode diskrit yang digunakan dalam buku pedoman Untuk mengeksekusi perintah pada host atau server jarak jauh. Setiap modul diikuti oleh argumen.

Format dasar modul adalah Kunci: Nilai.

- Nama: Instal Apache Packages YUM: Name = httpd state = present 

Di atas Yaml cuplikan kode, -nama Dan yum adalah modul.

Drama

Sebuah ansible bermain adalah skrip atau instruksi yang mendefinisikan tugas yang akan dilakukan di server. Koleksi drama merupakan buku pedoman. Dengan kata lain, sebuah buku pedoman adalah kumpulan beberapa drama, yang masing -masing dengan jelas menetapkan tugas yang harus dilakukan di server. Drama ada dalam format YAML.

Variabel

Jika Anda memiliki latar belakang pemrograman, maka kemungkinan besar Anda telah menggunakan variabel. Pada dasarnya, variabel mewakili nilai. Variabel dapat mencakup huruf, angka, dan garis bawah tetapi harus selalu dimulai dengan surat.

Variabel digunakan saat instruksi bervariasi dari satu sistem ke sistem lainnya. Ini terutama benar selama konfigurasi atau berbagai layanan dan fitur.

Ada 3 jenis variabel utama:

  • Variabel Playbook
  • Variabel inventaris
  • Variabel khusus

Di dalam Semu, Variabel pertama kali didefinisikan menggunakan Vars k, Kemudian diikuti oleh nama variabel dan nilainya.

Sintaksnya seperti yang ditunjukkan:

VARS: var name1: 'variabel pertama saya' var name2: 'variabel kedua saya' 

Pertimbangkan kode di bawah ini.

- HOSTS: WebServer VARS: - Web_Directory:/var/www/html/ 

Dalam contoh di atas, variabel di sini web_directory dan itu menginstruksikan untuk membuat direktori di /var/www/html/ jalur.

Fakta

Fakta adalah properti sistem yang dikumpulkan oleh Ansible saat mengeksekusi buku pedoman pada sistem host. Properti termasuk nama host, keluarga OS, tipe CPU, dan core CPU untuk menyebutkan beberapa.

Untuk melihat jumlah fakta yang tersedia untuk digunakan.

$ ansible localhost -m pengaturan 
Daftar Fakta Ansible Tersedia

Seperti yang Anda lihat, sejumlah besar fakta telah ditampilkan secara default. Anda dapat semakin mempersempit hasil menggunakan parameter filter seperti yang ditunjukkan.

$ ansible localhost -m pengaturan -a "filter =*ipv4" 
Daftar IPv4 Fakta Ansible

File konfigurasi

Di dalam Semu, File konfigurasi adalah file yang berisi pengaturan parameter yang berbeda yang menentukan cara berjalan. File konfigurasi default adalah semu.CFG file terletak di /etc/ansible/ direktori.

Anda dapat melihat file konfigurasi dengan menjalankan:

$ cat/etc/ansible/ansible.CFG 
File konfigurasi ansible

Seperti yang dapat Anda amati, beberapa parameter disertakan seperti inventaris Dan perpustakaan jalur file, pengguna sudo, filter plugin, modul, dll. Parameter ini dapat disesuaikan hanya dengan mengomentari mereka dan memodifikasi nilai -nilai di dalamnya.

Selain itu, Anda dapat memiliki beberapa file konfigurasi yang bekerja dengan ansible selain dari file konfigurasi default Anda.

Ringkasan

Setelah melihat komponen inti di Semu, Kami harap Anda berada dalam posisi untuk menyimpannya di ujung jari Anda dan memilihnya saat kami bergerak maju. Bergabunglah dengan kami tentang topik Anda berikutnya.