GNU/Linux >> Znalost Linux >  >> Linux

Rethinking DevOps:O čem to všechno je?

Od té doby, co jsem začal pracovat s různými webovými aplikacemi v Linux Handbook a High On Cloud, mě termín DevOps mnohokrát upoutal, protože to je něco, co konkrétně pokrýváme v Linux Handbook.

Probrali jsme návody na mnoho nástrojů souvisejících s DevOps, ale nikdy jsme se skutečně nepokoušeli prozkoumat skutečný koncept do hloubky. Protože Linux Handbook je věnován Linuxovým serverům , musíme také prozkoumat jejich důležitou roli v oblasti DevOps.

Ale než tak učiníme, je nezbytné pochopit, co DevOps skutečně je. DevOps je extrémně populární módní slovo a na webu najdete několik jeho definic. Ale na základě svých vlastních zkušeností jsem od nynějška dospěl k následující konečné definici a myšlenkám. Toto je pokus přehodnotit stávající normy DevOps a přehodnotit je ve formě nového modelu, který zde navrhuji.

Co je DevOps?

DevOps je nepřetržitý proces zjednodušování, který udržuje křehkou rovnováhu mezi funkčností, použitelností a bezpečností aplikace z hlediska vývoje elopment a Op eraces .

Jak to zajistit?

Zajištění toho, aby se aplikace vyvíjela efektivně a zároveň byla funkční, je pro DevOps Engineers neustálou výzvou. K tomu je třeba neustále monitorovat nejzákladnější součásti DevOps.

Životní cyklus vývoje aplikací (ADLC)

Vytvoření nové aplikace? Začněte právě zde!

Životní cyklus vývoje aplikací je základní motivací vývoje jakékoli aplikace. Pokud není vývojový proces pečlivě a důsledně sledován, nemůžete si být absolutně jisti jeho bezchybným vývojem. Aplikace bude vždy pod ADLC, dokud nebude připravena k produkci.

ADLC je základní princip softwarového inženýrství, který se skládá ze šesti základních fází. Vývoj aplikace zahrnuje následující kroky:

  1. Koncepční plán :Formování základní myšlenky aplikace.
  2. Programování :V tomto okamžiku je aplikace vytvořena a vyvinuta.
  3. Dokumentace :Vynikající aplikace je k ničemu bez pečlivé (člověkem čitelné) dokumentace.
  4. Testování pro zajištění kvality :Ujistěte se, že je konečný produkt funkční, použitelný a bezpečný.
  5. Ladění :Chyby hlášené během testování jsou opraveny.
  6. Vydání pro vývoj :První verze aplikace je vydána.

Dokud a dokud nebude k dispozici stabilní vydání, bude tento cyklus nadále existovat. Jakmile je software vydán jako stabilní verze připravená k produkci, již nespadá pod ADLC. Nakonec spadá do životního cyklu vývoje systému (SDLC).

Životní cyklus vývoje systému (SDLC)

Část naší komunity DevOps by mohla říci, že ADLC i SDLC jsou jedno a totéž. Ale ve scénáři reálného světa vidím, že ADLC a SDLC jsou docela odlišné.

Životní cyklus vývoje systému je základní motivací jak za vývojem, tak za provozem aplikace. Zahrnuje neustálý vývoj aplikace po jejím prvním stabilním vydání a zajišťuje její nepřetržitou provozuschopnost.

  1. Koncepční plán :Přehodnocení hlavní myšlenky aplikace.
  2. Programování :V tomto okamžiku se aplikace dále vyvíjí.
  3. Dokumentace :Průběžná aktualizace lidsky čitelné dokumentace.
  4. Testování kvality nových verzí :Ujistěte se, že nový koncový produkt je funkční, použitelný a bezpečný.
  5. Ladění :Chyby hlášené během testování jsou opraveny.
  6. Vydání pro vývoj :U nové aplikace (podle verze nebo jako aplikace samotná) se v této fázi vývojová verze vyvine do své první stabilní verze.
  7. Stabilní vydání :Nejnovější stabilní verze je vydána jako produkt s opravami souvisejícími s chybami/zabezpečením spolu s novými funkcemi.
  8. Nasazení :Stabilní produkt je nasazen na server(ech).
  9. Údržba a monitorování :Konzistentní a pravidelné monitorování serverů a aplikací, které na nich běží.

