Automatyzacja Sieci z Ansible – 5 Kroków Do Implementacji Control Node

CTA-Home-page-New.png

Udostępnij post

Share on facebook
Share on linkedin
Share on twitter
Share on email

Ten wpis jest jednym z elementów darmowego szkolenia Automatyzacja Sieci z Ansible. Jeżeli chcesz dowiedzieć się więcej, kliknij tutaj.

Kiedy zaczynałem naukę Ansible, moim największym problemem było pierwsze, prawidłowe uruchomienie playbooka. Myślę, że na początku ucieszyłbym się, chociaż jakiejś pojedynczej komendy, która prawidłowo połączy się z urządzeniem sieciowym i wykona na nim jakieś instrukcje 🙂 Korzystałem wtedy z wielu różnych poradników, które albo pomijały kwestie prawidłowej konfiguracji do automatyzacji sieci „od zera”, albo bazowały na nieaktualnych wersjach Ansible, które jedynie w teoretyczny sposób przedstawiały zasadę działania tego narzędzia. Kiedy w końcu wszystko zostało poprawnie skonfigurowane, każde kolejne zadanie wydawało się coraz prostsze. W ramach tego wpisu przedstawiam jeden z pierwszych kroków, czyli prawidłową implementacje Control Node.


Aby rozpocząć automatyzację sieci korzystając z Ansible, potrzebujemy tak zwanego Control Node – czyli wirtualną maszynę z zainstalowanym Ansible. Istnieje kilka możliwości uruchomienia tej funkcjonalności, m.in.:

  • Wykonując instalację systemową Ansibla – najbardziej podstawowa, lecz niepolecana
  • Wykorzystując wirtualne środowisko Pythona (virtualenv)
  • Korzystając z kontenera Dockera

Najlepszą, oraz najczęściej sugerowaną opcją jest ta ostatnia – Docker. Jednakże dla osób, które dopiero zaczynają z automatyzacją sieci, najlepsza będzie opcja druga, czyli wykorzystująca Wirtualne Środowisko Pythona (VirtualEnv). Poniżej przedstawiam proces implementacji tej metody:

 

 1. Wybór odpowiedniego systemu operacyjnego

W ramach posiadanego środowiska testowego tworzymy wirtualną maszynę z systemem operacyjnym. Niestety w momencie publikacji tego wpisu, projekt CentOS (na którym w pierwotnej wersji miał opierać się ten poradnik) został zamknięty, dlatego do stworzenia Control Node wykorzystamy dystrybucję Debian 10.

 

 2. Instalacja VirtualEnv

Po instalacji systemu, na początek zaktualizujmy repozytoria:

sudo apt update

Po aktualizacji instalujemy kluczowe elementy, które posłużą nam do budowy wirtualnego środowiska pythona:

sudo apt install build-essential libssl-dev libffi-dev python3-dev python3-pip

W kolejnym kroku przechodzimy do instalacji VirtualEnv

sudo pip3 install virtualenv

Korzystając z powyższych komend, zebraliśmy wszystkie podstawowe elementy, dzięki którym w kolejnym kroku będziemy w stanie stworzyć nasze wirtualne środowisko do obsługi Ansible

 

 3. Utworzenie VirtualEnv

Aby utworzyć wirtualne środowisko, skorzystamy z polecenia:

virtualenv [nazwa]

W moim przypadku będzie to:

virtualenv AnsibleTests

Po wykonaniu tego polecenia, zostanie utworzony nowy katalog o wprowadzonej przez nas nazwie. Aby aktywować i jednocześnie przejść do stworzonego przez nas wirtualnego środowiska, wykonujemy polecenie:

source AnsibleTests/bin/activate

Od teraz, dalsza część tego wpisu, a także wszystkie przyszłe operacje wykonywane w ramach szkolenia z Podstaw Ansible będą wykonywane w stworzonym przed chwilą wirtualnym środowisku. Jeżeli po zakończeniu naszej pracy będziemy chcieli z niego wyjść, skorzystamy z polecenia

deactivate

 

 4. Instalacja Ansible

Aby zainstalować Ansibla w stworzonym przez nas środowisku, wykonujemy polecenie

pip install ansible

Dodatkowo w ramach naszego darmowego szkolenia, będziemy łączyć się do urządzeń sieciowych – do tego celu będziemy potrzebować modułu Paramiko, który będzie odpowiadał za połączenie SSH pomiędzy Control Node – czyli maszyną, którą właśnie skonfigurowaliśmy – a urządzeniami sieciowymi.

Paramiko instalujemy wykonując polecenie

pip install paramiko


 5. Zagwarantowanie połączenia pomiędzy Control Node a Managed Hosts

Ostatnim krokiem jest oczywiście możliwość komunikacji pomiędzy Control Node a Managed Hosts, czyli naszymi urządzeniami sieciowymi.

W ramach darmowego szkolenia E-Mail, którego szczegóły możesz zobaczyć TUTAJ, połączenie do urządzeń sieciowych będziemy również weryfikować bezpośrednio z pozycji Ansible, dlatego jeżeli jeszcze Cię z nami nie ma, to zapraszam Cię do społeczności sieciowców 🙂

Subscribe To Our Newsletter

Get updates and learn from the best

Sprawdź również inne artykuły

Automatyzacja może być prosta, naucz się jej podstaw w dwa tygodnie

W czym mogę pomóc?

Zazwyczaj odpowiadam w ciągu kilku godzin

Podaj adres e-mail i ruszamy!

W ciągu najbliższych dwóch tygodni, co cztery dni otrzymasz jedną wiadomość e-mail w ramach szkolenia Podstawy Ansible dla Inżynierów Sieci, a po tym czasie całą masę innych wartościowych informacji.

Uzupełnienie powyższych pól stanowi zgodę na otrzymywanie na wskazany przez Ciebie adres e-mail informacji handlowych o nowościach, promocjach, produktach i usługach związanych z serwisem, a także wiele innych wartościowych materiałów. Więcej informacji na temat sposobu przetwarzania danych znajdziesz w Polityce Prywatności.