• DevOps

Managed DevOpsin haasteiden voittaminen: kattava opas

  • Felix Rose-Collins
  • 6 min read

Intro

Ohjelmistokehityksen ja IT-operaatioiden nopeasti kehittyvässä ympäristössä organisaatiot käyttävät yhä useammin hallinnoituja DevOps-palveluja prosessiensa virtaviivaistamiseksi, yhteistyön tehostamiseksi ja toimitusputkien nopeuttamiseksi. Olen viimeiset seitsemän vuotta auttanut yrityksiä toteuttamaan DevOps-muutoksia, ja voin kertoa sinulle omakohtaisesti, ettei se ole koskaan niin suoraviivaista kuin kiiltävistä esitteistä voi päätellä. Vaikka hallinnoitu DevOps tarjoaa valtavia etuja kustannussäästöistä nopeampiin käyttöönottosykleihin, organisaatiot kohtaavat usein merkittäviä esteitä toteutuksen ja jatkuvan toiminnan aikana. Tässä kattavassa oppaassa hyödynnän todellisia kokemuksiani, jotta voit selviytyä hallitun DevOpsin yleisimmistä haasteista ja toteuttaa käytännön ratkaisuja, jotka todella toimivat tuotantoympäristöissä.

Todellisuusvaje hallinnoitujen DevOps-odotusten suhteen

Yksi suurimmista ongelmista, joihin törmään neuvoessani asiakkaita, on odotusten ja todellisuuden välinen kuilu. Monet organisaatiot ryhtyvät hallinnoituun DevOps-toimintaan epärealistisin aikatauluin ja odotuksin.

Viime vuonna työskentelin keskikokoisen fintech-yrityksen kanssa, joka odotti muuttavansa julkaisusyklinsä kuukausittaisista päivittäisiin käyttöönottoihin vain kuuden viikon kuluessa siitä, kun se oli ottanut käyttöön hallitun DevOps-palveluntarjoajan. Todellisuus? Tavoitteen saavuttaminen kesti lähes kuusi kuukautta. Miksi? Koska he aliarvioivat useita kriittisiä tekijöitä:

  1. Legacy-järjestelmän monimutkaisuus: Heidän ydinpankkijärjestelmänsä oli yli 15 vuotta teknistä velkaa, eikä siinä ollut käytännössä lainkaan automaatiota.

  2. Joukkueen taitojen puutteet: Heidän kehittäjillään oli vain vähän kokemusta konttijärjestelmistä, infrastructure-as-code- tai CI/CD-käytännöistä.

  3. Organisaation vastarinta: Keskijohto vastusti hiljaisesti vakiintuneiden prosessien muuttamista.

Realistinen odotusten asettaminen

Välttääkseni samanlaisia pettymyksiä neuvon nyt asiakkaitani:

  • Suorita perusteellinen arviointi: Ennen kuin teet sopimuksen hallitun DevOps-palveluntarjoajan kanssa, tee yksityiskohtainen analyysi nykytilasta, mukaan lukien tekninen velka, osaamisvajeet ja organisaation valmiudet.

  • Luo vaiheittainen toteutussuunnitelma: Jaa siirtyminen 30, 60 ja 90 päivän välitavoitteisiin, joilla on selkeät, mitattavissa olevat tavoitteet.

  • Varaa budjetti oppimiskäyrään: Odota 20-30 prosentin tuottavuuden vähenemistä alkuvaiheen aikana, kun tiimit sopeutuvat uusiin työkaluihin ja prosesseihin.

Eräs terveydenhuoltoalan asiakkaani käytti tätä vaiheittaista lähestymistapaa ja sai aikaan paljon sujuvamman siirtymän. Aloitimme yksinkertaisella CI-putkella ei-kriittiselle sisäiselle sovellukselle ja laajensimme sitten vähitellen monimutkaisempiin järjestelmiin, kun tiimi sai lisää luottamusta ja osaamista.

Kulttuurinen vastarinta: DevOps Killer: Hiljainen DevOps-tappaja

