Ṣiṣakoso Idarudapọ: Ṣiṣeto awọn nkan ni ibere pẹlu iranlọwọ ti maapu imọ-ẹrọ kan

Ṣiṣakoso Idarudapọ: Ṣiṣeto awọn nkan ni ibere pẹlu iranlọwọ ti maapu imọ-ẹrọ kan

Aworan: Imukuro

Bawo ni gbogbo eniyan! A jẹ awọn onimọ-ẹrọ adaṣe lati ile-iṣẹ naa Awọn Imọ-ẹrọ Rere ati pe a ṣe atilẹyin idagbasoke ti awọn ọja ile-iṣẹ: a ṣe atilẹyin fun gbogbo opo gigun ti epo lati ifaramọ ti laini koodu nipasẹ awọn olupilẹṣẹ si titẹjade awọn ọja ti pari ati awọn iwe-aṣẹ lori awọn olupin imudojuiwọn. Ni aiṣedeede, a pe wa ni awọn onimọ-ẹrọ DevOps. Ninu nkan yii, a fẹ lati sọrọ nipa awọn ipele imọ-ẹrọ ti ilana iṣelọpọ sọfitiwia, bawo ni a ṣe rii wọn ati bii a ṣe pin wọn.

Lati inu ohun elo naa iwọ yoo kọ ẹkọ nipa idiju ti iṣakojọpọ idagbasoke ọja-ọja pupọ, nipa kini maapu imọ-ẹrọ jẹ ati bii o ṣe ṣe iranlọwọ lati ṣatunṣe ati ṣe atunṣe awọn solusan, kini awọn ipele akọkọ ati awọn igbesẹ ti ilana idagbasoke, bawo ni awọn agbegbe ti ojuse laarin DevOps ati awọn ẹgbẹ ni ile-iṣẹ wa.

Nipa Idarudapọ ati DevOps

Ni ṣoki, imọran ti DevOps pẹlu awọn irinṣẹ idagbasoke ati awọn iṣẹ, bii awọn ilana ati awọn iṣe ti o dara julọ fun lilo wọn. Jẹ ki a ṣe iyasọtọ agbaye idi lati imuse ti awọn ero DevOps ni ile-iṣẹ wa: eyi jẹ idinku deede ni iye owo ti iṣelọpọ ati itọju awọn ọja ni awọn ofin titobi (awọn wakati-wakati tabi awọn ẹrọ ẹrọ, Sipiyu, Ramu, Disk, bbl). Ọna to rọọrun ati ti o han julọ lati dinku iye owo idagbasoke gbogbogbo ni ipele ti gbogbo ile-iṣẹ jẹ dindinku awọn iye owo ti a ṣe aṣoju awọn iṣẹ-ṣiṣe ni tẹlentẹle ni gbogbo awọn ipele ti iṣelọpọ. Ṣugbọn kini awọn ipele wọnyi, bawo ni a ṣe le ya wọn kuro ninu ilana gbogbogbo, awọn igbesẹ wo ni wọn jẹ?

Nigbati ile-iṣẹ kan ba ndagba ọja kan, ohun gbogbo jẹ diẹ sii tabi kere si ko o: maapu ọna opopona ti o wọpọ ati ero idagbasoke wa nigbagbogbo. Ṣugbọn kini lati ṣe nigbati laini ọja ba gbooro ati awọn ọja diẹ sii wa? Ni wiwo akọkọ, wọn ni awọn ilana ti o jọra ati awọn laini apejọ, ati ere “wa awọn iyatọ X” ni awọn akọọlẹ ati awọn iwe afọwọkọ bẹrẹ. Ṣugbọn kini ti o ba jẹ pe awọn iṣẹ akanṣe 5+ tẹlẹ wa ni idagbasoke ti nṣiṣe lọwọ ati atilẹyin fun awọn ẹya pupọ ti o dagbasoke ni ọpọlọpọ ọdun ni a nilo? Ṣe a fẹ lati tun lo nọmba ti o pọju ti awọn solusan ni awọn opo gigun ti ọja tabi a ti ṣetan lati na owo lori idagbasoke alailẹgbẹ fun ọkọọkan?

Bii o ṣe le wa iwọntunwọnsi laarin iyasọtọ ati awọn solusan ni tẹlentẹle?

