Aratohu Dummies: Hangaia nga mekameka DevOps me nga Utauta Puna Tuwhera

Aratohu Dummies: Hangaia nga mekameka DevOps me nga Utauta Puna Tuwhera
Te hanga i to mekameka DevOps tuatahi i roto i nga waahanga e rima mo te hunga timatanga.

Kua noho a DevOps hei rongoa mo te puhoi rawa, te momotu me etahi atu tukanga whanaketanga raruraru. Engari me iti te mohio ki a DevOps. Ka kapi i nga kaupapa penei i te mekameka DevOps me pehea te hanga i tetahi i roto i nga waahanga e rima. Ehara tenei i te tino aratohu, engari he "ika" anake ka taea te whakawhanui. Me timata tatou ki te hitori.

Taku whakataki ki DevOps

I mahi tahi ahau me nga kapua i te Roopu Citi me te whakawhanake i tetahi tono paetukutuku IaaS hei whakahaere i nga hanganga kapua o Citi, engari i nga wa katoa e aro ana ahau ki te arotau i te mekameka whanaketanga me te whakapai ake i te ahurea i waenga i nga kaihanga. Ko Greg Lavender, to matou CTO mo te Hangahanga Kapua me te Hanganga, i taunaki tenei pukapuka ki ahau. Kaupapa "Phoenix". He ataahua te whakamarama i nga maataapono a DevOps me te panui ano he pukapuka.

Ko te tepu kei muri e whakaatu ana i te maha o nga wa e whakaputa ana nga kamupene i nga putanga hou:

Aratohu Dummies: Hangaia nga mekameka DevOps me nga Utauta Puna Tuwhera

Me pehea te whakahaere a Amazon, Google me Netflix ki te whakaputa nui? He maamaa noa: i mohio ratou me pehea te hanga i tetahi mekameka DevOps tino pai.

He rereke nga mea mo matou i Citi tae noa ki te huri ki DevOps. Na he rereke nga taiao o taku roopu, engari i tukuna ma te ringa te tuku ki te tūmau whanaketanga. Ko nga kaiwhakawhanake katoa i uru ki te kotahi anake te tūmau whanaketanga i runga i te IBM WebSphere Application Server Community Edition. Ma te ngana ki te tuku, "kua hinga" te kaimau, me ia wa ka "mamae" taatau ki te whakawhitiwhiti korero i waenga i a maatau. He iti rawa ta matou kapinga waehere me nga whakamatautau, he mahi tuku-a-ringa e pau ana te wa, kaore hoki he huarahi ki te whai i te tukunga o te waehere me etahi mahi me nga whakaritenga a nga kaihoko.

I tino marama me mahi wawe tetahi mea, ka kitea e au he hoa mahi rite tonu te whakaaro. I whakatau matou ki te hanga tahi i te mekameka DevOps tuatahi - i whakaturia e ia he miihini mariko me tetahi tūmau tono Tomcat, a ka tiaki ahau i a Jenkins, te whakauru ki a Atlassian Jira me BitBucket, me te kapi waehere me nga whakamatautau. I angitu te kaupapa: i tino whakaaunoatia e matou te mekameka whanaketanga, i tutuki tata ki te 100% te wa roa i runga i te tūmau whanaketanga, i taea te aro turuki me te whakapai ake i te kapinga waehere me nga whakamatautau, a ka taea te here i tetahi peka Git ki te tuku me te whakaputanga a Jira. A tata katoa nga taputapu i whakamahia e matou ki te hanga i te mekameka DevOps he puna tuwhera.

Inaa, i whakangawarihia te mekameka, na te mea kaore matou i tono i nga whirihoranga matatau ma te whakamahi i a Jenkins, Ansible ranei. Engari i angitu matou. He hua pea tenei na te kaupapa Pareto (aka te ture 80/20).

He Whakaahuatanga Poto mo nga DevOps me CI/CD Chain