Otevřený model poháněný komunitou bude mít vždy nejhladší údržbu. Poslední krok v cyklu je skutečně dosažitelný pouze s modelem Open Source. Je to největší rozhodující faktor z hlediska vývoje jakékoli aplikace.

Aplikace, která ještě nemá stabilní vydání, nemůže být považována za dokončenou. Jakmile je aplikace kompletně sestavena, ADLC se vyvine v SDLC. Proč?

  • ADLC je čistě Vývoj elopment Model
  • SDLC je oba Vývoj elopment a Op eraces Model

Už chápeš můj názor? Pod ADLC není aplikace připravena k produkci, a proto by byla stále ve vývoji barebone. Proto to nemůžeme nazývat DevOps. Teprve když vyjde první stabilní vydání, vyvine se z něj SDLC, což je DevOps, protože aplikace připravená k produkci bude poté nepřetržitě fungovat.

Jak je zřejmé ze dvou zkratek a výše uvedeného diagramu, aplikace se velmi liší od celého systému. Žádost je pouze součástí kompletního systémového procesu. To je to, co odlišuje SDLC od ADLC. ADLC je tedy ve skutečnosti podmnožinou SDLC.

SDLC musíme jako komunita neustále směřovat a mít na paměti křehkou rovnováhu mezi funkčností, použitelností a zabezpečením.

Představujeme nový trojúhelník DevOps

Tento diagram není nikdy stejný, protože SDLC není nikdy stacionární. Právě SDLC se neustále otáčí v rámci trojúhelníku komunitou na základě neustálé zpětné vazby od vývojářů, testerů a uživatelů.

Takový proces pivotování se neustále mění podle požadavků nasazované aplikace. Tento neustále se měnící model v reálném světě je procesem DevOps.

Kde SDLC leží v trojúhelníku, se bude vždy lišit od aplikace k aplikaci. Otočené umístění ve skutečnosti závisí na povaze nasazované aplikace, zatímco je vyvíjena s bedlivým dohledem:

Funkčnost :Primární funkce aplikace. Například možnost posílat zprávy přes Rocket.Chat.

Použitelnost :Snadné použití aplikace. Například, jak pohodlně můžete posílat zprávy přes Rocket.Chat.

Zabezpečení :Stupeň zabezpečení aplikace. Například oprava chyby, která řeší zranitelnost Rocket.Chat, jako je tato.

Různorodá komunita, která podporuje aplikace s otevřeným zdrojovým kódem, musí vždy udržovat křehkou rovnováhu mezi funkčností, použitelností a zabezpečením.

Ale jak vlastně?

Pokora na pracovišti:Maximální přesnost při otáčení

Na konci dne jsou vývojáři, uživatelé a testeři všichni lidé. Ať už je to místní nebo virtuální, kultury a pracoviště DevOps musí přijmout jednoduchou myšlenku soucitu. Pracoviště, které praktikuje laskavost mezi spolupracovníky, musí zvýšit produktivitu ADLC i SDLC!

Není to jen o webových aplikacích, ale také o lidech. Jsou to právě oni, kdo je neustále vytváří, nasazuje a udržuje. O tom je komunita, a proto je DevOps také kulturou. Kultura DevOps zahrnuje správu nejen webové aplikace, ale také lidí, kteří z ní dělají realitu.

Díky přístupu Open Source je celý tento proces mnohem dosažitelnější než proprietární. To je to, co jsem cítil při práci s tímto kolektivním systémem lidí, postupů a technologií .

Těším se, že budu i nadále sdílet své myšlenky v tomto žánru prostřednictvím řady článků, které budu následovat. Cítím, že ať už jde o malý, střední nebo velký podnik, DevOps je použitelný všude, jen ne ve formě personifikovaných modelů.

To je jen malá část toho, co chci prostřednictvím této série prozkoumat. Podělte se o své myšlenky v sekci komentářů níže. Děkujeme, že jste navštívili Linux Handbook!


Linux
  1. Co je dobré vědět o serveru Debi a Volume Linux

  2. Flex vývoj na Linuxu, jaké je dobré bezplatné prostředí?

  3. Co je na tomto kódu C zranitelné?

  1. Co jste možná nevěděli o sudo

  2. Jaký je účinek CTRL + Z na aplikaci unix\Linux

  3. Příkazy k učení o neznámém systému

  1. Co je VPS hosting? Vše, co potřebujete vědět o virtuálních privátních serverech

  2. Co potřebují správci systému vědět o používání Bash

  3. Jaký proces používá celý můj disk IO