Kokemukseni mukaan hallitun DevOpsin tekniset haasteet ovat harvoin kaikkein vaikeimpia ratkaista. Todelliset esteet ovat yleensä inhimillisiä ja organisatorisia.

Eräs teollisuusasiakas otti minut mukaansa sen jälkeen, kun heidän hallinnoitu DevOps-aloitteensa oli pysähtynyt kuukausiksi. Paperilla kaikki näytti oikealta - heillä oli kaikki työkalut, hyvämaineinen palveluntarjoaja ja johdon tuki. Ongelma? Syvään juurtunut kulttuurinen vastarinta kehitys- ja toimintatiimien välillä.

Kehittäjät pitivät uusia CI/CD-putkia "luovuutta rajoittavina", kun taas operatiiviset toiminnot pitivät automaattisia käyttöönottoja "riskialttiina oikotienä", jotka aiheuttaisivat ongelmia, jotka heidän olisi korjattava. Kumpaakaan ryhmää ei ollut otettu kunnolla mukaan päätöksentekoprosessiin.

Pysyvän DevOps-kulttuurin rakentaminen

Seuraavassa kerrotaan, mikä todella auttoi voittamaan tämän vastarinnan:

  • Luo yhteinen omistusoikeus: Muodostimme poikkitoiminnallisia tiimejä, joilla oli yhteiset vastuualueet ja suorituskykyindikaattorit, jotka yhdistivät kehityksen ja operatiivisen menestyksen.

  • Osoita varhaisia voittoja: Kehittäjät saivat nopeampaa palautetta koodistaan, ja operaattorit saivat vähemmän keskiyön hätäpuheluita.

  • Tarjota käytännön koulutusta: Teoreettisen koulutuksen sijaan käytimme todellisia tuotantokysymyksiä oppimismahdollisuuksina yhteiseen ongelmanratkaisuun.

  • Juhli menestystä julkisesti: Loimme "käyttöönottovoiton" kojelaudan, jossa seurattiin onnistuneita käyttöönottoja, vähentyneitä häiriötilanteita ja säästettyä aikaa.

Kuusi kuukautta myöhemmin samat tiimit, jotka olivat heikentäneet DevOps-siirtymää, olivat sen suurimpia puolestapuhujia. Tärkein opetus? Tekniset toteutukset, joissa ei ole kulttuurista linjakkuutta, ovat aina vaikeuksissa.

Turvallisuusintegraation haasteet nopeasti liikkuvissa putkistoissa

Tietoturva on edelleen yksi ongelmallisimmista osa-alueista hallituissa DevOps-toteutuksissa. En osaa laskea, kuinka monta kertaa olen nähnyt organisaatioiden ottavan käyttöön nopeat toimitussyklit vain luodakseen uusia tietoturva-aukkoja.

Eräs vähittäiskauppa-asiakas, jonka kanssa työskentelin viime vuonna, lisäsi käyttöönottoväliä kuukausittaisesta viikoittaiseen käyttämällä hallittua DevOpsia, mutta otti vahingossa käyttöön kolme kriittistä tietoturva-aukkoa tuotannossa, koska heidän tietoturvaprosessinsa eivät pysyneet nopeutetun kehityssyklin tahdissa.

Käytännön DevSecOps-integraatio

Useiden toteuttamieni onnistuneiden tietoturvaintegraatioiden perusteella tässä on, mikä toimii:

  • Turvallisuuden siirtäminen vasemmalle: Integroi automaattinen tietoturvaskannaus jokaiseen vaiheeseen, alkaen IDE-liitännäisistä, jotka varoittavat kehittäjiä ongelmista ennen kuin he edes sitoutuvat koodiin.

  • Automatisoi vaatimustenmukaisuuden todentaminen: Säännellyillä toimialoilla kannattaa ottaa käyttöön automatisoidut vaatimustenmukaisuustarkastukset, jotka validoivat kokoonpanot vaadittujen standardien mukaisiksi ennen käyttöönoton sallimista.

  • Toteuta turvallisuus koodina: Käsittele tietoturvamäärityksiä ja -käytäntöjä koodina, joka elää sovelluskoodin rinnalla ja noudattaa samoja tarkistus- ja testausprosesseja.

  • Luo turvallisuuden mestareita: Määritä ja kouluta tiimin jäseniä, jotka toimivat tietoturvan puolestapuhujina tiimissään ja tuovat tietoturvatietoisuuden osaksi päivittäistä kehitystyötä.

