Hagaha Dummies: Dhisida silsiladaha DevOps oo leh Aaladaha Isha Furan

Hagaha Dummies: Dhisida silsiladaha DevOps oo leh Aaladaha Isha Furan
Ku dhis silsiladaada ugu horeysa ee DevOps shan tilaabo oo bilow ah.

DevOps waxay dawo u noqotay geeddi-socod horumarineed oo aad u gaabis ah, kala qaybsan, iyo dhibaato kale. Laakiin waxaad u baahan tahay aqoonta ugu yar DevOps. Waxay dabooli doontaa fikradaha sida silsiladda DevOps iyo sida loo abuuro mid shan tillaabo ah. Kani maaha hage dhammaystiran, laakiin kaliya "kalluun" oo la ballaarin karo. Aan ku bilowno taariikhda.

Hordhacayga DevOps

Waxaan la shaqayn jiray daruuraha Citi Group oo aan horumariyo codsiga shabakada IaaS si aan u maareeyo kaabayaasha daruuraha ee Citi, laakiin waxaan had iyo jeer xiisayn jiray sida loo wanaajiyo silsiladda horumarinta oo aan u wanaajiyo dhaqanka ka mid ah horumarinta. Greg Lavender, CTO-gayada Cloud Architecture iyo Kaabayaasha, ayaa igula taliyay buuggan. Mashruuca Phoenix. Waxay si fiican u sharraxaysaa mabaadi'da DevOps waxayna u akhridaa sida sheeko cusub.

Jaantusku wuxuu muujinayaa inta jeer ee shirkaduhu soo saaraan noocyo cusub:

Hagaha Dummies: Dhisida silsiladaha DevOps oo leh Aaladaha Isha Furan

Sidee Amazon, Google iyo Netflix u maamulaan inay soo saaraan wax badan? Wayna fududahay: waxay ogaadeen sida loo abuuro silsilad DevOps ku dhow qumman.

Arrimuhu sidaas kumay ahayn Citi ilaa aan u wareegnay DevOps. Kadib kooxdaydu waxay lahayd bey'ado kala duwan, laakiin waxaan samaynay gaarsiinta server-ka horumarinta gacanta. Dhammaan horumariyeyaashu waxay marin u heleen hal server oo horumarineed oo ku salaysan IBM WebSphere Application Server Edition. Isku day isku mar ah oo lagu bixinayo, adeeguhu "soo dhacay", mar kastana waxay ahayd inaan "xanuun" dhexdeena gorgortanno. Waxa kale oo aanu haysanay caymis ku filan oo kood ah oo leh imtixaanada, habka gudbinta gacanta ee wakhti-qaadka ah, iyo ma jirto si aan ula socono keenista koodka iyadoo la kaashanayo hawl ama shuruudaha macmiilka.

Way caddaatay in wax degdeg ah loo baahan yahay in la sameeyo, waxaanan helay saaxiib ay isku fikir yihiin. Waxaan go'aansannay inaan abuurno silsiladdii ugu horreysay ee DevOps - wuxuu sameeyay mashiinka farsamada iyo server-ka Tomcat, waxaanan daryeelay Jenkins, isdhexgalka Atlassian Jira iyo BitBucket, iyo sidoo kale caymiska koodhka ee imtixaannada. Mashruucu wuxuu ahaa mid guul leh: waxaan si buuxda u toosinay silsiladda horumarinta, waxaan gaarnay ku dhawaad ​​100% wakhtiga ku-meel-gaadhka ah ee server-ka horumarinta, waxaan awoodnay inaan la soconno oo wanaajino caynsanaanta koodhka imtixaannada, iyo laan Git ah ayaa lagu xidhi karaa gaarsiinta iyo arrinta Jira. Iyo ku dhawaad ​​dhammaan aaladaha aan u isticmaalnay dhisidda silsiladda DevOps waxay ahaayeen il furan.

Dhab ahaantii, silsiladda waa la fududeeyay, sababtoo ah xitaa ma aanan dabaqin qaabeynta horumarsan iyadoo la adeegsanayo Jenkins ama macquul ah. Laakiin waan ku guulaysanay. Waxaa laga yaabaa in tani ay tahay natiijada mabda'a Pareto (aka qaanuunka 80/20).

Sharaxaada Kooban ee DevOps iyo Silsiladda CI/CD

