Strona 1 z 1

Ansible vs RestAPI

: 01 kwie 2020, 18:05
autor: qligowski
Hej,

Zalozmy ze do urzedzania jakiegos vendora sa wszystkie natywne moduly Ansible ale takze wystawione API. Co w takim razie wybrac, stabilnosc i zintegorwany stack Ansible czy API z JSON + np Python?

Re: Ansible vs RestAPI

: 01 kwie 2020, 19:17
autor: xal
Ansible jest idempotentny. Pisząc skrypt w Pythonie (API to tylko dodatek), musisz dbać o idempotentność sam.

Re: Ansible vs RestAPI

: 02 kwie 2020, 09:46
autor: qligowski
Dzieki,nie chodzi mi to o sama logike skryptu (idempotentnosc tez mozna latwo osiagnac Pythonem), ale sama praktyczna korzysc uzywania natywnego API. Uzywam Ansible od roku i np taki Nexus albo ASA maja zarowno moduly Ansible i natywnie wystawione REST API, czy jest jakies powod dla ktorego mialbym uzywac ich Rest API zamiast np Ansible? Np. Azure konfigurue tylko wylacznie przez ich rest API i pisze proste aplikacje jak cos potrzebuje (np postaw BGP i VGW) no i zwrocone dane sa ustruktyrozowane czego nie mozna powiedziec o Ansible.
Pozdro!

Re: Ansible vs RestAPI

: 02 kwie 2020, 11:04
autor: peper
qligowski pisze: 02 kwie 2020, 09:46 Dzieki,nie chodzi mi to o sama logike skryptu (idempotentnosc tez mozna latwo osiagnac Pythonem), ale sama praktyczna korzysc uzywania natywnego API. Uzywam Ansible od roku i np taki Nexus albo ASA maja zarowno moduly Ansible i natywnie wystawione REST API, czy jest jakies powod dla ktorego mialbym uzywac ich Rest API zamiast np Ansible? Np. Azure konfigurue tylko wylacznie przez ich rest API i pisze proste aplikacje jak cos potrzebuje (np postaw BGP i VGW) no i zwrocone dane sa ustruktyrozowane czego nie mozna powiedziec o Ansible.
Pozdro!
API API API API i tylko API jeżeli jest dostępne. w REST API przeniosisz odpowiedzialność wykonania poprawnie operacji na vendora, wywołujesz metodę, podajesz parametry (walidujesz je odpowiednio też sam) i czekasz na wynik. Jeżeli robiłbyś to samo poprzez moduł, który łączy się po SSH i wykonuje komendy CLI następnie pasując wynik to wystarczy, że zmieni się jedna spacja w wyniku polecenia CLI i już cały moduł nie działa poprawnie a to prosta droga do błędów. Pomijam takie aspekty bezpieczeństwa, jak to, że przy API nie musisz mieć dostępu do CLI urządzenia chociażby. Zawsze korzystaj z API, moduły parsujące wynik z CLI to powinna być ostateczność.

Nie każdy moduł w Ansible działa po REST API, zawsze musisz sprawdzić w dokumentacji lub kodzie.

Re: Ansible vs RestAPI

: 02 kwie 2020, 11:15
autor: qligowski
Dzieki, chyba nawet wiekszosc modulow w Ansible do urzadzen sieciowych Cisco idzie po SSH? Wlasnie dlatego korzystam albo z Ansible (ktory jest na biezaco aktualizowany i wspomagany) albo API (np chmurki czy ostatnio nawet Sophos XG) anizeli pisac wlasny screen scraper w Pythonie (np pyexpect). Pytanie pojawia sie co wybrac kiedy vendor daje natywny REST API i jest tez do tego natywny modul Ansible. Pozdro!

Re: Ansible vs RestAPI

: 02 kwie 2020, 15:01
autor: peper
qligowski pisze: 02 kwie 2020, 11:15 Dzieki, chyba nawet wiekszosc modulow w Ansible do urzadzen sieciowych Cisco idzie po SSH? Wlasnie dlatego korzystam albo z Ansible (ktory jest na biezaco aktualizowany i wspomagany) albo API (np chmurki czy ostatnio nawet Sophos XG) anizeli pisac wlasny screen scraper w Pythonie (np pyexpect). Pytanie pojawia sie co wybrac kiedy vendor daje natywny REST API i jest tez do tego natywny modul Ansible. Pozdro!
A co rozumiesz przez "natywny moduł w Ansible"?

W Ansible zależy od modułu, zauważ, że proivider dla modułów nxos_* pozwala na łączenie przez API i przez SSH i to ty musisz wybrać metodę.

Re: Ansible vs RestAPI

: 02 kwie 2020, 17:47
autor: qligowski
A co rozumiesz przez "natywny moduł w Ansible"?
Zle sie wyrazilem, bardziej chodzilo mi o officjalny.

Re: Ansible vs RestAPI

: 02 kwie 2020, 20:10
autor: peper
qligowski pisze: 02 kwie 2020, 17:47
A co rozumiesz przez "natywny moduł w Ansible"?
Zle sie wyrazilem, bardziej chodzilo mi o officjalny.
Oficjalne, czyli wspierane przez RedHat-a to jakieś 10% lub mniej. Reszta to community. Zrestą od 2.10 będą bardzo duże zmiany, o których jako jeden developerów i opiekun kilku modułów, pisałem TUTAJ.

Re: Ansible vs RestAPI

: 02 kwie 2020, 20:27
autor: qligowski
Impressive!

Re: Ansible vs RestAPI

: 02 kwie 2020, 22:47
autor: peper
Ansible czy ja? xD

Re: Ansible vs RestAPI

: 03 kwie 2020, 09:58
autor: qligowski
Bycie devem i sieciowcem w jednym czasie wymaga mega cierpliwosci,ciekawe z czym wolisz bardziej sie uzerac - z licencjonowaniem Cisco czy IDE hahah :D

Re: Ansible vs RestAPI

: 03 kwie 2020, 11:53
autor: peper
qligowski pisze: 03 kwie 2020, 09:58 Bycie devem i sieciowcem w jednym czasie wymaga mega cierpliwosci,ciekawe z czym wolisz bardziej sie uzerac - z licencjonowaniem Cisco czy IDE hahah :D
Haha, developerka to głównie jako relaks, programistą chciałem być dopóki nie poszedłem na studia. Potem było 10 lat przerwy i teraz powrót ale bardziej hobbystycznie, choć zawodowo też się zdarza. :)