Cara Melakukan Konfigurasi Ansible pada FreeBSD 14
· 2 min read · Label UnixBSD
Ansible adalah perangkat lunak yang menyediakan otomatisasi sederhana namun canggih untuk dukungan komputer dengan berbagai macam sistem operasi. Perangkat lunak ini terutama ditujukan untuk para profesional TI, yang menggunakannya untuk penerapan aplikasi, pembaruan ke stasiun kerja dan server, penyediaan cloud, manajemen konfigurasi, orkestrasi intra-layanan, dan hampir semua aktivitas yang dilakukan administrator sistem setiap jam, setiap hari, atau setiap minggu. Ansible tidak bergantung pada perangkat lunak agen dan tidak memiliki infrastruktur keamanan tambahan, sehingga mudah diterapkan.
Misalnya, Anda memiliki 100 server dan Anda perlu menginstal konfigurasi yang sama (Apache, postgres, redis, mongodb). Dengan alat ini, hanya butuh sedikit waktu. Tidak perlu terhubung ke setiap server, menginstal dan mengonfigurasi konfigurasi untuk setiap program. Cukup tulis skrip dan skrip akan melakukan semuanya untuk Anda, di semua server.
Kami dapat masuk ke sistem tanpa perlu memasukkan frasa sandi.
Ansible dapat mengeluarkan perintah ad-hoc dari baris perintah ke sistem jarak jauh. Contoh sederhana untuk menunjukkan fungsionalitas Ansible adalah menggunakan modul ping untuk memverifikasi bahwa sistem target merespons:
Selanjutnya, buat kunci SSH publik authorized_keys untuk pengguna "ansible".
Untuk mengatasi masalah ayam dan telur ini, kita dapat menggunakan metode yang berbeda untuk menjalankan perintah. Ini disebut mode mentah dan tidak memiliki abstraksi apa pun, melainkan menggunakan perintah literal:
Ada banyak hal bermanfaat lainnya yang terkait dengan Ansible yang bahkan tidak dipertimbangkan dalam postingan ini. Saya menganjurkan Anda untuk melihat dokumentasi Ansible karena dokumentasi tersebut cukup lengkap dan mudah dipahami, serta merinci kapabilitas sebenarnya dari kerangka kerja otomatisasi Ansible. Selain itu, memiliki pola dan standar yang terkait dengan cara menyusun playbook Ansible, berbagi kode, mengaudit tindakan, dll.
Misalnya, Anda memiliki 100 server dan Anda perlu menginstal konfigurasi yang sama (Apache, postgres, redis, mongodb). Dengan alat ini, hanya butuh sedikit waktu. Tidak perlu terhubung ke setiap server, menginstal dan mengonfigurasi konfigurasi untuk setiap program. Cukup tulis skrip dan skrip akan melakukan semuanya untuk Anda, di semua server.
Ada banyak tindakan dalam pekerjaan administrator sistem yang dapat diotomatisasi menggunakan perangkat lunak sistem manajemen konfigurasi khusus. Salah satunya adalah Ansible, yang dengannya Anda dapat mengotomatiskan instalasi dan konfigurasi perangkat lunak pada sejumlah mesin.
Dalam artikel ini saya akan menunjukkan cara menggunakan Ansible untuk meluncurkan komponen infrastruktur, serta untuk beberapa tugas sehari-hari.
Hostname: ns6
IP Addreess: 192.168.5.2
Ansible version: py39-ansible-8.2.0
Username: ansible
Dalam artikel ini saya akan menunjukkan cara menggunakan Ansible untuk meluncurkan komponen infrastruktur, serta untuk beberapa tugas sehari-hari.
1. Spesifikasi Sistem
OS: FreeBSD 13.2Hostname: ns6
IP Addreess: 192.168.5.2
Ansible version: py39-ansible-8.2.0
Username: ansible
2. Mengapa menggunakan Ansible
Ansible merupakan perangkat lunak lintas platform, sehingga dapat diinstal di hampir semua sistem operasi seperti FreeBSD, Windows, Linux, dan MacOS. Perangkat lunak ini memiliki banyak keunggulan:- Kemudahan penggunaan. Cukup dengan satu simpul induk, yang darinya konfigurasi akan diluncurkan dalam bahasa markup YAML. Tidak perlu menginstal agen atau perangkat lunak pihak ketiga, protokol SSH digunakan untuk menghubungkan host dari jarak jauh.
- Banyak modul yang tersedia. Ansible dilengkapi dengan berbagai modul yang memungkinkan Anda melakukan tindakan tertentu di server, berinteraksi dengan sistem operasi, mengonfigurasi jaringan, bekerja dengan file, pengguna, dan hak akses khusus.
- Keamanan, dapat menggunakan protokol SSH, jadi tidak perlu mengambil langkah tambahan.
3. Port dan PKG Ansible
Pada FreeBSD, instalasi Ansible dapat dilakukan dengan paket PKG dan port sistem. Kita akan menggabungkan keduanya, untuk menginstal dependensi Ansible gunakan PKG dan untuk menginstal Ansible gunakan sistem port. Berikut ini adalah skrip untuk menginstal dependensi Ansible.Gunakan port sistem FreeBSD untuk menginstal Ansible.
Menginstal Ansible dengan sistem ports sangat disarankan, karena semua file library akan disertakan selama proses instalasi.
Setelah Ansible terinstal di sistem FreeBSD Anda, kita dapat melanjutkan dengan membuat folder "/usr/local/etc/ansible", dan membuat file bernama "ansible.cfg" dan "hosts" di folder tersebut.
Ketikkan script di bawah ini pada file "/usr/local/etc/ansible/ansible.cfg".
dan file "/usr/local/etc/ansible/hosts".
4. Buat Pengguna dan authorized_keys SSH
Pada poin 3 kita akan membuat pengguna yang dapat mengakses Ansible. Dalam contoh ini pengguna kita diberi nama "ansible", tetapi Anda dapat memilih apa pun yang Anda inginkan. Saya akan menunjukkan cara menambahkan pengguna di FreeBSD. Untuk mempelajari lebih lanjut tentang poin 3, Anda dapat membaca artikel sebelumnya.
Sekarang, kita menguji koneksi SSH pada pengguna ansible.
Berhasil!
Kami dapat masuk ke sistem tanpa perlu memasukkan frasa sandi.
Ansible dapat mengeluarkan perintah ad-hoc dari baris perintah ke sistem jarak jauh. Contoh sederhana untuk menunjukkan fungsionalitas Ansible adalah menggunakan modul ping untuk memverifikasi bahwa sistem target merespons:
Selanjutnya, buat kunci SSH publik authorized_keys untuk pengguna "ansible".
Kemudian, kami menggunakan ssh-add untuk menambahkan identitas kunci pribadi ke agen autentikasi.
Berikutnya saya membuat izin.
5. Ansible Bootstrap Python
Seperti yang kita ketahui, satu-satunya persyaratan pada mesin target adalah versi python modern yang terinstal pada sistem FreeBSD. Namun, bagaimana jika versi python tersebut tidak terinstal pada mesin target? Anda dapat melakukannya secara manual pada beberapa mesin, tetapi bagaimana jika Anda memiliki banyak server target yang tidak memiliki python terinstal pada setiap mesin?.Untuk mengatasi masalah ayam dan telur ini, kita dapat menggunakan metode yang berbeda untuk menjalankan perintah. Ini disebut mode mentah dan tidak memiliki abstraksi apa pun, melainkan menggunakan perintah literal:
Setelah perintah tersebut berhasil dijalankan, Ansible telah sepenuhnya siap dan dapat menggunakan mode, modul, dan playbook lainnya. Untuk memastikan komunikasi antara mesin kontrol dan target terenkripsi, kami menyiapkan SSH dan bertukar kunci publik untuk login tanpa kata sandi.
Tugas umum adalah mentransfer file dari sistem lokal ke sistem jarak jauh. Ini termasuk file konfigurasi, templat, atau data lain dalam bentuk apa pun. Ansible dapat melakukan SCP (salinan aman) file secara paralel ke beberapa mesin. Modul salin memerlukan sumber dan tujuan sebagai parameter.
Sangat penting untuk memastikan integritas sumber daya dan kebersihan kode Ansible Anda. Pengorganisasian kode, pengelompokan host, dan akses dengan hak istimewa terendah hanyalah beberapa komponen yang akan sangat penting untuk adopsi massal kerangka kerja Ansible sekaligus mampu menjaga integritas lingkungan Anda.
Silahkan Berkomentar, Kakak...! Bunda...!
Posting Komentar