He rereke nga whakamaramatanga a DevOps. Ko nga DevOps, penei i a Agile, kei roto i nga waahanga rereke. Engari ko te nuinga ka whakaae ki te whakamaramatanga e whai ake nei: Ko te DevOps he tikanga, he huringa ora ranei, mo te whakawhanaketanga rorohiko, ko te kaupapa matua ko te hanga i tetahi ahurea kei reira nga kaiwhakawhanake me etahi atu kaimahi "i runga i te roangaru kotahi", ka mahi aunoa nga mahi a-ringa, ka mahi nga tangata katoa i nga mea e pai ana ki a ratou, ka piki te auau o te tuku, ka piki te hua o te mahi, ka piki te ngawari.

Ahakoa ko nga taputapu anake kaore e ranea ki te hanga i tetahi taiao DevOps, he mea nui. Ko te mea nui o enei ko te whakauru tonu me te tuku tonu (CI/CD). He rereke nga waahanga i roto i te mekameka mo ia taiao (hei tauira DEV (whakawhanaketanga), INT (whakauru), TST (whakamatautau), QA (te kounga o te kounga), UAT (whakamatautau whakaae kaiwhakamahi), STG (whakarite), PROD (whakamahi)) , ka mahi aunoa nga mahi a-ringa, ka taea e nga kaiwhakawhanake te whakaputa waehere kounga, te tuku, ka ngawari te hanga.

Ko tenei tuhipoka e whakaatu ana me pehea te hanga mekameka DevOps i roto i nga waahanga e rima, penei i te pikitia i raro nei, ma te whakamahi i nga taputapu puna tuwhera.

Aratohu Dummies: Hangaia nga mekameka DevOps me nga Utauta Puna Tuwhera

Me heke ki te pakihi.

Hipanga 1: CI/CD Platform

Tuatahi, me hiahia koe ki te taputapu CI / CD. Ko Jenkins he taputapu CI/CD kua raihanatia e te MIT, tuwhera-puna i tuhia ki Java i rongonui ai te kaupapa DevOps, a kua noho hei paerewa pono mo te CICD.

He aha te Jenkins? Whakaarohia kei a koe he paewhiri mana makutu mo nga momo ratonga me nga taputapu. I a ia ano, he koretake te taputapu CI / CD penei i a Jenkins, engari he rereke nga taputapu me nga ratonga, ka kaha katoa.

I tua atu ki a Jenkins, he maha atu nga taputapu puna tuwhera, whiriwhiri tetahi.

Aratohu Dummies: Hangaia nga mekameka DevOps me nga Utauta Puna Tuwhera

Anei te ahua o te tukanga DevOps me te taputapu CI/CD

Aratohu Dummies: Hangaia nga mekameka DevOps me nga Utauta Puna Tuwhera

He taputapu CI / CD kei te localhost, engari kaore ano kia nui te mahi. Kia neke tatou ki te taahiraa e whai ake nei.

Hipanga 2: Putanga

Ko te huarahi tino pai (me te tino ngawari) ki te whakamatautau i te makutu o te taputapu CI/CD ko te whakauru ki tetahi taputapu whakahaere mana puna (SCM). He aha koe e hiahia ai ki te mana putanga? Me kii kei te tono koe. Ka tuhia e koe ki Java, Python, C++, Haere, Ruby, JavaScript, tetahi atu reo ranei he kaata me te kaata iti. Ko nga mea ka tuhia e koe ka kiia ko te waehere puna. I te tuatahi, ina koa kei te mahi ko koe anake, ka taea e koe te tiaki i nga mea katoa ki te raarangi rohe. Engari i te tipu haere o te kaupapa me te maha o nga tangata ka uru mai, me whai huarahi koe ki te tiri i nga huringa waehere engari ka karo i nga papā ina hanumi nga huringa. A me whakahoki ano e koe nga putanga o mua me te kore e whakamahi i nga taapiri me te whakamahi i te tikanga kape-whakapiri mo nga konae waehere.

