DevOps

metodika vývoje software

DevOps je složenina anglických výrazů Development a (IT) Operations. Je to přístup k vývoji software, který zdůrazňuje komunikaci, spolupráci a integraci mezi vývojářem a odborníky na informační technologie z provozu.[1][2] DevOps je reakcí na vzájemnou závislost vývoje softwaru a IT provozu. Jeho cílem je pomoci organizaci rychle produkovat softwarové aplikace a služby.[3][4][5][6][7]

Jednoduché procesy jsou v DevOps jasně popsány. Cílem je maximalizovat předvídatelnost, účinnost, bezpečnost a udržovatelnost provozních procesů. Tento cíl je velmi často podporován automatizací.

DevOps integrace se zaměřuje na dodání produktu, testování kvality, rozvoj produktu a vydávání oprav a nových verzí s cílem zvýšit bezpečnost a spolehlivost, zrychlit vývoj a nasazovací cykly. Hodně nápadů (a lidí) zapojených do DevOps se tam dostalo z oblasti podnikového řízení systémů a agilního vývoje software.[8]

Ilustrace ukazuje DevOps jako průsečík vývoje softwarového inženýrství, provozu technologií a zajištění kvality (QA)

DevOps podporuje release management firem, a to standardizací vývojových prostředí. Je zde podporované sledování událostí stejně jako je vyřešeno dokumentované řízení procesů a reportování problémů na různých úrovních. Firmy, které mají problémy s automatizací nových verzí, si obvykle stávající tvorbu verzí ponechají, ale chtějí ji pružněji řídit – aniž by musely zadávat vše ručně z příkazového řádku. V ideálním případě by tyto automatické procesy měly být spouštěny neprovozními zaměstnanci v konkrétních neprodukčních prostředích. Vývojáři dostanou větší kontrolu nad svým prostředím, což vede k aplikačně chápanému pojetí infrastruktury.

Příklady komerčního využití

editovat

Společnosti s velmi častými releasy se mohou chtít DevOps přizpůsobit.

  • Flickr vyvinul přístup typu DevOps podporující obchodní požadavek deseti nasazení za den.[9] Toto nasazování v denním cyklu bude mnohem častější v organizacích, které produkují víceuživatelské nebo multifunkční aplikace. Toto se označuje jako continuous delivery[10][11] a je často spojováno se zaváděním Lean metodiky.[12]
  • Samotná IBM šikovně prodává své produkty a řešení přes DevOps Assessment a rozšířila DevOps na celý životní cyklus. Z hlediska komunikace rozlišuje oblasti řízení (Steer), vývoje (Develop / Test), nasazení (Deploy) a provozu (Operate).[13]

Historie

editovat

Metodika DevOps byla propagována prostřednictvím řady DevOps dnů již od roku 2009 v Belgii.[14] Poté se konaly DevOps Days conference v Indii, USA, Brazílii, Austrálii, Německu a Švédsku.[15]

Dříve, pokud byly softwarové metodiky, jako např. agilní vývoj software, přijaty tradiční organizací, neměly tyto metodiky na integraci oddělení Vývoje, Provozu IT a Quality Assurance valný vliv. DevOps přístup podporuje komunikaci a spolupráci mezi odděleními.[16]

Zavádění DevOps

editovat

Přijetí DevOps ovlivňují tyto faktory:

  1. Použití metodiky vývoje software,
  2. Požadavek zúčastněných stran na zvýšení počtu produkčních releasů,
  3. Široká dostupnost virtualizovaných prostředí a cloudů[17] a cloud infrastructure ze strany interních a externích poskytovatelů,
  4. Masové využití automatizace datových center[18] a nástrojů konfiguračního řízení.

Reference

editovat
  1. PANT, Rajiv. Organizing a Digital Technology Department of Medium Size in a Media Company [online]. 2009-03-17. Dostupné online. 
  2. LOUKIDES, Mike. What is DevOps? [online]. 2012-06-07. Dostupné online. 
  3. SAMOVSKIY, Dmitriy. The Rise of DevOps [online]. 2010-03-02 [cit. 2014-08-05]. Dostupné v archivu pořízeném dne 2011-01-07. 
  4. EDWARDS, Damon. What is DevOps? [online]. [cit. 2014-08-05]. Dostupné v archivu pořízeném dne 2012-09-09. 
  5. VAMBENEPE, William. Steve Ballmer gets Cloud [online]. Dostupné online. 
  6. LYMAN, Jay. DevOps mixing dev, ops, agile, cloud, open source and business [online]. [cit. 2014-08-05]. Dostupné v archivu pořízeném dne 14-09-2015. 
  7. DEBOIS, Patrick. Devops: A Software Revolution in the Making? [online]. Dostupné online. 
  8. NASRAT, Paul. Agile Infrastructure [online]. InfoQ [cit. 2011-03-31]. Dostupné online. 
  9. 10+ Deploys Per Day: Dev and Ops Cooperation at Flickr [online]. Dostupné online. 
  10. SAM SIG: Applied Lean Startup Ideas: Continuous Deployment at kaChing [online]. [cit. 2014-08-05]. Dostupné v archivu pořízeném dne 2012-10-20. 
  11. HUMBLE, Jez. Why Enterprises Must Adopt Devops to Enable Continuous Delivery [online]. Dostupné online. 
  12. Applied Lean Startup Ideas: Continuous Deployment at kaChing [online]. Dostupné online. 
  13. DevOps, Continuous delivery of software-driven innovation [online]. Dostupné online. 
  14. DEBOIS, Patrick. DevOps Days Ghent [online]. DevopsDays, 2009 [cit. 2011-03-31]. Dostupné online. 
  15. DEBOIS, Patrick. DevOps Days [online]. DevOps Days [cit. 2011-03-31]. Dostupné online. 
  16. TURNBULL, James. What DevOps means to me... [online]. Kartar, Feb 2010 [cit. 2014-08-05]. Dostupné v archivu pořízeném dne 30-12-2010. 
  17. Virtual Infrastructure products: features comparison [online]. [cit. 2014-08-05]. Dostupné v archivu pořízeném dne 2011-07-21. 
  18. ELLARD, Jennifer. Bringing Order to Chaos through Data Center Automation [online]. SourceMedia [cit. 2014-08-05]. Dostupné v archivu pořízeném dne 11-06-2010. 

Literatura

editovat
  • HÜTTERMANN, Michael. DevOps for Developers. [s.l.]: Apress, 2012. ISBN 978-1-430-24569-8. 
  • The DevOps Handbook: How to Create World-Class Agility, Reliability, and Security in Technology Organizations. [s.l.]: IT Revolution Press, 2016. ISBN 978-1942788003. 

Externí odkazy

editovat