Awọn ibeere wọnyi bẹrẹ si dide siwaju wa siwaju ati siwaju sii nigbagbogbo lati ọdun 2015. Nọmba awọn ọja dagba, ati pe a gbiyanju lati faagun ẹka adaṣe adaṣe wa (DevOps), eyiti o ṣe atilẹyin awọn laini apejọ ti awọn ọja wọnyi, si o kere ju. Ni akoko kanna, a fẹ lati tun ṣe ọpọlọpọ awọn solusan bi o ti ṣee laarin awọn ọja. Lẹhinna, kilode ti o ṣe ohun kanna ni awọn ọja mẹwa ni awọn ọna oriṣiriṣi?

Oludari Idagbasoke: "Awọn ọmọkunrin, ṣe a le ṣe ayẹwo bakan ohun ti DevOps ṣe fun awọn ọja?"

awa"A ko mọ, a ko beere iru ibeere kan, ṣugbọn awọn itọkasi wo ni o yẹ ki a ṣe ayẹwo?"

Oludari Idagbasoke: "Talo mọ! Ronu…”

Gẹgẹbi ninu fiimu olokiki naa: "Mo wa ni hotẹẹli kan! ..." - "Uh ... Ṣe o le fi ọna han mi?" Lori iṣaro, a wa si ipari pe a nilo akọkọ lati pinnu lori awọn ipinlẹ ikẹhin ti awọn ọja; eyi di ibi-afẹde akọkọ wa.

Nitorinaa, bawo ni o ṣe ṣe itupalẹ awọn ọja mejila pẹlu awọn ẹgbẹ ti o tobi pupọ lati awọn eniyan 10 si 200 ati pinnu awọn metiriki wiwọn nigbati o tun ṣe awọn ojutu?

1: 0 ni ojurere ti Idarudapọ, tabi DevOps lori awọn ejika ejika

A bẹrẹ pẹlu igbiyanju lati lo awọn aworan IDEF0 ati awọn aworan ilana iṣowo lọpọlọpọ lati inu jara BPwin. Idarudapọ naa bẹrẹ lẹhin square karun ti ipele atẹle ti iṣẹ akanṣe atẹle, ati awọn onigun mẹrin fun iṣẹ akanṣe kọọkan le fa ni iru ti Python gigun labẹ awọn igbesẹ 50+. Mo ni ibanujẹ ati pe Mo fẹ kigbe ni oṣupa - ko baamu ni gbogbogbo.

Aṣoju gbóògì awọn iṣẹ-ṣiṣe

Awọn ilana iṣelọpọ awoṣe jẹ eka pupọ ati iṣẹ irora: o nilo lati gba, ilana ati itupalẹ ọpọlọpọ data lati awọn apa oriṣiriṣi ati awọn ẹwọn iṣelọpọ. O le ka diẹ sii nipa eyi ninu nkan naa "Awoṣe ti awọn ilana iṣelọpọ ni ile-iṣẹ IT kan».

Nigba ti a bẹrẹ ṣiṣe awoṣe ilana iṣelọpọ wa, a ni ibi-afẹde kan pato - lati sọ fun gbogbo oṣiṣẹ ti o ni ipa ninu idagbasoke awọn ọja ile-iṣẹ wa, ati si awọn alakoso ise agbese:

  • bii awọn ọja ati awọn paati wọn, ti o bẹrẹ lati ifaramọ ti laini koodu kan, de ọdọ alabara ni irisi awọn fifi sori ẹrọ ati awọn imudojuiwọn,
  • Kini awọn orisun ti a pese fun ipele kọọkan ti iṣelọpọ awọn ọja,
  • Awọn iṣẹ wo ni o wa ni ipele kọọkan,
  • bawo ni awọn agbegbe ti ojuse fun ipele kọọkan jẹ opin,
  • kini awọn adehun ti o wa ni ẹnu-ọna ati ijade ti ipele kọọkan.

Ṣiṣakoso Idarudapọ: Ṣiṣeto awọn nkan ni ibere pẹlu iranlọwọ ti maapu imọ-ẹrọ kan

Tite lori aworan yoo ṣii ni iwọn kikun.