Na konei kaore he SCM ki hea. Ka tiakina e te SCM te waehere i roto i nga whare putunga, ka whakahaere i nga momo putanga, me te whakarite i waenga i nga kaihanga.

He maha nga taputapu SCM, engari kua tika a Git hei paerewa pono. Ka tohutohu ahau ki a koe ki te whakamahi, engari tera ano etahi atu whiringa.

Aratohu Dummies: Hangaia nga mekameka DevOps me nga Utauta Puna Tuwhera

Anei te ahua o te paipa DevOps i muri i te taapiri i te SCM.

Aratohu Dummies: Hangaia nga mekameka DevOps me nga Utauta Puna Tuwhera

Ka taea e te taputapu CI/CD te whakaaunoa i te tukunga waehere puna me te tango me te mahi tahi a te roopu. Ehara i te kino? Engari inaianei me pehea te hanga tono mahi mai i tenei, e arohaina ana e nga piriona o nga kaiwhakamahi?

Hipanga 3: Hangaia te Utauta Aunoa

Kei te tika nga mea katoa. Ka taea e koe te tuku waehere me te whakarereke i te mana puna, me te tono hoa ki te mahi tahi me koe. Engari kaore ano koe i te taupānga. Kia noho ai tenei hei tono tukutuku, me whakahiato, me whakaemi hei tohatoha, hei whakahaere ranei hei whakahaere. (Kaore e tika kia whakahiatohia he reo whakamaori penei i te JavaScript, PHP ranei.)

Whakamahia he taputapu hanga aunoa. Ko tehea taputapu ka whiriwhiria e koe, ka kohia te waehere ki te whakatakotoranga tika me te horoi aunoa, te whakahiato, te whakamatautau me te tuku. He rereke nga taputapu hanga ma te reo, engari ko nga whiringa puna tuwhera e whai ake nei ka whakamahia.

Aratohu Dummies: Hangaia nga mekameka DevOps me nga Utauta Puna Tuwhera

Tino pai! Inaianei me whakauru nga konae whirihoranga taputapu hanga aunoa ki te mana puna kia hangaia e te taputapu CI/CD.

Aratohu Dummies: Hangaia nga mekameka DevOps me nga Utauta Puna Tuwhera

He pai te ahua. Engari kei hea enei mea katoa ka puta inaianei?

Hipanga 4: Tūmau Taupānga Tukutuku

Na, kei a koe he konae kua kohia ka taea te whakahaere, te huri ranei. Mo te tono kia tino whaihua, me whai momo ratonga, atanga ranei, engari me tuu katoa ki tetahi waahi.

Ka taea te manaaki i tetahi tono tukutuku ki runga i te tūmau tono tukutuku. Ka whakaratohia e te tūmau tono he taiao e taea ai e koe te whakahaere i te arorau kua takai, te tuku hononga, me te whakaatu i nga ratonga tukutuku ki runga i te turanga. Kei te hiahia koe ki tetahi tūmau HTTP me etahi atu taiao (he miihini mariko, hei tauira) hei whakauru i te tūmau tono. I tenei wa, me kii kei te whakahaere koe i enei mea katoa i a koe e haere ana (ahakoa ka korero ahau mo nga ipu kei raro nei).

He maha nga kaiwhakarato tono tukutuku tuwhera.

Aratohu Dummies: Hangaia nga mekameka DevOps me nga Utauta Puna Tuwhera

Kei a matou he mekameka DevOps kua tata mahi. He mahi pai!

Aratohu Dummies: Hangaia nga mekameka DevOps me nga Utauta Puna Tuwhera

Ko te tikanga, ka taea e koe te mutu i konei, ka taea e koe te whakahaere i a koe ano, engari he pai te korero mo te kounga o te waehere.

Hipanga 5: Whakamatau te kapinga