Näiden käytäntöjen käyttöönoton jälkeen vähittäiskauppa-asiakas pystyi säilyttämään viikoittaisen käyttöönottosyklinsä ja samalla parantamaan tietoturva-asennettaan. Heidän tietoturvaryhmänsä muuttui turvallisen ja nopean toimituksen mahdollistajiksi, eikä heitä enää pidetty estävinä tekijöinä.

Tekninen velka: DevOps-toteutuksen tiellä oleva este

Lähes kaikki organisaatiot, joita olen konsultoinut, ovat aliarvioineet, miten niiden olemassa oleva tekninen velka vaikuttaisi DevOps-muutokseen. Vanhat järjestelmät, manuaaliset prosessit ja huono dokumentaatio voivat hidastaa merkittävästi hallittua DevOps-toteutusta.

Eräs rahoituspalveluyritys, jonka kanssa työskentelin, kamppaili kuukausien ajan integroidakseen vanhat suurkonejärjestelmänsä uuteen CI/CD-putkistoonsa. Järjestelmistä puuttuivat asianmukaiset API-liitännät, niiden automaattinen testaus oli vähäistä ja ne perustuivat muutaman eläkkeelle jäämässä olevan vanhemman insinöörin heimotietoon.

Teknisen velan strateginen käsittely

Sen sijaan, että ottaisimme kaikki tai ei mitään -lähestymistavan, toteutimme seuraavan strategian:

  • Kartoita omaisuutesi: Luetteloi kaikki sovellukset ja infrastruktuurikomponentit ja arvioi jokaisen DevOps-valmius yksinkertaisen punaisen, keltaisen ja vihreän järjestelmän avulla.

  • Luo integraatiorajat: Luo puhtaita rajapintoja ja API-kerroksia, joiden avulla uudemmat järjestelmät voivat olla vuorovaikutuksessa niiden kanssa.

  • Aseta asiat strategisesti tärkeysjärjestykseen: Keskitä ensimmäiset DevOps-ponnistelut korkean liiketoiminta-arvon omaaviin, vähemmän monimutkaisiin järjestelmiin, joissa voit osoittaa menestystä nopeasti.

  • Varaa aikaa velan vähentämiseen: Varaa 20 % sprintin kapasiteetista nimenomaan teknisen velan vähentämiseen ja keskity ensin vaikutuksiltaan suurimpiin kohteisiin.

Tämän lähestymistavan avulla rahoituspalveluyritys saattoi vuoden sisällä 60 prosenttia sovellussalkustaan nykyaikaisten DevOps-käytäntöjen piiriin ja loi samalla kestävän suunnitelman jäljellä oleville vanhoille järjestelmille.

Työkalujen hajautuminen ja integraation monimutkaisuus

Toinen havaitsemani yleinen haaste on sellaisten DevOps-työkalujen lisääntyminen, jotka eivät toimi hyvin yhteen. Eräällä televiestintäalan asiakkaalla oli 14 erilaista työkalua CI/CD-putken, seurannan, tietoturvaskannauksen ja infrastruktuurin hallinnan eri osa-alueilla, joista suurin osa vaati manuaalista siirtymistä järjestelmien välillä.

DevOps-työkaluketjun kesyttäminen

Johtamieni menestyksekkäiden työkaluketjujen yhdistämisten perusteella tässä on, mikä toimii:

  • Aseta integraatiovalmiudet etusijalle: Kun valitset työkaluja, aseta etusijalle työkalut, joilla on vankat API:t ja valmiit integraatiot olemassa oleviin työkaluihisi.

  • Toteutetaan alustamallia koskeva lähestymistapa: Harkitse DevOps-alustoja, jotka tarjoavat useita ominaisuuksia integroidussa paketissa sen sijaan, että kokoaisit parhaita pistemäisiä ratkaisuja.

  • Automatisoi työkaluketjun testaus: Luo automatisoituja testejä itse DevOps-työkaluketjulle varmistaaksesi, että integraatiot jatkavat toimintaansa, kun työkaluja päivitetään.

  • Dokumentoi työnkulut alusta loppuun: Luo selkeä visuaalinen dokumentaatio, josta käy ilmi, miten työ kulkee koko työkaluketjun läpi, ja yksilöi manuaaliset siirrot, jotka voitaisiin automatisoida.

Konsolidoituaan työkaluketjunsa viiteen hyvin integroituun työkaluun televiestintäalan asiakkaani lyhensi käyttöönottoaikaa 70 prosenttia ja poisti lukuisia virhealttiita manuaalisia vaiheita järjestelmien välillä.

Skaalaushaasteet yritysympäristöissä

DevOps-käytäntöjen skaalautuminen ensimmäisiä pilottitiimejä pidemmälle asettaa ainutlaatuisia haasteita, joita monet organisaatiot aliarvioivat. Eräs terveydenhuoltoalan yritys, jonka kanssa työskentelin, otti DevOps-käytännöt menestyksekkäästi käyttöön yhdessä sovellustiimissä, mutta huomasi mallin hajoavan, kun se yritettiin skaalata yli 20 tiimiin.

DevOpsin skaalautuminen onnistuneesti

Tämä on lähestymistapa, joka lopulta toimi:

  • Luo sisäinen DevOps-alustatiimi: Perustetaan tiimi, joka keskittyy rakentamaan uudelleenkäytettäviä putkia, infrastruktuurimalleja ja automaatiota, joita muut tiimit voivat hyödyntää.

  • Toteuta innersource-käytäntöjä: Kannusta tiimejä jakamaan automaatiokoodia, konfiguraatioita ja parhaita käytäntöjä sisäisissä arkistoissa, joissa on selkeät osallistumisohjeet.

  • Vakioi viisaasti: Määritä, mitkä DevOps-prosessin osat olisi standardoitava tiimeissä (turvallisuusvaatimukset, käyttöönoton hyväksyntä) ja mitkä osat tiimeissä olisi voitava joustaa (testauskehysten valinta, sisäiset työnkulut).

  • Rakenna käytäntöyhteisö: Luo säännöllisiä foorumeita, joissa DevOps-ammattilaiset eri tiimeissä voivat jakaa onnistumisia ja kokemuksia sekä tehdä yhteistyötä yhteisissä haasteissa.

Näiden käytäntöjen käyttöönoton jälkeen terveydenhuolto-organisaatio onnistui skaalaamaan DevOps-käytännöt kaikkiin 24 sovellustiimiin 18 kuukaudessa säilyttäen samalla yhdenmukaiset laatu- ja turvallisuusstandardit.

Kustannusten hallinta ja optimointi

Vaikka hallinnoitu DevOps lupaa usein kustannussäästöjä, olen havainnut, että monissa organisaatioissa kustannukset kasvavat aluksi ilman asianmukaista hallintoa ja optimointikäytäntöjä. Erään vähittäiskaupan asiakkaani pilvi-infrastruktuurin kustannukset kaksinkertaistuivat DevOps-toteutusta seuranneiden kolmen kuukauden aikana, kun kehittäjät saivat kyvyn varata resursseja itse.

Kustannusten hallinta innovointia rajoittamatta