Iṣẹ wa ni ile-iṣẹ ti pin si awọn agbegbe iṣẹ ṣiṣe pupọ. Itọsọna ti awọn amayederun n ṣiṣẹ ni iṣapeye iṣẹ ti gbogbo awọn orisun "irin" ti ẹka naa, ati adaṣe ti imuṣiṣẹ ti awọn ẹrọ foju ati agbegbe lori wọn. Itọsọna ti ibojuwo n pese iṣakoso iṣẹ iṣẹ 24/7; a tun pese ibojuwo bi iṣẹ kan fun awọn olupilẹṣẹ. Itọsọna iṣiṣẹ n pese awọn ẹgbẹ pẹlu awọn irinṣẹ lati ṣakoso idagbasoke ati awọn ilana idanwo, ṣe itupalẹ ipo koodu naa, ati gba awọn atupale lori awọn iṣẹ akanṣe. Ati nikẹhin, itọsọna webdev n pese atẹjade ti awọn idasilẹ lori awọn olupin imudojuiwọn GUS ati FLUS, bakanna bi iwe-aṣẹ awọn ọja nipa lilo iṣẹ LicenseLab. Lati ṣe atilẹyin opo gigun ti iṣelọpọ, a ṣeto ati ṣetọju ọpọlọpọ awọn iṣẹ atilẹyin oriṣiriṣi fun awọn olupilẹṣẹ (o le tẹtisi awọn itan nipa diẹ ninu wọn lori awọn ipade atijọ: Op! DevOps! Ọdun 2016 и Op! DevOps! Ọdun 2017). A tun ṣe agbekalẹ awọn irinṣẹ adaṣe inu, pẹlu ìmọ orisun solusan.

Ni ọdun marun sẹhin, iṣẹ wa ti ṣajọpọ ọpọlọpọ iru kanna ati awọn iṣẹ ṣiṣe deede, ati pe awọn olupilẹṣẹ wa lati awọn apa miiran wa lati awọn ohun ti a pe ni aṣoju awọn iṣẹ-ṣiṣe, ojutu ti eyiti o jẹ adaṣe ni kikun tabi apakan, ko fa awọn iṣoro fun awọn oṣere ati pe ko nilo awọn oye pataki ti iṣẹ. Paapọ pẹlu awọn agbegbe asiwaju, a ṣe itupalẹ iru awọn iṣẹ-ṣiṣe ati pe o ni anfani lati ṣe idanimọ awọn ẹka iṣẹ kọọkan, tabi gbóògì awọn igbesẹ, awọn ipele ti pin si awọn igbesẹ ti a ko le pin, ati awọn ipele pupọ ni afikun gbóògì pq.

Ṣiṣakoso Idarudapọ: Ṣiṣeto awọn nkan ni ibere pẹlu iranlọwọ ti maapu imọ-ẹrọ kan

Apẹẹrẹ ti o rọrun julọ ti pq imọ-ẹrọ jẹ awọn ipele ti apejọ, imuṣiṣẹ ati idanwo ti ọkọọkan awọn ọja wa laarin ile-iṣẹ naa. Ni ọna, fun apẹẹrẹ, ipele kikọ ni ọpọlọpọ awọn igbesẹ aṣoju lọtọ: gbigba awọn orisun lati GitLab, ngbaradi awọn igbẹkẹle ati awọn ile-ikawe ẹgbẹ-kẹta, idanwo ẹyọkan ati itupalẹ koodu aimi, ṣiṣe iwe afọwọkọ kan lori GitLab CI, titẹjade awọn ohun-ọṣọ ni ibi ipamọ lori Iṣẹ-ọnà ati iran ti awọn akọsilẹ itusilẹ nipasẹ ohun elo ChangelogBuilder inu wa.

O le ka nipa awọn iṣẹ-ṣiṣe DevOps aṣoju ninu awọn nkan miiran wa lori Habré: "Iriri ti ara ẹni: kini eto Integration Ilọsiwaju wa dabi"Ati"Adaṣiṣẹ ti awọn ilana idagbasoke: bawo ni a ṣe ṣe imuse awọn imọran DevOps ni Awọn Imọ-ẹrọ Rere».

Ọpọlọpọ awọn ẹwọn iṣelọpọ aṣoju dagba ilana iṣelọpọ. Ọna boṣewa lati ṣe apejuwe awọn ilana ni lati lo awọn awoṣe IDEF0 iṣẹ-ṣiṣe.

Apeere ti awoṣe ti ilana iṣelọpọ CI kan

A san ifojusi pataki si idagbasoke ti awọn iṣẹ akanṣe fun eto isọpọ igbagbogbo. Eyi jẹ ki o ṣee ṣe lati ṣe aṣeyọri iṣọkan ti awọn iṣẹ akanṣe, ti o ṣe afihan ohun ti a npe ni tu Kọ eni pẹlu awọn igbega.