DevOps waxay leedahay qeexitaanno kala duwan. DevOps, sida Agile, waxaa ku jira culuum kala duwan. Laakiin intooda badani waxay ku heshiin doonaan qeexida soo socota: DevOps waa hab, ama meertada nolosha, horumarinta software, mabda'a ugu muhiimsan kaas oo ah in la abuuro dhaqan halkaas oo horumariyeyaasha iyo shaqaalaha kale ay "isku mid yihiin dhererka dhererka", shaqada gacanta ayaa si toos ah u socota, qof kastaa wuxuu sameeyaa waxa uu ku fiican yahay, inta jeer ee dhalmada ayaa kordheysa, wax soo saarka shaqada ayaa kordha, dabacsanaantu way korodhaa.

In kasta oo aaladaha oo keliya aysan ku filneyn abuurista jawi DevOps, haddana waa lama huraan. Waxa ugu muhiimsan kuwan waa is-dhexgalka joogtada ah iyo gaarsiinta joogtada ah (CI/CD). Waxaa jira marxalado kala duwan ee silsiladda deegaan kasta (tusaale, DEV (horumarin), INT (isdhexgalka), TST (tijaabada), QA (xaqiijinta tayada), UAT (imtixaanka aqbalaadda isticmaalaha), STG (diyaarinta), PROD (isticmaalka)) , Hawlaha gacanta ayaa si otomaatig ah u socda, horumariyayaashu waxay samayn karaan kood tayo leh, gaarsiin kara, oo si fudud dib u dhisi kara.

Qoraalkani waxa uu qeexayaa sida loo sameeyo silsiladda DevOps shan tilaabo, sida sawirka hoose ku cad, iyadoo la isticmaalayo qalab il furan.

Hagaha Dummies: Dhisida silsiladaha DevOps oo leh Aaladaha Isha Furan

Aan u dhaadhacno ganacsiga.

Tallaabada 1: Platform CI/CD

Marka hore, waxaad u baahan tahay CI/CD qalab. Jenkins waa MIT shati shati siisay, qalab CI/CD furan oo ku qoran Java kaas oo faafiyay dhaqdhaqaaqa DevOps oo noqday halbeegga dhabta ah ee CICD.

Waa maxay Jenkins? Bal qiyaas in aad haysato guddi kontorool oo sixir ah oo loogu talagalay adeegyo iyo qalab kala duwan. Kaligiis, qalabka CI/CD sida Jenkins waa wax aan faa'iido lahayn, laakiin leh qalab iyo adeegyo kala duwan, waxay noqotaa mid awood leh.

Waxaa jira qalab kale oo badan oo furan oo aan ka ahayn Jenkins, dooro mid kasta.

Hagaha Dummies: Dhisida silsiladaha DevOps oo leh Aaladaha Isha Furan

Tani waa waxa habka DevOps uu u eg yahay qalabka CI/CD

Hagaha Dummies: Dhisida silsiladaha DevOps oo leh Aaladaha Isha Furan

Waxaad ku haysataa aalad CI / CD gudaha localhost, laakiin wax badan oo la sameeyo weli ma jiraan. Aan u gudubno tallaabada xigta.

Tallaabada 2: Xakamaynta Nooca

Habka ugu fiican (iyo sida ugu fudud ee lagu doodi karo) ee lagu tijaabin karo sixirka aaladda CI/CD waa in lagu dhex daro agabka maaraynta isha (SCM). Maxaad ugu baahan tahay kontoroolka nooca? Aynu nidhaahno waxaad samaynaysaa codsi. Waxaad ku qortaa Java, Python, C++, Go, Ruby, JavaScript, ama luuqad kasta oo kale oo ah gaadhi iyo gaadhi yar. Waxa aad qorto waxa la yidhaa source code. Marka hore, gaar ahaan haddii aad kaligaa shaqaynayso, waxaad wax walba ku kaydin kartaa hagaha deegaanka. Laakiin marka uu mashruucu kordho oo dad badani ku soo biiraan, waxaad u baahan tahay hab aad ku wadaagto isbeddelada kood laakiin ka fogow isku dhacyada marka la isku daro isbeddelada. Waxa kale oo aad u baahan tahay in aad si uun u soo celiso noocyadii hore adiga oo aan isticmaalin kaydka iyo adeegsiga habka koobi-koobidda ee faylasha koodka.

Oo halkan iyada oo aan SCM meelna lahayn. SCM waxay ku kaydisaa koodka meelaha kaydka ah, waxay maamushaa noocyadeeda, oo waxay isku duwdaa horumariyayaasha dhexdooda.

Waxaa jira qalab badan oo SCM ah, laakiin Git wuxuu u qalmaa inuu noqdo heerka dhabta ah. Waxaan kugula talinayaa inaad isticmaasho, laakiin waxaa jira xulashooyin kale.

Hagaha Dummies: Dhisida silsiladaha DevOps oo leh Aaladaha Isha Furan

Waa kan sida dhuumaha DevOps u eg yahay ka dib marka lagu daro SCM.

Hagaha Dummies: Dhisida silsiladaha DevOps oo leh Aaladaha Isha Furan

Qalabka CI/CD wuxuu si toos ah u samayn karaa soo dejinta koodhka isha iyo wada shaqaynta kooxda. Ma xuma? Laakiin hadda sida loo sameeyo codsi shaqo tan, oo ay jecel yihiin balaayiin isticmaaleyaal ah?

Tallaabada 3: Dhis Qalabka Automation-ka

Wax walba si sax ah ayay u socdaan. Waxaad soo gelin kartaa koodka oo aad samayn kartaa isbeddelo ku saabsan xakamaynta nooca, oo waxaad ku martiqaadi kartaa saaxiibada inay kula shaqeeyaan. Laakin wali ma lihid app Si uu u noqdo arji shabakad, waa in la ururiyaa oo la baakadeeyaa si loo geeyo ama loo socodsiiyo sidii fayl la fulin karo. (Luqadda barnaamijyada la turjumay, sida JavaScript ama PHP, uma baahna in la ururiyo.)

Isticmaal qalab dhisme iswada. Qalab kasta oo aad doorato, waxay u ururin doontaa koodka qaabka loo baahan yahay oo waxay si otomaatig ah u nadiifin doontaa, isku-dubarid, tijaabin iyo geyn. Qalab dhismuhu way kala duwan yihiin iyadoo ku xidhan luqadda, laakiin xulashooyinka isha furan ee soo socda ayaa badanaa la isticmaalaa.

Hagaha Dummies: Dhisida silsiladaha DevOps oo leh Aaladaha Isha Furan

qumman! Hadda aynu gelino faylalka habaynta qalabka iswada dhista si ay u dhisto qalabka CI/CD.

Hagaha Dummies: Dhisida silsiladaha DevOps oo leh Aaladaha Isha Furan

Wanaag ayay dareemaysaa. Laakin halkee waxaas oo dhan ay hadda ka bixi doonaan?

Tallaabada 4: Adeegaha Codsiga Mareegta

Markaa, waxaad haysataa fayl baakadaysan oo la fulin karo ama la rogi karo. Si uu codsigu runtii faa'iido u yeesho, waa inuu lahaadaa nooc ka mid ah adeeg ama interface, laakiin waxaad u baahan tahay inaad meel dhigto.

Codsiga mareegaha waxa lagu hayn karaa server-ka codsiga shabakadda. Adeegaha codsigu waxa uu bixiyaa jawi aad ku fulin karto macquulka baakadaysan, samaynta interfiyada, oo aad ku soo bandhigi karto adeegyada shabakada godad. Waxaad u baahan tahay server HTTP ah iyo dhowr deegaan oo kale (mashiin dalwaddii, tusaale ahaan) si aad u rakibto serverka codsiga. Hadda, aan iska dhigno inaad waxaas oo dhan wax ka qabanayso markaad tagto (inkasta oo aan ka hadli doono weelasha hoose).

Waxaa jira dhowr adeegayaal codsi shabakadeed oo furan.

Hagaha Dummies: Dhisida silsiladaha DevOps oo leh Aaladaha Isha Furan

Waxaan horey u haysanay ku dhawaad ​​silsilad DevOps ah oo shaqaynaysa. Shaqo fiican!

Hagaha Dummies: Dhisida silsiladaha DevOps oo leh Aaladaha Isha Furan

Mabda 'ahaan, waxaad ku joojin kartaa halkan, ka dibna adiga ayaa iska qaban kara, laakiin waxaa habboon in laga hadlo tayada koodhka.

Tallaabada 5: Tijaabi Jaakad

Tijaabadu waxay qaadataa waqti iyo dadaal badan, laakiin way fiicantahay in isla markiiba la helo khaladaadka oo la hagaajiyo koodka si loo raali galiyo isticmaalayaasha dhamaadka. Ujeedadaas awgeed, waxaa jira qalab badan oo furan oo aan tijaabin doonin koodka, laakiin sidoo kale waxay ku talinayaan sida loo hagaajiyo. Inta badan qalabka CI/CD waxa ay ku xidhi karaan qalabkan oo ay si otomaatig ah u samayn karaan hawsha.

Tijaabadu waxay u qaybsantaa laba qaybood: qaab-dhismeedka tijaabada ee qorista iyo socodsiinta imtixaanada, iyo agabka leh talooyin lagu hagaajinayo tayada code.

Qaab-dhismeedka Imtixaanka

Hagaha Dummies: Dhisida silsiladaha DevOps oo leh Aaladaha Isha Furan

Qalab leh talooyin tayo leh

Hagaha Dummies: Dhisida silsiladaha DevOps oo leh Aaladaha Isha Furan

Inta badan qalabkan iyo qaab-dhismeedka waxaa loo qoray Java, Python, iyo JavaScript sababtoo ah C++ iyo C # waa kuwo iska leh (inkastoo GCC ay tahay il furan).

Waxaan adeegsanay qalabka daboolida tijaabada, oo hadda dhuumaha DevOps waa inay u ekaadaan sawirka bilowga casharrada.

Talaabooyinka Dheeraadka ah

Konteenarada

Sidaan horey u sheegay, server-ka codsiga waxaa lagu martigelin karaa mashiinka farsamada ama server-ka, laakiin weelasha ayaa aad loo jecel yahay.

Waa maxay weel? Marka la soo koobo, mashiinka farsamada, nidaamka hawlgalka wuxuu inta badan qaataa meel ka badan codsiga, iyo weel inta badan ku filan dhowr maktabado iyo qaabeynta. Xaaladaha qaarkood, mashiinnada farsamada gacanta waa lama huraan, laakiin weelku wuxuu dejin karaa codsiga oo ay la socdaan server-ka kharash dheeraad ah.

Koonteenarada, Docker iyo Kubernetes ayaa badanaa la qaataa, inkastoo ay jiraan doorashooyin kale.

Hagaha Dummies: Dhisida silsiladaha DevOps oo leh Aaladaha Isha Furan

Akhri maqaallada ku saabsan Docker iyo Kubernetes on opensource.com:

Qalabka Automation-ka ee Middleware

Silsiladayada DevOps waxay diiradda saartaa dhisidda iskaashiga iyo keenista codsiga, laakiin waxaad ku samayn kartaa waxyaabo kale oo xiiso leh qalabka DevOps. Tusaale ahaan, u isticmaal Kaabayaasha sida Qalabka Code (IaC), oo sidoo kale loo yaqaan aaladaha automation-ka dhexe. Aaladahani waxa ay caawiyaan rakibidda, maaraynta, iyo hawlaha kale ee qalabka dhexe. Tusaale ahaan, aaladda otomaatiga ah waxay qaadan kartaa codsiyada (server codsiga shabakadda, xogta xogta, aaladaha la socodka) oo leh qaabayn sax ah oo ku riix server-ka codsiga.

Waa kuwan qaar ka mid ah ikhtiyaarrada aaladaha otomaatiga ah ee furan:

Hagaha Dummies: Dhisida silsiladaha DevOps oo leh Aaladaha Isha Furan

Faahfaahinta maqaallada opensource.com:

Hadda waa maxay?

Tani waa uun caarada barafka. Silsiladda DevOps ayaa wax badan qaban karta. Ku bilow qalabka CI/CD oo arag waxa kale oo aad otomaatig u samayn karto si aad shaqadaada ugu fududaato. Ha ilaawin qalabka isgaarsiinta furan wada shaqayn wax ku ool ah.

Waa kuwan maqaallo kale oo wanaagsan oo DevOps ah oo loogu talagalay bilowgayaasha:

Waxa kale oo aad ku dari kartaa DevOps qalabyo furan oo furan:

Source: www.habr.com

Add a comment