Ansible Control Node Nasıl Kurulur ve Yapılandırılır - Bölüm 2
Önceki konuda temel Ansible terminolojilerini ve temel kavramları öğreneceksiniz. Bu konuda (Ansible serisinin 2. Bölümü), RHEL 8'de bir Ansible kontrol düğümünü nasıl kurup yapılandırabileceğinizi göstereceğiz.
Kurulumumuzda 1 Ansible sunucusu ve 2 uzak Linux düğümü kullanacağız:
Control Node 1: RHEL 8 Server IP: 192.168.0.108 Ansible Server
Managed Host 1: Debian 10 IP: 192.168.0.15 Webserver
Managed Host 2: CentOS 8 IP: 192.168.0.200 Database Server
Ansible Kontrol Düğümü nedir?
Kontrol düğümü, üzerinde Ansible'ın yüklü olduğu ve uzak ana makineleri veya düğümleri yönetmek için kullanılan bir Linux sunucusudur. Bu uzak sistemler, Yönetilen Ana Bilgisayarlar veya Yönetilen düğümler olarak bilinir.
Yukarıdaki kurulumda kontrol düğümü, Ansible'ın kurulacağı RHEL 8 sunucusu ve Debian 10 ve CentOS 8<'dir. yönetilen ana bilgisayarlardır.
NOT: Ansible, yönetilen ana bilgisayarlara değil, yalnızca kontrol düğümüne yüklenir.
Adım 1: Python 3'ü Yükleme
Varsayılan olarak RHEL 8 Python 3 ile birlikte gelir ve çalıştırarak sunucunuzda yüklü Python sürümünü doğrulayabilirsiniz.
python3 -V
Herhangi bir nedenle Python3 kurulu değilse aşağıdaki dnf komutunu kullanarak kurun.
dnf install python3
RHEL 8 sisteminizde birden fazla Python sürümü mevcutsa, Python 3'ü varsayılan Python sürümü olarak ayarlayabilirsiniz. koşarak.
alternatives --set python /usr/bin/python3
2. Adım: Resmi RedHat Deposunu Etkinleştirin
Python3'ü yükledikten sonra, aşağıda gösterildiği gibi RedHat'ın Ansible için resmi deposunu etkinleştirdiğinizden emin olun.
subscription-manager repos --enable ansible-2.8-for-rhel-8-x86_64-rpms
NOT: Yukarıdaki komutun çalışması için RHEL 8'inizi RedHat aboneliğine kaydettiğinizden emin olun.
Adım 3: Ansible'ı RHEL 8'e yükleyin
RHEL 8 sistemimiz olan Control düğümüne Ansible'ı yüklemek için komutu çalıştırın.
dnf install ansible -y
Kurulduktan sonra, komutu çalıştırarak Ansible'ın kurulu sürümünü kontrol edebilirsiniz.
ansible --version
Adım 4: Statik Ana Bilgisayar Envanter Dosyası Oluşturma
Şu ana kadar RHEL 8 sunucumuz olan Kontrol Düğümü'ne ansible'ı başarıyla yükledik. Kontrol düğümü tarafından yönetilecek uzak düğümlerin envanter dosyası adı verilen bir dosyada tanımlanması gerekir. Envanter dosyası, kontrol düğümünde bulunan ve uzak ana bilgisayarların ana bilgisayar adlarından veya IP adreslerinden oluşan düz bir metin dosyasıdır.
Statik ana bilgisayar dosyası, IP adresleri veya ana bilgisayar adlarıyla tanımlanan yönetilen düğümlerin listesini içeren düz metin dosyasıdır. /etc/ansible/ dizininde 'hosts' statik bir dosya oluşturalım.
vi /etc/ansible/hosts
Ardından, yönetilen ana bilgisayarlarınız için bir grup veya gruplar tanımlayın. Bu konunun girişindeki kurulumda daha önce görüldüğü gibi 2 yönetilen ana makinemiz var. Kurulumdan itibaren statik ana bilgisayar dosyası aşağıdaki gibi tanımlanacaktır:
[webserver]
192.168.0.15
[database_server]
192.168.0.200
Envanter dosyasını kaydedin ve çıkın.
Yönetilen ana bilgisayarları listelemek için şunu çalıştırın:
ansible all -i hosts --list-hosts
Şu ana kadar kontrol düğümüne Ansible'ı kurmayı ve yönetilen ana bilgisayarları kontrol düğümünde bulunan statik bir Ana Bilgisayar dosyasında tanımlamayı başardık.
Daha sonra uzak veya yönetilen ana bilgisayarlarımızı nasıl yönetebileceğimizi veya kontrol edebileceğimizi göreceğiz.
Adım 5: Uzak Düğümlere Bağlanmak için Ansible Kontrol Düğümünü Kurun
Uzak ana bilgisayar sistemlerini (Debian 10 ve CentOS 8) yönetmek için Ansible kontrol düğümü (RHEL 8) için uzak ana bilgisayarlara şifresiz SSH kimlik doğrulaması ayarlamamız gerekiyor. Bunun gerçekleşmesi için bir SSH anahtar çifti oluşturmanız ve genel anahtarı uzak düğümlere kaydetmeniz gerekir.
Ansible kontrol düğümünde normal bir kullanıcı olarak oturum açın ve komutu çalıştırarak SSH anahtar çiftini oluşturun.
su tecmint
ssh-keygen
Daha sonra, genel ssh anahtarını gösterildiği gibi uzak düğümlere kopyalayın.
ssh-copy-id [email (For Debian 10 node)
ssh-copy-id [email (For CentOS 8 node)
Genel anahtarları tüm uzak düğümlerimize ekledikten sonra, erişilebilir olduklarından emin olmak için Ansible Control düğümünden bir ping komutu yayınlayacağız.
ansible -m ping all
Yukarıdaki çıktıdan ping komutunun başarılı olduğunu ve tüm düğümlere ulaşılabilirliği test edebildiğimizi açıkça görebiliyoruz.
Çözüm
Bu kılavuzda, RHEL 8 çalıştıran kontrol düğümüne Ansible'ı başarıyla yükledik ve ayarladık. Daha sonra uzak ana bilgisayarları statik bir ana bilgisayar dosyasında tanımladık ve kontrol düğümünü, SSH parolasız kimlik doğrulamasını ayarlayarak yönetilen ana bilgisayarlara bağlanıp bunları kontrol edecek şekilde yapılandırdık.