He nui te wa me te whakapau kaha ki te whakamatautau, engari he pai ake te kimi i nga pepeke i te wa tonu ka whakapai ake i te waehere kia pai ai nga kaiwhakamahi mutunga. Mo tenei kaupapa, he maha nga taputapu tuwhera e kore e whakamatautau i te waehere anake, engari ano hoki he tohutohu me pehea te whakapai ake. Ko te nuinga o nga taputapu CI/CD ka taea te whakauru ki enei taputapu me te whakaaunoa i te mahi.

Kua wehea nga whakamatautau ki nga wahanga e rua: nga anga whakamatautau mo te tuhi me te whakahaere i nga whakamatautau, me nga taputapu whai tohu hei whakapai ake i te kounga o te waehere.

Anga Whakamatau

Aratohu Dummies: Hangaia nga mekameka DevOps me nga Utauta Puna Tuwhera

Nga taputapu me nga tohutohu kounga

Aratohu Dummies: Hangaia nga mekameka DevOps me nga Utauta Puna Tuwhera

Ko te nuinga o enei taputapu me nga anga kua tuhia mo Java, Python, me JavaScript na te mea ko te C++ me te C# he mana (ahakoa he puna tuwhera a GCC).

Kua tonohia e matou nga taputapu kapinga whakamatautau, a inaianei ko te paipa DevOps kia rite ki te pikitia i te timatanga o te akoranga.

Nga taahiraa taapiri

Tuhinga

Ka rite ki taku korero i mua, ka taea te whakahaere i tetahi tūmau tono i roto i te miihini mariko, i te tūmau ranei, engari he mea rongonui nga ipu.

He aha nga ipu? Hei poto, i roto i te miihini mariko, he maha nga waahi ka nui ake te waahi o te punaha whakahaere i te tono, a ka nui noa atu te ipu ki etahi whare pukapuka me te whirihoranga. I etahi wa, he mea nui nga miihini mariko, engari ka taea e te ipu te whakauru i te tono me te kaimau kaore he utu taapiri.

Mo nga ipu, ka mauhia a Docker me Kubernetes, ahakoa tera ano etahi atu whiringa.

Aratohu Dummies: Hangaia nga mekameka DevOps me nga Utauta Puna Tuwhera

Pānuihia nga tuhinga mo Docker me Kubernetes i opensource.com:

Nga taputapu aunoatanga Middleware

Ko ta maatau mekameka DevOps e arotahi ana ki te hanga tahi me te tuku tono, engari tera ano etahi mea whakamere ka taea e koe me nga taputapu DevOps. Hei tauira, whakamahia nga taputapu Hangahanga hei Waehere (IaC), e mohiotia ana ko nga taputapu automation middleware. Ko enei taputapu ka awhina i te whakauru aunoa, te whakahaere, me etahi atu mahi mo te middleware. Hei tauira, ka taea e tetahi taputapu aunoa te tango i nga tono (tumau tono paetukutuku, papaa raraunga, taputapu aroturuki) me nga whirihoranga tika ka pana atu ki te tūmau tono.

Anei etahi o nga whiringa mo nga taputapu automation middleware tuwhera:

Aratohu Dummies: Hangaia nga mekameka DevOps me nga Utauta Puna Tuwhera

Nga korero kei roto i nga tuhinga opensource.com:

Na inaianei he aha?

Koinei noa te pito o te hukapapa. He maha atu nga mahi a te mekameka DevOps. Tīmatahia me te taputapu CI/CD ka kite he aha atu ka taea e koe te whakaaunoa kia ngawari ai to mahi. Kaua e wareware e pā ana ki taputapu korero tuwhera mo te mahi tahi whai hua.

Anei etahi atu tuhinga DevOps pai mo te hunga timata:

Ka taea hoki e koe te whakauru DevOps me nga taputapu agile tuwhera:

Source: will.com

Tāpiri i te kōrero