Ṣiṣakoso Idarudapọ: Ṣiṣeto awọn nkan ni ibere pẹlu iranlọwọ ti maapu imọ-ẹrọ kan

Eyi ni bii o ṣe n ṣiṣẹ. Gbogbo awọn iṣẹ akanṣe jẹ aṣoju: wọn pẹlu iṣeto ni awọn apejọ ti o ṣubu sinu ibi ipamọ aworan ni Artifactory, lẹhin eyi wọn ti ran ati idanwo lori awọn ijoko idanwo, ati lẹhinna ni igbega si ibi ipamọ idasilẹ. Iṣẹ Artifctory jẹ aaye pinpin ẹyọkan fun gbogbo awọn ohun-ọṣọ ti o kọ laarin awọn ẹgbẹ ati awọn iṣẹ miiran.

Ti a ba jẹ ki o rọrun pupọ ati ṣe akopọ ero itusilẹ wa, lẹhinna o pẹlu awọn igbesẹ wọnyi:

  • Apejọ ọja agbekọja,
  • imuṣiṣẹ lati ṣe idanwo awọn ijoko,
  • ṣiṣe iṣẹ ṣiṣe ati awọn idanwo miiran,
  • igbega awọn igbelewọn idanwo lati tusilẹ awọn ibi ipamọ ni Artifctory,
  • titẹjade itusilẹ kọ lori awọn olupin imudojuiwọn,
  • ifijiṣẹ awọn apejọ ati awọn imudojuiwọn si iṣelọpọ,
  • ifilọlẹ fifi sori ẹrọ ati imudojuiwọn ọja naa.

Fun apẹẹrẹ, ronu awoṣe imọ-ẹrọ ti ero itusilẹ aṣoju yii (lẹhin Awoṣe larọwọto) ni irisi awoṣe IDEF0 ti iṣẹ-ṣiṣe. O ṣe afihan awọn ipele akọkọ ti ilana CI wa. IDEF0 si dede lo ohun ti a npe ni ICOM akiyesi (Input-Control-Output-Mechanism) lati ṣe apejuwe awọn ohun elo ti a lo ni ipele kọọkan, da lori iru awọn ofin ati awọn ibeere ti o ṣiṣẹ, kini o jẹ abajade, ati awọn ilana, awọn iṣẹ tabi awọn eniyan ti n ṣe ipele kan pato.

Ṣiṣakoso Idarudapọ: Ṣiṣeto awọn nkan ni ibere pẹlu iranlọwọ ti maapu imọ-ẹrọ kan

Tite lori aworan yoo ṣii ni iwọn kikun.

Bi ofin, o rọrun lati decompose ati apejuwe awọn apejuwe ti awọn ilana ni awọn awoṣe iṣẹ-ṣiṣe. Ṣugbọn bi nọmba awọn eroja ti n dagba, o di pupọ ati siwaju sii nira lati ni oye nkankan ninu wọn. Ṣugbọn ni idagbasoke gidi awọn ipele iranlọwọ tun wa: ibojuwo, iwe-ẹri ti awọn ọja, adaṣe ti awọn ilana iṣẹ, ati awọn miiran. O jẹ nitori iṣoro irẹjẹ ti a fi kọ apejuwe yii silẹ.

Ibi ireti

Ninu iwe kan, a wa awọn maapu Soviet atijọ ti n ṣe apejuwe awọn ilana imọ-ẹrọ (eyiti, nipasẹ ọna, tun lo loni ni ọpọlọpọ awọn ile-iṣẹ ti ijọba ati awọn ile-ẹkọ giga). Duro, duro, nitori a tun ni ṣiṣan iṣẹ! .. Awọn ipele wa, awọn esi, awọn metiriki, awọn ibeere, awọn afihan, ati bẹbẹ lọ… Kilode ti o ko gbiyanju lati lo awọn iwe ṣiṣan si awọn pipeline ọja wa daradara? Imọlara kan wa: “Eyi ni! A ti rii okun ti o tọ, o to akoko lati fa daradara!

Ni tabili ti o rọrun, a pinnu lati ṣe igbasilẹ awọn ọja nipasẹ awọn ọwọn, ati awọn ipele imọ-ẹrọ ati awọn igbesẹ opo gigun ti ọja nipasẹ awọn ori ila. Awọn ami-iyọọda jẹ nkan ti o tobi, gẹgẹbi igbesẹ kikọ ọja kan. Ati awọn igbesẹ jẹ nkan ti o kere ati alaye diẹ sii, gẹgẹbi igbesẹ ti igbasilẹ koodu orisun si olupin kikọ tabi igbesẹ ti iṣakojọpọ koodu naa.

Ni awọn ikorita ti awọn ori ila ati awọn ọwọn ti maapu, a fi awọn ipo silẹ fun ipele kan pato ati ọja. Fun awọn ipo, ṣeto awọn ipinlẹ ti ni asọye:

  1. Ko si data - tabi ko yẹ. O jẹ dandan lati ṣe itupalẹ ibeere fun ipele kan ninu ọja naa. Boya itupalẹ naa ti ṣe tẹlẹ, ṣugbọn ipele naa ko nilo lọwọlọwọ tabi kii ṣe idalare nipa ọrọ-aje.
  2. Sun siwaju - tabi ko ṣe pataki ni akoko. Ipele kan ninu opo gigun ti epo nilo, ṣugbọn ko si awọn ipa fun imuse ni ọdun yii.
  3. Ngbero. Ipele naa ni a gbero fun imuse ni ọdun yii.
  4. Ti ṣe imuse. Ipele ti opo gigun ti epo ti wa ni imuse ni iwọn didun ti a beere.

Àgbáye ni tabili bẹrẹ ise agbese nipa ise agbese. Ni akọkọ, awọn ipele ati awọn igbesẹ ti iṣẹ akanṣe kan jẹ ipin ati awọn ipo wọn ti gbasilẹ. Lẹhinna wọn mu iṣẹ akanṣe ti o tẹle, ṣe atunṣe awọn ipo ninu rẹ ati ṣafikun awọn ipele ati awọn igbesẹ ti o padanu ninu awọn iṣẹ iṣaaju. Bi abajade, a ni awọn ipele ati awọn igbesẹ ti gbogbo opo gigun ti epo iṣelọpọ ati awọn ipo wọn ni iṣẹ akanṣe kan pato. O jẹ nkan ti o jọra si matrix pipe pipeline ọja. A pe iru matrix bẹ ni maapu imọ-ẹrọ.

Pẹlu iranlọwọ ti maapu imọ-ẹrọ, a ni ibamu pẹlu iwọntunwọnsi pẹlu awọn ẹgbẹ awọn ero iṣẹ fun ọdun ati awọn ibi-afẹde ti a fẹ lati ṣaṣeyọri papọ: awọn ipele wo ni a ṣafikun si iṣẹ akanṣe ni ọdun yii, ati awọn wo ni a fi silẹ fun nigbamii. Pẹlupẹlu, lakoko iṣẹ, a le ni awọn ilọsiwaju ni awọn ipele ti a ti pari fun ọja kan nikan. Lẹhinna a faagun maapu wa ati ṣafihan ilọsiwaju yii bi ipele kan tabi igbesẹ tuntun, lẹhinna a ṣe itupalẹ fun ọja kọọkan ati rii iṣeeṣe ti atunṣe ilọsiwaju naa.

Wọn le tako si wa pe: “Gbogbo eyi jẹ, dajudaju, dara, nikan ni akoko ti nọmba awọn igbesẹ ati awọn ipele yoo di nla ni idinamọ. Bawo ni lati jẹ?

A ti ṣafihan boṣewa ati awọn apejuwe pipe pipe ti awọn ibeere fun ipele kọọkan ati igbesẹ, ki gbogbo eniyan ni oye wọn laarin ile-iṣẹ ni ọna kanna. Ni akoko pupọ, bi awọn ilọsiwaju ti ṣe ifilọlẹ, igbesẹ kan le fa sinu ipele miiran tabi igbesẹ, lẹhinna wọn yoo “wó lulẹ”. Ni akoko kanna, gbogbo awọn ibeere ati awọn nuances imọ-ẹrọ ni ibamu si awọn ibeere ti ipele gbogbogbo tabi igbesẹ.

Bawo ni lati ṣe iṣiro ipa ti awọn atunṣe atunṣe? A lo ọna ti o rọrun pupọ: a ṣe ikawe awọn idiyele olu akọkọ fun imuse ipele tuntun si awọn idiyele ọja gbogbogbo lododun, ati lẹhinna pin nipasẹ gbogbo nigbati o tun ṣe.

