Filozofia mea este Sa lasam masinile sa lucreze!

Am crescut in era in care am vazut cum lampile (tuburi electronice) s-au transformat in tranzistori, cum acestia din urma au devenit porti logice si cum milioane de porti logice sunt ingramadite pe un fir de nisip, toate pentru a da sens sistemului de calcul binar. Am ajuns sa concepem protocoale de comunicare din ce in ce mai sofisticate, platforme, sisteme stabile si rapide, fara de care nu ne mai putem inchipui viata de zi cu zi. Am ajuns sa tratam un “computer” ca fiind doar niste fisiere binare si reteaua noastra de “bloc” sa dispara, transformandu-se doar in cateva linii de cod scris.
 
Platformele Cloud au fost lansate si sunt inbunatatite intr-un ritm exponential, oferind zilnic noi functionalitati. Zilnic apar companii cu potential urias si multe ajung la o cifra de afaceri impresionanta intr-o perioada relativ scurta. Flexibilitatea si estimarea costurilor au un rol important pe care conceptele de cloud le pot sustine foarte bine. Totusi, inca putini sunt aceia care adopta aceste bijuterii tehnologice si inca multi cred ca un administrator de sistem trebuie sa “surubareasca” la retea zile in sir.
 
Desi aparent solutiile cloud par scumpe, avantajul definitoriu este ca poti sa cumperi cat consumi, poti sa ceri cat ai nevoie, pretul fiind proportional cu nevoile la un momnet dat. Optimizarea acestor valori reduce semnificativ costurile, exploatarea resurselor fiind mult mai eficienta.
 
Cateva idei esentiale, acum ca va aflati la blocstart:
 
Furnizorii de Servicii Cloud, si nu numai, ofera si expun functionalitati printr-un “limbaj” prin care, de exemplu, poti solicita o resursa de tip compute, aloca un IP, publica o regula de securitare, crea o retea, si asa mai departe. Acest “limbaj” este de fapt o componenta API (application programming interface) cu ajutorul careia platforma e instruita si monitorizata sa puna la dispozitia utilizatorului o resursa. Aceste API-uri au facut posibila descrierea infrastructurii (cum ar fi o retea de calculatoare) in cateva linii de cod pe care trebuie doar sa le rulam. Mecanismele de control si procedurile sofisticate asigura executarea codului in topologia definita, iar rezultatul va fi mereu acelasi. Mai mult, se poate defini de la distanta o topologie similara in alt colt de lume, fara deplasarea la fata locului.
 
Pentru abstractizare si o implementare optima, au aparut cateva softuri ajutatoare care implementaza aceste API-uri, facilitand uniformizarea implementarii. Aici putem vorbi de Ansible, Puppet, Chef, Terraform, instrumente care sunt in continua dezvoltare, rafinare si specializare, cu o comunitate impresionanta care implementeaza eficient noi functionalitati.  Toate aceste aspecte au dus la aparitia principiilor de DevOps.
 
Aparitia DevOps nu este neaparat ceva nou. A luat amploare in companiile de dezvoltare software, la cei care au inteles ca un produs finit are valoare doar daca se poate prezenta in mod viabil catre beneficiar. Furnizarea resurselor in mod programatic si automatizarea acestora duc la reducerea timpului dintre productie si prezentare, crescand ciclul in care elemente noi dezvoltate se pot prezenta beneficiarului. Cu ajutorul softurilor de orchestrare, incluzand suportul pentru infrastructure as code, furnizarea resurselor rapid este un element cheie. Publicarea modificarilor aduse se poate reduce la cateva minute, iar feedback-ul oferit de beneficiar poate fi explorat la maxim.
 
Totusi, putine companii reusesc sa adopte aceste concepte; se desprind cu dificultate din rutinele zilnice deja implementate, unii din comoditate sau teama de nou, altii “subjugati” de “dinozaurii decizionali”.
 
In ceea ce ma priveste, sunt adeptul acestor solutii moderne. Sunt convins ca automatizarea proceselor este esentiala pentru munca de zi cu zi!