@Pipes trochę za bardzo poleciał. To co opisał to jest ta Ops część DevOpsów.
Dokładniej DevOps to nie jest "rola" czy "zawód" a zbiór praktyk, które muszą być wdrożone przez cały zespół i opierają się głównie na współpracy Developerów oraz SysOpsów (Operations + System Administrations). Cechy, które musi posiadać dobry team/projekt DevOps:
- Dobrze opracowany CI + CD tak, że każda zmiana jest automatycznie deployowana (niekoniecznie na produkcję) oraz łatwość deploymentu na produkcję.
- Infrastructure as a Code - czyli, że wszystkie maszyny, które są odpalone nie są stawiane "z palca" tylko jest gdzieś plik opisujący całość infrastruktury, który w razie potrzeby pozwala całość ubić i postawić na nowo od zera.
- Configuration Management - masz gdzieś pliki opisujące konfigurację każdej z maszyn, przez co każda maszyna może być traktowana jako bydło a nie jako zwierzątko (o tym za chwilkę)
- Monitoring infrastruktury - masz informacje nt. stanu serwerów oraz metryki jak się to zmieniało w czasie, dodatkowo zbierasz logi, które informują Cię nt. tego co się dzieje źle w twojej aplikacji
Co do pets vs cattle:
zwierzątko - masz jedno, nadajesz mu imię, dbasz, troszczysz się, głaszczesz, przycinasz ogonek w kształcie serduszka, a jak choruje, to biegasz do weterynarza
bydło - masz ok. 1024 krów, które biegają sobie na twoim gigantycznym rancho w TX, zaglądasz do nich raz w miesiącu, by policzyć i zobaczyć jak się ma, jak któreś padnie, to smutno, ale wliczasz to w koszty i zaraz pojawi się nowe, niemal identyczne