Ang DevOps ay alinman sa isang Paraan o isang Kasangkapan, ito ay isang Kultura



Ang DevOps ay kasanayan ng mga operasyon at inhinyero ng pag-unlad na nakikilahok nang sama-sama sa buong buhay-ikot ng serbisyo, mula sa disenyo sa pamamagitan ng proseso ng pag-unlad hanggang sa suporta sa produksyon. Ang pagdadala ng liksi sa system ay maaaring maituring na kultura ng DevOps.

Ang kultura ay madalas na hindi pinapansin at hindi nauunawaan, ngunit ito ay isang pangunahing kadahilanan na responsable para sa pagganap ng isang kumpanya. Kung hindi namin mapamahalaan ang aming kultura, magtatapos tayo sa paggawa ng mga maling kasanayan na sa huli ay makakaapekto sa aming mga layunin sa negosyo.

Pag-unawa sa kasalukuyang kultura ng isang samahan

Sinasabi sa atin ng kultura ang tungkol sa mga halaga at pamantayan sa loob ng isang pangkat o kumpanya. Kinikilala nito kung ano ang mahalaga pati na rin kung paano lumalapit at gumagana ang mga tao sa bawat isa.





KULTURA = 'Paano magagawang gawin nang matalino para sa tagumpay'

Gawin nating halimbawa ang isang koponan ng suporta sa customer. Ang kultura ng pangkat na iyon ay dapat maging tulad na nagtatapos sila sa pagkamit ng 97-98% ng kasiyahan ng customer.



paghahagis ng doble sa isang int java

Panatilihin sa view ng kasiyahan ng customer, una sa lahat kailangan nila upang maging magalang, kahit na sa mahirap na sitwasyon kailangan nila upang maging mahusay na tagapakinig upang maiwasan ang pagkalito kailangan nilang unahin ang trabaho ayon sa kinakailangan.

Huminto muna tayo sandali at magtanong ng ilang mga katanungan sa ating sarili:

  • Ano ang kultura ng aking kumpanya ngayon?
  • Gaano kahusay na nakahanay ang kulturang ito sa aking mga layunin sa negosyo o KRA?
  • Anong mga problema ang maaari kong asahan dahil sa maling pag-ayos?

Para sa bawat samahan, ang 4Cs ay gumaganap ng mahalagang papel



4C ng samahan

Ngayon, tingnan natin ang kultura ng isang samahang bumubuo ng software. Maraming mga koponan na kasangkot para sa pagbuo at pagpapanatili ng isang solong yunit ng software. Ang lahat ng mga pangkat na ito ay may magkakahiwalay na layunin at magkakahiwalay na kultura.

Nagsisimula ang prosesong ito pagkatapos na kumpirmahin ng kliyente ang mga kinakailangan.

Sinusundan ng mga developer ang mga alituntunin sa pag-coding na tinukoy ng kanilang samahan at mga tool sa pagprograma tulad ng mga compiler, interpreter, debugger atbp. Na ginagamit upang makabuo ng code. Ang iba't ibang mga wikang may mataas na antas ng pagprograma tulad ng C, C ++, Pascal, Java, at PHP ay ginagamit para sa pag-coding.

Hinahati nila ang kumpletong pakete sa maliliit na folder at pagkatapos ay bumuo ng maliit na mga code nang naaayon.

Yugto 1 : Ang mga maliliit na yunit ng code na ito ay pagkatapos na clubbed upang bumuo ng isang malaking yunit. Habang isinasama ang mas maliit na mga chips, ang isang pagsubok sa antas ng proyekto ay dapat gumanap na kilala bilang pagsubok sa pagsasama.

Yugto 2 : Matapos ang matagumpay na pagsasama, inilalagay ito sa isang dummy system. Ang dummy system na ito ay may katulad na pagsasaayos bilang ng client machine o ng makina kung saan ang proyektong ito ay dapat na sa wakas na-deploy.

Yugto 3 : Panghuli, pagkatapos ng pagsubok sa lahat ng mga tampok sa isang dummy system, ang proyekto ay na-deploy sa server ng produksyon o ang makina ng kliyente.

Kahit na ang prosesong ito ay tila napaka-makinis at madali sa mga salita, sa mga teknikal na termino napakahirap makamit.

Tingnan natin kung anong mga problemang maaaring harapin natin:

Yugto 1 :

Palaging naghahanap ang kliyente ng mga pagbabago upang mapabuti ang kalidad ng produkto. Karamihan sa mga oras kung kailan nagawa ang unang pag-ulit, imumungkahi ng kliyente ang ilang mga pagbabago. Kapag natanggap ng mga developer ang mga pagbabago, sinisimulan nilang isama ang mga ito na nakakaapekto sa pagsasama na humahantong sa mga sirang build.

Yugto 2:

Karamihan sa mga oras, ang mga sumusubok o iba pang mga operasyon ay hindi malalaman ang mga bagong pagbabagong gagawin. Sa sandaling makuha nila ang code mula sa mga developer, sinisimulan nilang subukan ang mga ito. Habang nasa back-end ang mga developer ay gumagawa pa rin ng mga pagbabago.

Dahil hindi sila nakakakuha ng sapat na oras upang magpatupad ng mga bagong pagbabago, nagtatapos sila sa pagbuo ng mga hindi mabisang code na kinakaharap nila sa iba pang mga isyu sa network at database na muling naantala ang kanilang oras ng paghahatid.

Kapag naihatid na nila sa wakas ang mga code sa koponan ng pagpapatakbo, naiwan sila ng napakaliit na oras upang lumikha at magpatupad ng mga bagong kaso ng pagsubok. Kaya't nilaktawan nila ang marami sa mga kaso ng pagsubok na napagtanto nila sa paglaon na ang mga may mataas na prayoridad.

Yugto 3:

Kahit na halos ang pagbuo ay tila handa nang pumunta sa produksyon, ngunit ang mga resulta ay ganap na hindi inaasahan. Nabigo ang build at maraming bilang ng mga bug ang nagaganap.

Pagkatapos para sa bawat bug na naganap, kailangan nilang subaybayan kung bakit nangyari iyon, kung saan ito naganap, kung anong mga pagbabago ang kailangang gawin upang mapagtagumpayan ito, magkakaroon ba ng pagbabago sa mga code ng iba upang gawin itong katugma sa mga nauna. Sa wakas, para sa lahat ng mga bug na ito, isang ulat sa bug ang kailangang mabuo.

Ang kabiguan ay dahil sa mga pagkakamali ng system dahil sa kamangmangan ng developer ng database sa kahusayan ng code, kamangmangan ng tester sa bilang ng mga kaso ng pagsubok, atbp.

Tulad ng palaging pinapanatili ng kliyente ng masikip na deadline, ang mga empleyado na kasangkot sa pagkamit sa kanila ay nakatuon lamang sa pangwakas na paglabas kahit na kailangan nilang ikompromiso ang pangkalahatang kalidad.

Kahit na ito ay tila isang problema sa koordinasyon ng trabaho, ito talaga ang pagkabigo ng kulturang pinagtibay.

Nangyayari ito dahil sa malaking pagtitiwala sa mga manu-manong proseso. Ang pagpapatakbo ng pabalik-balik sa parehong koponan dahil sa kakulangan ng kaalaman ng iba't ibang kawalan ng access sa larangan o maaaring kawalan ng interes ay nagdaragdag ng ating sariling pasanin at sakit.

Panahon na na kailangan nating maging maraming nalalaman. Maaaring mahirap maging master ng lahat ng proseso na kasangkot sa isang system, ngunit maaari tayong maging jack ng lahat, mastering ang isa sa kanila. Pagkatapos ay maaari lamang nating mai-automate ang aming system o gawin itong sapat na matalino upang makabawi sa halip na mga rollback.

Ngayon, maaaring iniisip mo kung bakit?

Ito ay sapagkat, ang isa na iyong pinangangasiwaan ay lubos na nakasalalay sa iba. Kaya upang malaman ang tungkol sa punto ng pagtitiwala, kailangan nating maunawaan ang buong sistema.

Kaya't mag-isip tayo ng isang proseso upang mabago ang kultura. Bago ito mayroon ka bang sagot sa mga katanungan sa ibaba?

  • Saan nabigo ang iyong kasalukuyang kultura?
  • Bakit mo nais na baguhin ang proseso?
  • Malinaw mo bang nakilala ang lahat ng kinakailangang pagbabago?
  • Nakakuha ka ba ng feedback at buy-in mula sa lahat ng mga apektadong stake-holder?
  • Napatunayan mo ba ang disiplina sa proseso, data at sistema ng pagsukat para sa pagbabago?

Kaya, ngayon kapag mayroon kaming sagot sa lahat, naisip namin ang isang rebolusyon sa aming system. Paano magaganap ang rebolusyong ito? Maaari lamang itong makamit kapag pinatay natin kung ano tayo ngayon. Maraming oras ang nasayang sa paglipat ng code sa mga koponan. Kailangan nating dalhin ang proseso kung saan maaari nating gawin ang tuluy-tuloy na pagsasama at patuloy na pag-deploy.

Ang prosesong ito ng patuloy na pagsasama at pag-deploy ay ginagawang mas mabilis. Ang pagdadala ng liksi na ito ay itinuturing na kultura ng DevOps.

Ang DevOps ay kasanayan ng mga operasyon at inhinyero ng pag-unlad na nakikilahok nang sama-sama sa buong lifecycle ng serbisyo, mula sa disenyo sa pamamagitan ng proseso ng pag-unlad hanggang sa suporta sa produksyon.

ano ang klase ng pojo sa java na may halimbawa