Awọn apakan ti idagbasoke ti han tẹlẹ bi awọn ami-iyọlẹnu ati awọn igbesẹ lori maapu naa. A le ni agba idinku ti idiyele ọja nipasẹ iṣafihan adaṣe adaṣe fun awọn ipele aṣoju. Lẹhin iyẹn, a ṣe akiyesi awọn ayipada ninu awọn abuda agbara, awọn iwọn iwọn ati èrè ti awọn ẹgbẹ gba (ni awọn wakati-wakati tabi ẹrọ-awọn ifowopamọ).

Maapu imọ-ẹrọ ti ilana iṣelọpọ

Ti a ba ṣe gbogbo awọn ipele ati awọn igbesẹ wa, fi koodu pamọ pẹlu awọn afi ki o faagun wọn sinu ẹwọn kan, lẹhinna o yoo jẹ gigun pupọ ati ko ni oye (o kan “iru Python” ti a sọrọ nipa ni ibẹrẹ nkan naa) :

[Production] — [InfMonitoring] — [SourceCodeControl] — [Prepare] — [PrepareLinuxDocker] — [PrepareWinDocker] — [Build] — [PullSourceCode] — [PrepareDep] — [UnitTest] — [CodeCoverage] — [StaticAnalyze] — [BuildScenario] — [PushToSnapshot] — [ChangelogBuilder] — [Deploy] — [PrepareTestStand] — [PullTestCode] — [PrepareTestEnv] — [PullArtifact] — [DeployArtifact] — [Test] — [BVTTest] — [SmokeTest] — [FuncTest] — [LoadTest] — [IntegrityTest] — [DeliveryTest] — [MonitoringStands] — [TestManagement] — [Promote] — [QualityTag] — [MoveToRelease] — [License] — [Publish] — [PublishGUSFLUS] — [ControlVisibility] — [Install] — [LicenseActivation] — [RequestUpdates] — [PullUpdates] — [InitUpdates] — [PrepareEnv] — [InstallUpdates] — [Telemetry] — [Workflow] — [Communication] — [Certification] — [CISelfSufficiency]