Tämä on toiminut asiakkaideni kanssa:

  • Ota käyttöön merkintä ja palautus: Vaadi, että kaikki infrastruktuuri merkitään tiimin, sovelluksen ja ympäristön mukaan, jotta kustannuksia voidaan seurata ja jotta tiimit ovat tietoisia omista menoistaan.

  • Aseta automaattinen kustannusten hallinnointi: Luo automatisoituja käytäntöjä, jotka havaitsevat kustannuspoikkeamat ja varoittavat niistä tai pakottavat sulkemaan tuotantoon kuulumattomat resurssit virka-ajan ulkopuolella.

  • Rakenna kustannusoptimointi osaksi suunnitteluputkea: Integroi infrastruktuurin kustannusanalyysityökalut suoraan CI/CD-putkiin ja tunnista tehottomat kokoonpanot ennen käyttöönottoa.

  • Luo kustannusmestareita: Samoin kuin turvallisuusmestarit, nimeä tiimin jäsenet, jotka vastaavat kustannustietoisuudesta ja optimoinnista tiimissään.

Näiden käytäntöjen käyttöönoton jälkeen vähittäiskauppa-asiakkaani vähensi pilvipalvelukustannuksiaan 40 prosenttia ja lisäsi samalla käyttöönottotiheyttä ja sovellusten suorituskykyä.

Johtopäätökset: Hallittu DevOps toimii todellisissa organisaatioissa.

Vuosien ajan olen auttanut organisaatioita toteuttamaan ja optimoimaan hallittua DevOpsia, ja olen havainnut, että menestys vaatii yhtä paljon huomiota teknisiin, kulttuurisiin ja prosessuaalisiin haasteisiin. Organisaatiot, jotka lähestyvät hallittua DevOpsia puhtaasti teknisenä toteutuksena, joutuvat väistämättä kamppailemaan, kun taas organisaatiot, jotka käsittelevät inhimillisiä ja organisatorisia tekijöitä teknisten komponenttien ohella, saavuttavat pysyvää menestystä.

Tapaa Ranktracker

All-in-One-alusta tehokkaaseen hakukoneoptimointiin

Jokaisen menestyvän yrityksen takana on vahva SEO-kampanja. Mutta kun tarjolla on lukemattomia optimointityökaluja ja -tekniikoita, voi olla vaikea tietää, mistä aloittaa. No, älä pelkää enää, sillä minulla on juuri oikea apu. Esittelen Ranktracker all-in-one -alustan tehokasta SEO:ta varten.

Olemme vihdoin avanneet Ranktrackerin rekisteröinnin täysin ilmaiseksi!

Luo ilmainen tili

Tai Kirjaudu sisään omilla tunnuksillasi

Onnistuneimmilla hallituilla DevOps-toteutuksilla, joissa olen ollut mukana, on yhteisiä piirteitä:

  • DevOps-tavoitteiden ja liiketoiminnan tavoitteiden selkeä yhteensovittaminen.

  • Johdon sponsorointi yhdistettynä ruohonjuuritason innostukseen

  • Realistiset aikataulut, joissa otetaan huomioon organisaation oppimiskäyrät.

  • Tasapainoinen keskittyminen ihmisiin, prosesseihin ja teknologiaan.

  • Valmius mukautua palautteen ja mitattujen tulosten perusteella.

Ennakoimalla ja käsittelemällä ennakoivasti tässä oppaassa esitettyjä haasteita organisaatiot voivat merkittävästi lisätä mahdollisuuksiaan hyödyntää hallitun DevOpsin kaikkia hyötyjä: nopeampaa toimitusta, parempaa laatua, parempaa tietoturvaa ja viime kädessä parempia liiketoimintatuloksia.

Felix Rose-Collins

Felix Rose-Collins

Ranktracker's CEO/CMO & Co-founder

Felix Rose-Collins is the Co-founder and CEO/CMO of Ranktracker. With over 15 years of SEO experience, he has single-handedly scaled the Ranktracker site to over 500,000 monthly visits, with 390,000 of these stemming from organic searches each month.

Aloita Ranktrackerin käyttö... ilmaiseksi!

Selvitä, mikä estää verkkosivustoasi sijoittumasta.

Luo ilmainen tili

Tai Kirjaudu sisään omilla tunnuksillasi

Different views of Ranktracker app