Hindi madaling baguhin ang operating system sa paglipas ng panahon. Ang paggawa ng isang matagumpay na paglipat ay upang ayusin ang system, sa halip na muling itayo.

Tingnan natin ngayon kung paano natin ito makakamit. Maaaring may dalawang paraan upang lumapit.

1) Itaas hanggang sa pababa

2) Ibaba

Ang pagsisid ng mas malalim sa mga diskarteng ito, malalaman natin kung alin ang pinakaangkop para sa aming samahan.

Sa pang-itaas na diskarte, maaari kaming pumunta sa mas mataas na pamamahala at hilingin sa kanila para sa paggawa ng mga pagbabago sa lahat ng mga koponan. Kung kumbinsido ang pamamahala noon, maaari nating simulang magtrabaho dito.

Ngunit ang posibilidad na makuha ang sagot bilang 'HINDI' ay medyo mataas. Ito ay dahil ang pagbabago ng system ay maaaring humantong sa samahan sa kawalang-tatag.

Kailangan nilang tingnan ang istraktura ng samahan, kita, antas ng interes ng kliyente, atbp. Ngunit ang pinakamahalagang salik na nagbabalik sa kanila mula sa pagtarik sa lumang system ay hindi nila makita ang malaking larawan ng kung ano ang maaaring makamit at kung paano ito makakamtan sa mas bago.

Sa kasong ito, maaari naming hanapin ang pangalawang diskarte upang makuha ang malaking larawan.

Tumawag para sa boluntaryo ang ilalim na diskarte. Narito kailangan naming kumuha ng isang maliit na koponan at isang maliit na gawain at ipatupad ito sa Modelong DevOps.

Sa pagtingin sa teknikal na bahagi ng modelong ito, mayroon kaming iba't ibang mga hanay ng mga sopistikadong tool na ginagawang mas mahusay at mas mabilis ang trabaho. Ngunit, ang mga tool lamang ay hindi sapat na may kakayahang lumikha ng isang nakikipagtulungan na kapaligiran na tinukoy bilang DevOps.

Ang paglikha ng gayong kapaligiran ay nangangailangan sa iyo na mag-isip sa labas ng kahon hal. tinatasa at muling binabago kung paano iniisip ng mga tao ang kanilang mga koponan, ang negosyo at ang mga customer.

Ang pagsasama-sama ng isang bagong hanay ng mga tool ay mas simple kaysa sa pagbabago ng kultura ng organisasyon. Sa pamamagitan ng pagtataguyod ng mga tagabuo ng master na panlipunan, pinapayagan na maisama ang hindi mabisang code, naglalagay ng mga code na hindi maayos na nasubukan, na naglalagay ng mga pagsisi sa ulo ng bawat isa, isinasaalang-alang ang koponan ng pagpapatakbo upang maging tanga ay hindi ang pinakamahusay na kasanayan na sinusunod namin upang paganahin ang negosyo at lumikha ng halaga para sa aming mga customer.

Hindi ang mga tool, ang mga tao na gumagamit ng mga ito ang gumagawa ng proseso na kumplikado. Upang sabihin sa isang antas ng abstract kaysa sa pagkolekta ng mga ideya at pag-uugali, ang pagiging bukas sa mga ito ay magdadala sa amin sa isang maliwanag na landas.

Magsimula tayo sa isang pangkat ng 6 na miyembro at isang kwentong 3-point. Una, kailangan nating putulin ang koponan na tinawag namin bilang mga developer, operasyon, tester, atbp Isinasaalang-alang namin ang lahat sa kanila bilang isa, sabihin ang 'DevOps'. Kapag natanggap namin ang mga kinakailangan kailangan namin upang pag-aralan ang mga zone ng peligro. Isinasaalang-alang ang mas malalim na mga seksyon ng dagat at hellip .. Nagsisimula kaming maglayag.

Ngayon, dapat na iniisip mo 'kung ano ang x-factor ng tuluy-tuloy na pagsasama at tuluy-tuloy na pag-deploy na nagpapababa ng posibilidad ng pagkabigo'.

hindi nakakain vs chef vs papet

Sa pinabuting paningin at proseso, maaari nating lapitan ang pamamahala na naglalagay ng malinaw na larawan ng mga resulta tulad ng kung gaano kahusay ang proseso, kung paano nabawasan ang peligro ng pagkabigo, kung paano nakumpleto ang gawain bago ang timeline, atbp.

Ngayon, maaari nating malinaw na mailarawan kung paano ang buong proseso ay na-optimize sa teknikal at kulturang lupa sa pamamagitan ng pagkakaroon ng paggunita pagkatapos ng bawat pag-ulit.

Espesyal na na-curate si Edureka na makakatulong sa iyo na makabisado ng mga konsepto sa paligid ng Puppet, Jenkins, Ansible, SaltStack, Chef bukod sa iba pa.

May tanong ba sa amin? Nabanggit ang mga ito sa seksyon ng mga komento at babalikan ka namin.

Mga Kaugnay na Post: