DevOps czy to dobra droga?

0

Dzień dobry, aktualnie jestem administratorem prostsze rzeczy raczej administracja, zarządzam kilka serwerami vps oraz lokalnie win serwer (użytkownicy mssql itp). Na vps administruje linuksami przeważnie ubuntu/debian, administruje serwerami www(apache, ls, ols) Serwer poczty, mysql, firewall, backupy, monitoring, docker(instalacja aplikacji, zarządzanie) itp. Generalnie instalacja, administracja, modyfikacja cms typu wordpress, prestashop. Znam podstawy php, bash oraz bardzo słabo ale coś tam w wolnym czasie próbuje z pythonem.

Ostatnio poczułem chęć rozwoju w kierunku bardzie rozszerzonej na DevOps. Moje pytanko już co nie co wiem o administracji linuksa firewall, zabezpieczanie itp. Co może mi się oczywiście przydać w tym kierunku devops tylko co jeszcze potrzebuje? Ile doświadczenia i jak z programowaniem?

Ostatnio oglądam kursy na youtube odnośnie django oraz sprint boot pytanie w którym kierunku bardziej iść? Jak programować póki co nie potrafię tylko podstawy pythona? Jest sens w ogóle zaczynać od frameworka bez dużej wiedzy np. pythona w przypadku django?

Odnośnie narzędzie w wolnym czasie tez staram się poznać narzędzia o co w nich chodzi jak zainstalować obsługiwać. Odświeżam ansible(mało używam kilka maszyn daje rade bez ale jako devops w przyszłości narzędzie bardzo istotne)?

Dockera już trochę znam do tego teraz staram sie trochę pouczyć kubernetesa na minicube?

Oczywiście staram się tez poznać dodatkowe narzędzia typu jenkins, tomcat, git.

Co jeszcze warto poznać? Jest to w ogóle dobra droga? Jak z doświadczeniem najlepiej człowiek się uczy gdy już pracuje w danym zawodzie:) Lecz no ja póki co tylko mogę sobie tak teoretycznie uczyć/bawić bo nawet nikt zapewne nie przyjemnie od razu do pracy beż wystraczającej wiedzy a zazwyczaj jak przeglądam ogłoszenia to z doświadczeniem najlepiej potwierdzonym. A wy jakie macie z tym doświadczenie jak najlepiej wejść w świat na stanowisko DevOpsa?:)

3

DevOps to dobra droga, ale nie zawsze łatwa. Dużo różnych narzędzi, zabawa z legacy aplikacjami i często legacy infrastrukturą, tak zwane babranie się w gównie, przeglądanie logów, klejenie konfiguracji w Powershellu czy Bashu. Pisanie playbooków w Ansible, grzebanie w YAML-ach i różnego rodzaju plikach konfiguracyjnych często bez dokumentacji.

Ale jeżeli myśl o takich rzeczach cię nie demotywuje to w twoim poście zabrakło chmury i Terraforma. Pomijając konteneryzację i K8S to chmura i TF obecnie must have dla devopsa. Więc od tego bym zaczął i szukał projektów opartych o chmurę/migrujących do chmury. Taki klasyczny use case to masz aplikacje w repo na GH i po pull requeście odpalane jest CI/CD które buduje aplikację, tworzy środowisko testowe w chmurze, infrastrukturę czyli wymagane usługi chmurowe, zapewnia konfigurację, robi deployment i na końcu odpala testy E2E. Po wszystkim wysyłany jest raport i środowisko jest niszczone, żeby nie generować kosztów. Oczywiście to tylko przykład. W zależności od firmy/projektu poszczególne kroki będą się różnić.

Co do programowania w klasycznym rozumieniu czyli pisanie aplikacji, to na większości stanowisk devopsowych się nie przyda. Bardziej umiejętność pisania skryptów automatyzujących w Bashu czy Powershellu. Na bardziej prestiżowych projektowach to pojawia się Golang i Python, ale to trzeba dobrze trafić.

0

Hmm dlatego też postanowiłem się równolegle uczyć programowania jak nie wyjdzie z devops;) Pytanko co lepiej sprint czy django? I czy jest sen zaczynać od frameworka bez znajomości jawy/pythona?

1

@dsxsoft jako DevOps nie potrzebujesz znać Django/Flaska. W Pythonie raczej piszemy skrypty automatyzujące zadania, które nie da się rozwiązać ani w Ansiblu, ani Terraformie. Ewentualnie możesz w Pythonie kodzić swój moduł dla Ansible, ale raczej nikt tego nie robi, bo nie ma na to czasu.

Narzędzia używane w mojej pracy to: Ansible, Molecule, Docker/Podman, Kubernetes, administracja Linuxów (w tym sieci), Jenkins, Terraform, Git. Więc w dobrym kierunki idziesz.

Jeżeli masz doświadczenie w administracji Linuxów, może warto by pójść w kierunku Cloud Engineer? Skupiasz się na danym Cloudzie (AWS/Azure/GCP) + Terraform + Docker/Kubernetes do automatyzacji i możesz wykorzystywać dużo swojej wiedzy z poprzedniej pracy + masz dostęp do masy interesujących projektów.

1

DevOps to jedyna słuszna droga, tworzenie nowoczesnego oprogramowania bez tego podejścia jest właściwie niemożliwe albo przynajmniej znacznie utrudnione, co widać po firmach, które bronią się przed tym rękami i nogami tworząc np. oddzielne zespoły programistów i wdrożeniowców.
No chyba, że ktoś chce soft na desktopy tworzyć, to mu się devops nie przyda.

2
markone_dev napisał(a):

DevOps to dobra droga, ale nie zawsze łatwa.

Ale jeżeli myśl o takich rzeczach cię nie demotywuje to w twoim poście zabrakło chmury i Terraforma.

Terraform to już CloudOps. Chociaż w niektórych firmach to te same osoby się zajmują tworzeniem infry jak i samą implementacją CICD.
Trzeba więc pamiętać, że DevOps nie ma wyraźnej granicy definicji.

somekind napisał(a):

DevOps to jedyna słuszna droga, tworzenie nowoczesnego oprogramowania bez tego podejścia jest właściwie niemożliwe albo przynajmniej znacznie utrudnione, co widać po firmach, które bronią się przed tym rękami i nogami

No jest w ogóle jakiś opór przed DevOpsowaniem. Nie rozumiem czemu ludzie się przed tym bronią jak mogą. Chyba w poprzednim odcinku Patoarchitektów o tym była mowa nawet. Zwłaszcza developerzy są przeciwnikami.

Z drugiej strony to fakt, że raczej trzeba to lubić - takie babranie się w debugowaniu, czytaniu logów, jak coś nie działa na produkcji to wiadomo, klient chce żeby było naprawione "już", więc bywa, że jest ciśnienie. Praca mało powtarzalna - z jednej strony to plus, z drugiej niełatwa w planowaniu.

1 użytkowników online, w tym zalogowanych: 0, gości: 1