Ansible sendiri ditulis dengan Python dan memiliki kurva belajar yang cukup minim. Ansible mengikuti prosedur pengaturan sederhana dan tidak bergantung pada perangkat lunak tambahan, server, atau daemon klien. Ini mengelola node melalui SSH dan paralel secara default.
Dalam panduan ini, kita akan mempelajari cara Menginstal dan Mengonfigurasi Ansible di Fedora 35.
Konten terkait
- Cara Menginstal Python 2 dan Python 3 di Fedora 35
- Cara Menginstal Python 2 dan Python 3 di Rocky Linux/Centos 8
- Cara Menginstal dan Mengonfigurasi Ansible di Rocky Linux/CentOS 8
Prasyarat
Untuk mengikuti, pastikan Anda memiliki:
- Server Fedora 35 terbaru
- Akses ke internet
- Pengetahuan tentang terminal Linux
- Akses root ke server atau Pengguna dengan akses sudo
Daftar Isi
- Pastikan bahwa paket OS terbaru
- Menginstal Python di Server Fedora 35
- Menginstal Kemungkinan
- Menguji penginstalan yang memungkinkan
1. Pastikan paket OS terbaru
Sebelum melanjutkan, selalu disarankan untuk memperbarui sistem dan paket yang diinstal.
Gunakan perintah ini untuk memastikan bahwa paket sistem terbaru:
sudo dnf -y update
2. Menginstal Python di Server Rocky Linux/Centos 8
Ansible ditulis dengan Python. Karena program python diinterpretasikan, mereka selalu membutuhkan python runtime yang tersedia untuk dijalankan. Ansible tidak terkecuali, kita membutuhkan Python untuk menjalankan Ansible. Ansible berfungsi untuk Python 2 dan Python 3.
Gunakan ini untuk menginstal python3 di server:
sudo dnf install -y python3
Pip adalah manajer paket untuk Python. Kita dapat menggunakan pip untuk mengelola paket python python dan dependensinya. Kami juga membutuhkan pip untuk Menginstal yang memungkinkan. Gunakan perintah ini untuk menginstal pip:
sudo dnf -y install python3-pip
Disarankan juga untuk menginstal pip versi terbaru. Gunakan perintah ini untuk meningkatkan pip
sudo pip3 install --upgrade pip
3. Menginstal Ansible
Ada dua cara yang bisa kita gunakan untuk menginstal Ansible di sistem kita.
i. Instal mungkin Dari repo Fedora default
Kita dapat menginstal ansible yang disediakan di fedora repo menggunakan perintah ini:
sudo dnf install ansible
Periksa versi Ansible yang diinstal pada sistem Anda menggunakan perintah ini:
$ ansible --version
ansible 2.9.27
config file = /etc/ansible/ansible.cfg
configured module search path = ['/home/fedora/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
ansible python module location = /usr/lib/python3.9/site-packages/ansible
executable location = /usr/bin/ansible
python version = 3.9.7 (default, Aug 30 2021, 00:00:00) [GCC 11.2.1 20210728 (Red Hat 11.2.1-1)]
Instal dimungkinkan menggunakan pip
Pip dapat digunakan untuk menginstal di sistem kami.
pip3 install ansible --user
Karena saya sudah menginstal yang memungkinkan dalam kasus saya, saya mendapatkan ini
$ pip3 install ansible --user
Requirement already satisfied: ansible in /usr/lib/python3.9/site-packages (2.9.27)
Requirement already satisfied: jinja2 in /usr/lib/python3.9/site-packages (from ansible) (2.11.3)
Requirement already satisfied: PyYAML in /usr/lib64/python3.9/site-packages (from ansible) (5.4.1)
Requirement already satisfied: cryptography in /usr/lib64/python3.9/site-packages (from ansible) (3.4.6)
Requirement already satisfied: cffi>=1.12 in /usr/lib64/python3.9/site-packages (from cryptography->ansible) (1.14.5)
Requirement already satisfied: pycparser in /usr/lib/python3.9/site-packages (from cffi>=1.12->cryptography->ansible) (2.20)
Requirement already satisfied: MarkupSafe>=0.23 in /usr/lib64/python3.9/site-packages (from jinja2->ansible) (1.1.1)
Requirement already satisfied: ply==3.11 in /usr/lib/python3.9/site-packages (from pycparser->cffi>=1.12->cryptography->ansible) (3.11)
4. Menguji Instalasi yang memungkinkan
Ansible menggunakan ssh untuk menghubungkan dan menjalankan perintah di server jauh. Jadi agar Ansible berfungsi, kita perlu memastikan bahwa kita dapat terhubung ke server jarak jauh menggunakan ssh.
Untuk melakukan password less ssh ke server jarak jauh, gunakan perintah ini untuk menghasilkan kunci ssh:
$ ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/home/rocky/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/rocky/.ssh/id_rsa.
Your public key has been saved in /home/rocky/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:vRdPlegZg17H4aMt30jQsiTYe0Jnh0zErhnSnuUQj3g [email protected]
The key's randomart image is:
+---[RSA 3072]----+
| oo . |
| o.ooo+ o|
| .o+*O=o*.|
| ooE**=B..|
| S++X+=o. |
| =+.=o..|
| . . o..|
| . |
| |
+----[SHA256]-----+
Salin id ke server jauh:
ssh-copy-id [email protected]
Sekarang buat file inventaris:
vim hosts
Dengan konten ini:
10.2.40.182 ansible_ssh_user=fedora
Gunakan modul ping untuk menguji kemungkinan:
$ ansible -i hosts 10.2.40.182 -m ping 10.2.40.182 | SUCCESS => { "ansible_facts": { "discovered_interpreter_python": "/usr/bin/python" }, "changed": false, "ping": "pong" }
Untuk perintah yang memerlukan sudo, berikan opsi --ask-become-pass
. Ini akan meminta kata sandi eskalasi hak istimewa. Ini mungkin memerlukan pemasangan sshpass
program.
$ ansible -i hosts 10.2.40.182 -m command -a "sudo yum install vim" --ask-become-pass
BECOME password:
[WARNING]: Consider using 'become', 'become_method', and 'become_user' rather than running sudo
10.2.40.182 | CHANGED | rc=0 >>
Last metadata expiration check: 0:23:39 ago on Wed 03 Nov 2021 08:35:14 PM UTC.
Package vim-enhanced-2:8.2.3512-1.fc34.x86_64 is already installed.
Dependencies resolved.
Nothing to do.
Complete!
Kesimpulan
Kami telah berhasil menginstal Ansible dan menguji koneksi ke server jauh dalam panduan ini.