Iwọnyi ni awọn ipele ti awọn ọja kikọ [Kọ], gbigbe wọn lati ṣe idanwo awọn olupin [Deploy], idanwo [idanwo], igbega awọn ile lati tusilẹ awọn ibi ipamọ ti o da lori awọn abajade ti idanwo [igbega], ti ipilẹṣẹ ati awọn iwe-aṣẹ titẹjade [Iwe-aṣẹ], titẹjade [ Ṣe atẹjade lori olupin imudojuiwọn GUS ati ifijiṣẹ si awọn olupin imudojuiwọn FLUS, fifi sori ẹrọ ati imudojuiwọn awọn paati ọja lori awọn amayederun alabara nipa lilo iṣakoso iṣeto ọja [Fi sori ẹrọ], ati gbigba ti telemetry [Telemetry] lati awọn ọja ti a fi sii.

Ni afikun si wọn, awọn ipele lọtọ le ṣe iyatọ: ibojuwo ipinlẹ amayederun [InfMonitoring], ikede koodu orisun [SourceCodeControl], kọ igbaradi ayika [Mura], iṣakoso iṣẹ akanṣe [Ṣiṣẹ iṣẹ], pese awọn ẹgbẹ pẹlu awọn irinṣẹ ibaraẹnisọrọ [Ibaraẹnisọrọ], iwe-ẹri ọja [ Ijẹrisi] ati idaniloju idaniloju ara ẹni ti awọn ilana CI [CISelfSufficiency] (fun apẹẹrẹ, ominira ti awọn apejọ lati Intanẹẹti). Awọn dosinni ti awọn igbesẹ ninu awọn ilana wa kii yoo paapaa gbero, nitori wọn jẹ pato pato.

Yoo rọrun pupọ lati ni oye ati wo gbogbo ilana iṣelọpọ ti o ba gbekalẹ ni fọọmu naa map imo; Eyi jẹ tabili ninu eyiti awọn ipele iṣelọpọ kọọkan ati awọn igbesẹ ti bajẹ ti Awoṣe ti kọ sinu awọn ori ila, ati ninu awọn ọwọn apejuwe ohun ti a ṣe ni ipele kọọkan tabi igbesẹ. Itọkasi akọkọ ni a gbe sori awọn orisun ti o pese ipele kọọkan, ati iyasọtọ awọn agbegbe ti ojuse.

Maapu fun wa ni a irú ti classifier. O ṣe afihan awọn ẹya imọ-ẹrọ nla ti iṣelọpọ awọn ọja. O ṣeun si rẹ, o rọrun fun ẹgbẹ adaṣe wa lati ṣe ajọṣepọ pẹlu awọn olupilẹṣẹ ati gbero apapọ imuse ti awọn ipele adaṣe, ati loye kini awọn idiyele iṣẹ ati awọn orisun (eniyan ati ohun elo) yoo nilo fun eyi.

Ninu ile-iṣẹ wa, maapu naa jẹ ipilẹṣẹ laifọwọyi lati inu awoṣe jinja gẹgẹbi faili HTML deede, ati lẹhinna gbejade si olupin GitLab Pages. Aworan sikirinifoto pẹlu apẹẹrẹ ti maapu ti o ni kikun ni a le wo asopọ.

Ṣiṣakoso Idarudapọ: Ṣiṣeto awọn nkan ni ibere pẹlu iranlọwọ ti maapu imọ-ẹrọ kan

Tite lori aworan yoo ṣii ni iwọn kikun.

Ni kukuru, maapu imọ-ẹrọ jẹ aworan gbogbogbo ti ilana iṣelọpọ, eyiti o ṣe afihan awọn bulọọki ti a sọ di mimọ pẹlu iṣẹ ṣiṣe aṣoju.

Ilana ti maapu opopona wa

Maapu naa ni awọn ẹya pupọ:

  1. Agbegbe akọle - nibi ni apejuwe gbogbogbo ti maapu naa, awọn imọran ipilẹ ti ṣafihan, awọn orisun akọkọ ati awọn abajade ti ilana iṣelọpọ jẹ asọye.
  2. Dasibodu - nibi o le ṣakoso ifihan data fun awọn ọja kọọkan, akopọ ti awọn ipele imuse ati awọn igbesẹ ni gbogbogbo fun gbogbo awọn ọja ti pese.
  3. Maapu imọ-ẹrọ - apejuwe tabular ti ilana imọ-ẹrọ. Lori maapu:
    • gbogbo awọn ipele, awọn igbesẹ ati awọn koodu wọn ni a fun;
    • kukuru ati pipe awọn apejuwe ti awọn ipele ti wa ni fun;
    • awọn orisun igbewọle ati awọn iṣẹ ti a lo ni ipele kọọkan jẹ itọkasi;
    • awọn abajade ti ipele kọọkan ati igbesẹ ti o yatọ ni itọkasi;
    • agbegbe ti ojuse fun ipele kọọkan ati igbesẹ jẹ itọkasi;
    • awọn orisun imọ-ẹrọ, gẹgẹbi HDD (SSD), Ramu, vCPU, ati awọn wakati-wakati eniyan pataki lati ṣe atilẹyin iṣẹ ni ipele yii, mejeeji ni akoko lọwọlọwọ - otitọ kan, ati ni ọjọ iwaju - eto kan, ti pinnu;
    • fun ọja kọọkan, o tọka si iru awọn ipele imọ-ẹrọ tabi awọn igbesẹ fun ti a ti ṣe imuse, ti a gbero fun imuse, ko ṣe pataki tabi ko ṣe imuse.

Ṣiṣe ipinnu ti o da lori maapu imọ-ẹrọ

Lẹhin ti ṣayẹwo maapu naa, o ṣee ṣe lati ṣe diẹ ninu awọn iṣe - da lori ipa ti oṣiṣẹ ninu ile-iṣẹ (oluṣakoso idagbasoke, oluṣakoso ọja, olupilẹṣẹ tabi oluyẹwo):

  • loye iru awọn ipele ti o nsọnu ni ọja gidi tabi iṣẹ akanṣe, ati ṣe ayẹwo iwulo fun imuse wọn;
  • ṣe iyasọtọ awọn agbegbe ti ojuse laarin awọn ẹka pupọ ti wọn ba ṣiṣẹ lori awọn ipele oriṣiriṣi;
  • gba lori awọn adehun ni awọn ẹnu-ọna ati awọn ijade ti awọn ipele;
  • ṣepọ ipele iṣẹ rẹ sinu ilana idagbasoke gbogbogbo;
  • diẹ sii deede ṣe ayẹwo iwulo fun awọn orisun ti o pese awọn ipele kọọkan.

Akopọ gbogbo awọn ti awọn loke

Awọn afisona jẹ wapọ, extensible ati ki o rọrun lati ṣetọju. O rọrun pupọ lati ṣe agbekalẹ ati ṣetọju apejuwe awọn ilana ni fọọmu yii ju ninu awoṣe IDEF0 ti o muna. Ni afikun, apejuwe tabular jẹ rọrun, faramọ diẹ sii, ati iṣeto ti o dara ju awoṣe iṣẹ-ṣiṣe lọ.

Fun imuse imọ-ẹrọ ti awọn igbesẹ, a ni ohun elo inu inu pataki CrossBuilder - ọpa Layer laarin awọn eto CI, awọn iṣẹ ati awọn amayederun. Olùgbéejáde ko nilo lati ge keke rẹ: ninu eto CI wa, o to lati ṣiṣẹ ọkan ninu awọn iwe afọwọkọ (eyiti a pe ni iṣẹ-ṣiṣe) ti ohun elo CrossBuilder, eyiti yoo ṣiṣẹ ni deede, ni akiyesi awọn ẹya ti awọn amayederun wa. .

Awọn esi

Nkan naa wa ni pipẹ pupọ, ṣugbọn eyi jẹ eyiti ko ṣee ṣe nigbati o n ṣalaye awoṣe ti awọn ilana eka. Ni ipari, Emi yoo fẹ lati ṣatunṣe awọn imọran akọkọ wa ni ṣoki:

  • Ibi-afẹde ti imuse awọn imọran DevOps ni ile-iṣẹ wa ni lati dinku iye owo iṣelọpọ ati itọju awọn ọja ile-iṣẹ ni awọn ofin titobi (awọn wakati eniyan tabi awọn wakati ẹrọ, vCPU, Ramu, Disk).
  • Ọna lati dinku iye owo idagbasoke gbogbogbo ni lati dinku idiyele ti ṣiṣe awọn iṣẹ-ṣiṣe ni tẹlentẹle aṣoju: awọn ipele ati awọn igbesẹ ti ilana imọ-ẹrọ.
  • Iṣẹ-ṣiṣe aṣoju jẹ iṣẹ-ṣiṣe ti ojutu rẹ jẹ adaṣe ni kikun tabi apakan, ko fa awọn iṣoro fun awọn oṣere ati pe ko nilo awọn idiyele iṣẹ ṣiṣe pataki.
  • Ilana iṣelọpọ ni awọn ipele, awọn ipele ti pin si awọn igbesẹ ti a ko le pin, eyiti o jẹ awọn iṣẹ-ṣiṣe aṣoju ti o yatọ si iwọn ati iwọn.
  • Lati awọn iṣẹ-ṣiṣe aṣoju ti o yatọ, a ti wa si awọn ẹwọn imọ-ẹrọ ti o nipọn ati awọn awoṣe ipele-pupọ ti ilana iṣelọpọ, eyiti o le ṣe apejuwe nipasẹ awoṣe IDEF0 iṣẹ-ṣiṣe tabi maapu imọ-ẹrọ ti o rọrun.
  • Maapu imọ-ẹrọ jẹ aṣoju tabular ti awọn ipele ati awọn igbesẹ ti ilana iṣelọpọ. Ohun pataki julọ: maapu naa gba ọ laaye lati wo gbogbo ilana ni gbogbo rẹ, ni awọn ege nla pẹlu o ṣeeṣe lati ṣe alaye wọn.
  • Da lori maapu imọ-ẹrọ, o ṣee ṣe lati ṣe iṣiro iwulo lati ṣafihan awọn ipele ni ọja kan pato, ṣe iyasọtọ awọn agbegbe ti ojuse, gba lori awọn adehun ni awọn igbewọle ati awọn abajade ti awọn ipele, ati ni deede ṣe iṣiro iwulo fun awọn orisun.

Ninu awọn nkan atẹle, a yoo ṣe apejuwe ni awọn alaye diẹ sii kini awọn irinṣẹ imọ-ẹrọ ti a lo lati ṣe awọn ipele imọ-ẹrọ kan lori maapu wa.

Awọn onkọwe nkan:

orisun: www.habr.com

Fi ọrọìwòye kun