Fedora’da Ansible Nasıl Kurulur?
Ansible, uzak Linux makinelerini ssh protokolü üzerinden yöneten ücretsiz ve açık kaynaklı, aracısız bir otomasyon aracıdır. Ansible’ın kurulu olduğu sistem, kontrol düğümü olarak bilinir ve ansible tarafından yönetilen uzak makineler, bilinen yönetilen düğümlerdir .
Önkoşullar
- Minimum Kurulum Yüklü Fedora
- Yönetici haklarına sahip Sudo Kullanıcısı
- İnternet bağlanabilirliği
Laboratuvar Kurulumu
- Kontrol Düğümü: Fedora 36 – 192.168.1.168
- Yönetilen Düğüm: Ubuntu 22.04 – 192.168.1.167
Daha fazla gecikmeden Ansible’ın kurulum adımlarına derinlemesine bakalım.
1) Fedora sisteminizi güncelleyin
Fedora 36 sisteminize giriş yapın ve tüm güncellemeleri yüklemek için aşağıdaki dnf komutunu çalıştırın,
$ sudo dnf update -y
Tüm güncellemeler yüklendikten sonra sistemi bir kez yeniden başlatın
$ sudo reboot
2) Ansible’ı dnf ile kurun
Ansible paketi ve bağımlılıkları Fedora 36’nın varsayılan paket havuzlarında mevcuttur. Yüklemek için aşağıdaki dnf komutunu çalıştırın,
$ sudo dnf install -y ansible
Ansible yüklendikten sonra sürümünü kontrol edin
$ ansible --version
3) SSH anahtarları oluşturun ve paylaşın
Yerel kullanıcınız (sysops) için ssh anahtarlarını oluşturun ve bu anahtarları yönetilen düğümle paylaşın.
ssh anahtarları oluşturmak için çalıştırın
$ ssh-keygen
Şimdi ssh anahtarlarını paylaşmak için ssh-copy-id komutunu çalıştırın,
$ ssh-copy-id [email protected]
Not : Kullanıcı ‘sysops’ kullanıcısının yönetilen düğümlerde bulunduğundan emin olun ve ayrıca echo ve tee komutunu kullanarak yönetilen düğümde aşağıdakileri oluşturun .
$ echo "sysops ALL=(ALL) NOPASSWD:ALL" | sudo tee /etc/sudoers.d/sysops
4) Uygun Kurulumu Test Edin
Ansible kurulumu test etmek için uzak sistemi yönetmeye çalışacağız (192.168.1.167). Ama önce ansible.cfg ve envanter dosyası oluşturun.
$ mkdir demo-ansible && cd demo-ansible $ vi ansible.cfg [defaults] inventory = /home/sysops/demo-ansible/inventory remote_user = sysops host_key_checking = False [privilege_escalation] become=True become_method=sudo become_user=root become_ask_pass=False
dosyayı kaydedip kapatın.
İçeriğin altındaki envanter dosyasını oluşturun
$ vi inventory [test] 192.168.1.167
Dosyayı kaydedin ve çıkın.
Yönetim düğümü ile bağlantıyı kontrol etmek için aşağıdaki yanıtlanabilir geçici komutları çalıştırın,
$ ansible test -m ping $ ansible test -m shell -a 'lsb_release -a'
Çıktı,
Mükemmel, yukarıda, pinpon testi iyi çalıştığı için bağlantının orada olduğunu doğrular.
Yönetilen ana bilgisayara vsftpd yüklemek için örnek bir playbook oluşturalım.
$ vi vsftpd.yaml --- - name: Playbook to Install FTP Server hosts: test tasks: - name: Install vsftpd package: name: vsftpd state: present - name: Start vsftpd service service: name: vsftpd state: started enabled: yes
Dosyayı kaydedin ve kapatın
Aşağıdaki ansible komutunu kullanarak oyun kitabını çalıştırın,
$ ansible-playbook vsftpd.yaml
Çıktı,
Yukarıdaki çıktı, çalışma kitabının başarıyla yürütüldüğünü onaylar.
vsftpd hizmet durumunu doğrulayın, çalıştırın
$ ansible test -m shell -a 'systemctl status vsftpd'
Merhaba, makaleniz gerçekten bilgilendiriciydi. Ancak, Ansible’ı yükledikten sonra örnek bir senaryo üzerinde nasıl çalışabileceğimize dair daha fazla ayrıntıya değinseydiniz çok faydalı olurdu. Önerilerime açık mısınız? Teşekkürler!