Ağ topolojisi:
Burada, linuxhint-711ea bir Ubuntu 20'dir.Ansible'ı kuracağım 04 LTS makinesi.
Ardından, ana bilgisayarları yapılandıracağım ana bilgisayar1 (IP adresi 192.168.20.162) ve ana bilgisayar2 (IP adresi 192.168.20.153) Ansible otomasyonu için ve üzerlerinde Ansible kullanarak komutları çalıştırın linuxhint-711ea makine.
sadece arayacağım ana bilgisayar1 ve ana bilgisayar2 Bu makalede Ansible ana bilgisayarları olarak.
Ansible'ı yükleme:
Ansible'ı Ubuntu 20'ye kolayca yükleyebilirsiniz.04 LTS, Ubuntu'nun resmi paket deposundan.
İlk olarak, APT paketi deposu önbelleğini aşağıdaki komutla güncelleyin:
$ sudo uygun güncelleme
APT paketi deposu önbelleği güncellenmelidir.
Şimdi, aşağıdaki komutla Ansible'ı kurun:
$ sudo apt yükleme ansible
Kurulumu onaylamak için tuşuna basın Y ve ardından basın
Ansible kurulmalı.
Şimdi, ansible'ın doğru çalışıp çalışmadığını kontrol etmek için aşağıdaki komutu çalıştırın.
$ yanıtlanabilir --versiyonGördüğünüz gibi ansible komutu mevcut ve düzgün çalışıyor.
SSH Anahtarı Oluşturma:
Şimdi, Ansible'ı kurduğunuz bilgisayarda bir SSH anahtarı oluşturmanız gerekiyor.
Bir SSH anahtarı oluşturmak için aşağıdaki komutu çalıştırın:
$ ssh-keygen
Şimdi basın
Basın
Basın
Bir SSH anahtarı oluşturulmalıdır.
Ansible Otomasyon için Ubuntu Ana Bilgisayarlarını Yapılandırma:
Bu bölümde size bir Ubuntu ana bilgisayarını nasıl yapılandıracağınızı göstereceğim (ana bilgisayar1) Ansible otomasyonu için. Ansible kullanarak otomatikleştirmek istediğiniz birden fazla ana makineniz varsa, aynı işlemi ana bilgisayarların her birinde tekrarlayın.
Ansible otomasyonu için yapılandırmak istediğiniz Ubuntu Ansible ana bilgisayarlarında SSH sunucu paketi kurulu olmalıdır.
İlk olarak, APT paketi deposu önbelleğini aşağıdaki komutla güncelleyin:
$ sudo uygun güncelleme
Ardından, aşağıdaki komutla OpenSSH sunucusunu kurun:
$ sudo apt install openssh-server -y
Benim durumumda, OpenSSH sunucu paketi zaten kurulu. Sizin durumunuzda kurulu değilse, kurulmalıdır.
Şimdi, kontrol edin sshd servis aşağıdaki komutla çalışıyor:
$ sudo systemctl durumu sshdGördüğünüz gibi, sshd hizmet aktif (koşarak) ve etkin (sistem önyüklemesinde otomatik olarak başlayacaktır).
Eğer sshd hizmet değil aktif (çalışıyor) sizin durumunuzda, aşağıdaki komutla manuel olarak başlatın:
$ sudo systemctl sshd'yi başlatEğer sshd hizmet değil etkin (sistem başlangıcına eklenmedi) sizin durumunuzda, aşağıdaki komutla manuel olarak sistem başlangıcına ekleyin:
$ sudo systemctl sshd'yi etkinleştirŞimdi, aşağıdaki komutla güvenlik duvarını SSH erişimine izin verecek şekilde yapılandırın:
$ sudo ufw ssh'ye izin ver
Ayrıca bir cevaplayıcı kullanıcı ve parolasız sudo erişimine izin verin cevaplayıcı kullanıcı.
oluşturmak için cevaplayıcı kullanıcı, aşağıdaki komutu çalıştırın:
$ sudo adduser ansible
Şimdi, için bir şifre girin cevaplayıcı kullanıcı ve basın
Şimdi şifreyi tekrar yazın ve tuşuna basın
Şimdi basın
Şimdi basın
Şimdi basın
Şimdi basın
Şimdi basın
Şimdi, yazın y ve ardından basın
bir cevaplayıcı kullanıcı oluşturulmalı.
Şimdi, parolasız sudo erişimini yapılandırın cevaplayıcı kullanıcı aşağıdaki komutla:
$ echo "ansible TÜMÜ=(TÜMÜ) NOPASSWD:ALL" | sudo tee /etc/sudoers.d/anlaşılabilir
Şimdi, Ansible ana bilgisayarının IP adresini bulun (ana bilgisayar1) aşağıdaki komutla:
$ ana bilgisayar adı -Iİşte, benim durumumdaki IP adresi 192.168.20.162. Senin için farklı olacak. Bu nedenle, şimdi kendi formunuzla değiştirdiğinizden emin olun.
Şimdi, Ansible'ı kurduğunuz bilgisayardan SSH ortak anahtarını Ansible ana bilgisayarına kopyalayın (ana bilgisayar1) aşağıdaki gibi:
$ ssh-copy-id [email protected]
Yazın Evet ve bas
Şimdi, şifreyi yazın cevaplayıcı kullanıcı ve basın
Genel SSH anahtarı şuraya kopyalanmalıdır: ana bilgisayar1.
Şimdi, parola tabanlı oturum açmayı devre dışı bırakın cevaplayıcı kullanıcı aşağıdaki komutla:
$ sudo usermod -L yanıtlanabilir
Artık Ansible ana bilgisayarına yalnızca SSH yapabilirsiniz (ana bilgisayar1) gibi cevaplayıcı SSH ortak anahtarını kopyaladığınız bilgisayardan herhangi bir şifresi olmayan kullanıcı (bu durumda Ansible'ı kurduğunuz bilgisayar). Ancak Ansible ana bilgisayarına SSH yapamazsınız (ana bilgisayar1) gibi cevaplayıcı başka bir bilgisayardan kullanıcı. Güvenlik nedenleriyle Ansible ana bilgisayarlarını bu şekilde yapılandırdım. olarak cevaplayıcı kullanıcı yönetici komutlarını çalıştırmak için herhangi bir parolaya ihtiyaç duymaz, kullanıcı için parola tabanlı oturum açmaya izin vermek risklidir cevaplayıcı kullanıcı.
Şimdi, yanıtlayıcı ana bilgisayara SSH yapabilmeniz gerekir ana bilgisayar1 Ansible'ı kurduğunuz bilgisayardan aşağıdaki gibi:
$ ssh [email protected]
Gördüğünüz gibi, Ansible ana bilgisayarına erişebiliyorum (ana bilgisayar1) şifresiz ansible kullanıcı olarak. Yani, Ansible ana bilgisayarı (ana bilgisayar1) Ansible otomasyonu için hazır.
Herhangi bir nedenle, şifre tabanlı oturum açmaya izin vermek istiyorsanız, cevaplayıcı kullanıcıyı tekrar, Ansible ana bilgisayarında aşağıdaki komutu çalıştırın (ana bilgisayar1):
$ sudo usermod -U yanıtlayıcı
Aynı şekilde Ansible otomasyonu için istediğiniz kadar host konfigüre edebilirsiniz.
Bu yazıda sadece 2 host konfigüre ettim, ana bilgisayar1 ve ana bilgisayar2 gösteri için.
Ansible'ın Test Edilmesi:
Şimdi yeni bir proje dizini oluşturun ~/ansible-demo/ Ansible'ı kurduğunuz bilgisayarda aşağıdaki gibi:
$ mkdir ~/ansible-demo
Şimdi, şuraya gidin: ~/ansible-demo/ dizin şu şekilde:
$ cd ~/ansible-demo/
Şimdi, yeni bir tane oluşturun ev sahibi proje dizinindeki dosya aşağıdaki gibi:
$ nano ana bilgisayar
Şimdi, Ansible ana bilgisayarlarının IP adreslerini veya DNS adlarını yazın (ana bilgisayar1 ve ana bilgisayar2 benim durumumda) ev sahibi dosya şu şekilde:
192.168.20.162192.168.20.153
Şimdi, tuşuna basarak dosyayı kaydedin
Şimdi, aşağıdaki gibi Ansible kullanarak tüm ana bilgisayarlara ping atmayı deneyin:
$ ansible all -i ./hosts -u ansible -m pingNOT: Burada, -u seçeneği, Ansible'ın ana bilgisayarlara SSH için kullanacağı kullanıcı adını (bu durumda yanıtlanabilir) belirtmek için kullanılır.
Gördüğünüz gibi, tüm ana bilgisayarlara ping atılabilir. Böylece, ana bilgisayarlar Ansible otomasyonu için hazır.
Aynı şekilde, aşağıdaki gibi Ansible kullanarak ana bilgisayarlarda herhangi bir komutu çalıştırabilirsiniz:
$ ansible all -i ./hosts -u ansible -m shell -a 'echo "$(hostname) - $(hostname -I)"'
Gördüğünüz gibi, komut ana bilgisayarların her birinde başarıyla çalıştı ve çıktı görüntülenir.
Ansible'ı Ubuntu 20'ye bu şekilde kurarsınız.04 LTS ve Ubuntu 20'yi yapılandırın.Ansible otomasyonu için 04 LTS ana bilgisayarı. Bu makaleyi okuduğunuz için teşekkürler.