Aspekty DevOps sa týkajú rôznych oblastí vývoja a prevádzky softvéru, ktoré sa zlepšujú prostredníctvom zavádzania DevOps metodiky – DevOps kultúry. Uvedieme si aspekty, ktoré stoja za myšlienkou efektívneho vytvárania, testovania a nasadzovania softvéru a zlepšenou komunikáciou medzi vývojármi a technickými oddeleniami.
Ľudia sú pre DevOps jedným z kľúčových faktorov. Ako už bolo spomínané DevOps zahŕňa vývojárov, testerov, prevádzkový tím, poprípade iné zúčastnené tímy. Tieto tímy nie sú naďalej „izolované“ ale vytvárajú sa tak podmienky pre ich vyššiu vzájomnú komunikáciu a spoluprácu medzi nimi počas celého životného cyklu vývoja softvéru, poprípade zlúčenie do jedného tímu. Takto zostavený tím charakterizuje vyššia informovanosť, vzájomná dôvera, silné zameranie na zákazníka, schopnosť učiť sa zo spoločných skúseností a spoznávať nové oblasti – budovanie multidisciplinárnych zručností.
Procesy definujú čo a ako sa má urobiť, tak aby bolo možné spoľahlivo zabezpečiť celý životný cyklus vývoja softvéru od začiatku po koniec. Jasne definované procesy podporujú ciele DevOps – dodávať softvér rýchlejšie a kvalitnejšie. Je to možné dosiahnuť vyváženým využívaním existujúcich nástrojov, procesov a metodík.
DevOps tímy využívajú nástroje, ktorých v súčasnosti existuje značné množstvo a stále pribúdajú, pre automatizáciu a akceleráciu procesov, čo napomáha zvyšovaniu spoľahlivosti vývojového procesu. Dôležité však je aby tieto nástroje boli prepojené resp. spolupracovali (Tool Chain) pri dosahovaní cieľov DevOps prístupu. Základnými nástrojmi sú nástroje podporujúce kontinuálnu integráciu a kontinuálne nasadzovanie (CI/CD), infraštruktúru ako kód (Infrastructure as Code – IaC), automatizáciu a spoluprácu.
Postupy DevOps sú v modernom vývoji softvéru čoraz dôležitejšie, pretože umožňujú organizáciám dodávať softvér rýchlejšie, spoľahlivejšie a bezpečnejšie, čo v konečnom dôsledku zvyšuje ich konkurencieschopnosť na trhu.
Andrej Rábek
Autor
“DevOps? neviem o čom hovoríš. Môžem vytvoriť vašu infraštruktúru v AWS, zautomatizovať ju pomocou Terraformu, ktorý beží v pipeline GitLabu, vytvoriť Helm diagramy pre vaše aplikácie, nasadiť to v spolupráci s Helmfile samozrejme opäť z pipelines, a mnoho ďalšieho.”