Bagaimana Cara Menginstal dan Mengonfigurasi Ansible di Ubuntu?

Memulai Ansible di Ubuntu untuk penyediaan lingkungan dan manajemen konfigurasi yang lebih baik.

Manajemen Konfigurasi adalah tahap penting dalam siklus hidup DevOps. Ini membantu dalam otomatisasi dan orkestrasi infrastruktur TI.

Ada beberapa tools untuk manajemen konfigurasi, misalnya Puppet, Ansible, Chef, dan SaltStack. Dan, tentu saja, Ansible adalah salah satu alat paling populer di DevOps. Itu dapat mengelola ribuan server dan infrastruktur TI lengkap Anda dengan mudah.

Kami akan membahas yang berikut dalam artikel ini.

  • Instalasi yang memungkinkan
  • Pertukaran kunci SSH
  • Pengaturan klien yang memungkinkan
  • Pengujian yang memungkinkan

Instalasi yang Mungkin

Untuk membuatnya tetap sederhana, mari kita coba menggunakan Ansible di dua server. Satu akan menjadi server yang memungkinkan dan satu lagi klien yang memungkinkan dengan IP berikut.

  • server yang memungkinkan – 10.0.0.1
  • klien yang memungkinkan – 10.0.0.25

Instalasi sangat mudah… berikut ini perlu dilakukan di semua server tempat Anda ingin menggunakan Ansible. Dalam hal ini, di atas kedua server.

  • Jalankan perintah di bawah ini untuk menginstal perangkat lunak yang diperlukan untuk menginstal ansible.
[email protected]:~# apt install software-properties-common
  • Instal repositori dengan paket yang memungkinkan.
[email protected]:~# apt-add-repository --yes --update ppa:ansible/ansible
  • Perbarui alat pengemasan lanjutan (apt)
[email protected]:~# apt update
  • Dan, akhirnya – jalankan perintah di bawah ini untuk menginstal
[email protected]:~# apt install ansible

Ini akan memakan waktu beberapa detik untuk menginstal paket yang diperlukan.

  Cara memperbaiki PC otomatis masuk ke BIOS

Bagaimana Anda memastikannya diinstal dan versinya?

Nah, itu mudah. Anda dapat menggunakan sintaks –version dengan kemungkinan untuk mengetahui seperti di bawah ini.

[email protected]:~# ansible --version
ansible 2.8.1
  config file = /etc/ansible/ansible.cfg
  configured module search path = [u'/root/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/lib/python2.7/dist-packages/ansible
  executable location = /usr/bin/ansible
  python version = 2.7.15+ (default, Nov 27 2018, 23:36:35) [GCC 7.3.0]
[email protected]:~#

Seperti yang Anda lihat, Ansible 2.8.1 diinstal dan menyediakan informasi yang diperlukan seperti lokasi file konfigurasi, modul python.

Selanjutnya, kita perlu melakukan pertukaran kunci SSH sehingga melayani dan klien dapat berbicara satu sama lain.

Pertukaran Kunci SSH

Ansible terhubung ke kliennya melalui SSH (Secure shell).

Kami pertama-tama akan membuat kunci publik di server yang memungkinkan, yang perlu disalin ke klien yang memungkinkan.

Pastikan Anda masuk sebagai pengguna root.

  • Hasilkan kunci menggunakan perintah ssh-keygen seperti yang ditunjukkan di bawah ini
[email protected]:~# ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:cDapZBESo+8XcbXupbtILkFrklUSpwa70Y1c7yH5K1A [email protected]
The key's randomart image is:
+---[RSA 2048]----+
|    =.+oo .      |
|   . B.B.= .     |
|  . o @oE +      |
|   . *oO * .     |
|    o++.S + .    |
|   .o +o . +     |
|    .o..o +      |
|     ..o o .     |
|       .o o.     |
+----[SHA256]-----+
[email protected]:~#

Seperti yang Anda perhatikan, itu telah menghasilkan kunci publik di folder .ssh. Path lengkapnya adalah /root/.ssh/id_rsa.pub

  Cara Menambahkan Efek Tilt Shift Ke Foto Di iPhone Anda

Catatan: pastikan file kunci pribadi dan publik tidak dapat dibaca dunia. Anda dapat membuat daftar file untuk memverifikasinya.

cd /root/.ssh
[email protected]:~# ls -l 
-rw------- 1 root root 1679 Jun 19 00:37 id_rsa 
-rw------- 1 root root 404 Jun 19 00:37 id_rsa.pub

Jika Anda melihat izin salah, maka Anda dapat mengubahnya dengan menggunakan perintah chmod

Mantan:

chmod 400 id_rsa
chmod 400 id_rsa.pub

Mari salin kunci publik ke host Ansible yang alamat IP-nya adalah 192.168.56.101

[email protected]:~/.ssh# ssh-copy-id -i ~/.ssh/id_rsa.pub [email protected]
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/root/.ssh/id_rsa.pub"
The authenticity of host '10.0.0.25 (10.0.0.25)' can't be established.
ECDSA key fingerprint is SHA256:eXduPrfV0mhxUcpsZWg+0oXDim7bHb90caA/Rt79cIs.
Are you sure you want to continue connecting (yes/no)? yes
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
[email protected]'s password: 

Number of key(s) added: 1

Now try logging into the machine, with:   "ssh '[email protected]'"
and check to make sure that only the key(s) you wanted were added.

[email protected]:~/.ssh#

Anda dapat melihat pada output di atas, 1 kunci telah berhasil ditambahkan. Ini menunjukkan bahwa kunci SSH dipertukarkan.

  Cara Mendapatkan Fungsi Seperti Pembaca Safari di Peramban Seluler Apa Pun

Selanjutnya, kami akan menyiapkan klien Ansible.

Pengaturan Klien yang Memungkinkan

Saya berasumsi Anda telah mengikuti langkah-langkah instalasi Ansible di server klien seperti yang dijelaskan pada langkah-langkah sebelumnya.

Pengaturan Klien atau Host tidak lain adalah membuat server Ansible mengetahui klien. Dan, untuk melakukannya:

  • Masuk ke server yang memungkinkan
  • Buka /etc/ansible
  • Tambahkan yang berikut ini di file host dengan menggunakan editor favorit Anda
[Client] 
node1 ansible_ssh_host=10.0.0.25

Tes Kemungkinan

Jika Anda telah mengikuti semua langkah dengan benar, Anda akan mendapatkan pesan SUCCESS ketika Anda menjalankan perintah di bawah ini pada server yang memungkinkan.

[email protected]:~/.ssh# ansible -m ping Client
node1 | SUCCESS => {
    "ansible_facts": {
        "discovered_interpreter_python": "/usr/bin/python3"
    }, 
    "changed": false, 
    "ping": "pong"
}
[email protected]:~/.ssh#

Thea di atas melakukan ping ke klien untuk menguji konektivitas dan mengonfirmasi apakah baik atau tidak.

Kesimpulan

Saya harap ini memberi Anda ide untuk memulai dengan instalasi dan bermain-main. Nantikan tutorial Ansible lainnya atau lihat juga kursus Udemy Mastering Ansible ini.