{"id":36933,"date":"2019-10-31T22:14:50","date_gmt":"2019-10-31T19:14:50","guid":{"rendered":"https:\/\/prohoster.info\/blog\/slyorm-devops-ot-git-do-sre-so-vsemi-ostanovkami\/"},"modified":"2019-10-31T22:14:50","modified_gmt":"2019-10-31T19:14:50","slug":"slyorm-devops-ot-git-do-sre-so-vsemi-ostanovkami","status":"publish","type":"post","link":"https:\/\/prohoster.info\/sv\/blog\/administrirovanie\/slyorm-devops-ot-git-do-sre-so-vsemi-ostanovkami","title":{"rendered":"Sl\u00f6erm DevOps: fr\u00e5n Git till SRE med alla stopp","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>4-6 september i Sankt Petersburg, i konferenssalen Selectel, kommer det att h\u00e5llas en tre dagar l\u00e5ng <noindex><a rel=\"nofollow\" href=\"http:\/\/slurm.io\/devops\">Sl\u00f6erm DevOps<\/a><\/noindex>.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Sl\u00f6erm DevOps: fr\u00e5n Git till SRE med alla stopp\" src=\"\/wp-content\/uploads\/2019\/08\/3306f0eab4bfd6360eda928fdc317a59.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Vi har byggt programmet med tanken att teoretiska verk inom DevOps, liksom manualer f\u00f6r verktyg, kan l\u00e4sas av var och en p\u00e5 egen hand. Det som \u00e4r intressant \u00e4r bara erfarenhet och praktik: f\u00f6rklaringar om hur man ska g\u00f6ra och inte g\u00f6ra, samt ber\u00e4ttelser om hur vi g\u00f6r.<\/p>\n<p><\/p>\n<p>I varje f\u00f6retag, hos varje administrat\u00f6r eller utvecklare finns det en egen niv\u00e5 av DevOps. Vissa anv\u00e4nder Git felaktigt, andra implementerar SRE. Kursen \u00e4r organiserad s\u00e5 att varje deltagare hittar n\u00e5got relevant som kan implementeras h\u00e4r och nu.<\/p>\n<p><\/p>\n<p>Vi b\u00f6rjar med Git, ser sedan p\u00e5 applikationsutveckling, samverkan mellan kod och infrastruktur, bygger CI\/CD, beskriver infrastruktur som kod (IaC), testar den resulterande l\u00f6sningen, s\u00e4tter upp \u00f6vervakning, samlar in och analyserar loggar, och i slutet n\u00e5r vi fram till SRE: vi f\u00f6rvandlar p\u00e5litlighet till en m\u00e4tbar och hanterbar historia.<\/p>\n<p><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h2 id=\"git\">Git<\/h2>\n<p><\/p>\n<p>Just nu \u00e4r det bara de som k\u00f6pte sin f\u00f6rsta laptop ig\u00e5r som inte anv\u00e4nder Git. Det \u00e4r ett trivialt och allm\u00e4nt verktyg, och \u00e4nd\u00e5 st\u00f6ter vi ofta p\u00e5 dess felaktiga anv\u00e4ndning: fr\u00e5n att tvinga push i master till att kopiera filer fr\u00e5n Git till servern via Ctrl-C, Ctrl-V.<\/p>\n<p><\/p>\n<p>Vi ber\u00e4ttar hur man inte ska g\u00f6ra, hur man ska g\u00f6ra, hur man g\u00f6r i Southbridge.<br \/>\nVi g\u00e5r igenom praktiken: grunderna i Git, teamarbete.<\/p>\n<p><\/p>\n<p><strong>\u00c4mne nr 1: Grunderna i att arbeta med Git<\/strong><\/p>\n<p><\/p>\n<ul>\n<li>Grundl\u00e4ggande kommandon git init, commit, add, diff, log, status, pull, push<\/li>\n<li>Git flow, grenar och taggar, sammanslagningsstrategier<\/li>\n<li>Arbete med flera remote repo<\/li>\n<\/ul>\n<p><\/p>\n<p><strong>\u00c4mne nr 2: Teamarbete med Git<\/strong><\/p>\n<p><\/p>\n<ul>\n<li>GitHub flow<\/li>\n<li>Fork, remote, pull request<\/li>\n<li>Konflikter, releaser, en g\u00e5ng till om Gitflow och andra fl\u00f6den som g\u00e4ller team<\/li>\n<\/ul>\n<p><\/p>\n<p>Materialet \u00e4r organiserat s\u00e5 att administrat\u00f6rer och utvecklare omedelbart kan implementera alla praktiker i sitt arbete.<\/p>\n<p><\/p>\n<p>Ur ett DevOps-perspektiv strukturerar och automatiserar korrekt arbete med Git utvecklings- och administrationsprocesser, utesluter ett antal \u00e5terkommande problem och \u00f6kar produktiviteten.<\/p>\n<p><\/p>\n<h2 id=\"devops-razrabotchika\">DevOps-utvecklare<\/h2>\n<p><\/p>\n<p>Vi ser p\u00e5 DevOps genom en utvecklares \u00f6gon: s\u00e4tter ig\u00e5ng en lokal milj\u00f6, skriver applikationen, st\u00e4ller in \u00f6vervakning och loggning, testar lokalt, organiserar lagring av variabler\/hemligheter och service discovery, ser p\u00e5 sp\u00e5rning (opentracing).<\/p>\n<p><\/p>\n<p><strong>\u00c4mne nr 3: Att arbeta med applikationen ur utvecklarens perspektiv<\/strong><\/p>\n<p><\/p>\n<ul>\n<li>Inst\u00e4llning av lokal milj\u00f6: praktiska rekommendationer<\/li>\n<li>Vi skriver en mikrotj\u00e4nst i Python (inklusive tester)<\/li>\n<li>Anv\u00e4ndning av docker-compose i utveckling<\/li>\n<\/ul>\n<p><\/p>\n<p><strong>\u00c4mne nr 4: Interaktionen mellan kod och infrastruktur<\/strong><\/p>\n<p><\/p>\n<ul>\n<li>Praktik f\u00f6r arbete med konfigurationer<\/li>\n<\/ul>\n<p><\/p>\n<p>Som resultat kommer utvecklarna att se hur koden ska skicka loggar, hur den ska testas, och hur den kommer att debuggas fram\u00f6ver. Administrat\u00f6rerna kommer att f\u00f6rst\u00e5 utvecklarnas behov: vilka fel som kan uppst\u00e5 i koden, hur man organiserar tester f\u00f6r utvecklarna och hur man sj\u00e4lv testar projektet.<\/p>\n<p><\/p>\n<p>I detta skede l\u00f6ser man den huvudsakliga uppgiften f\u00f6r DevOps: man etablerar \u00f6msesidig f\u00f6rst\u00e5else och samarbete mellan dev och ops. Detta \u00e4r ett nyckelsteg mot att g\u00e5 fr\u00e5n ett utbyta av uppgifter till ett ansvarigt samarbete.<\/p>\n<p><\/p>\n<p>Som ett resultat \u00f6kar hastigheten och kvaliteten p\u00e5 arbetet.<\/p>\n<p><\/p>\n<h2 id=\"cicd\">CI\/CD<\/h2>\n<p><\/p>\n<p>Modern automatisering inneb\u00e4r CI\/CD. Vi b\u00f6rjar med att titta p\u00e5 manuell automatisering: makefiler, git hooks, skript. Vi g\u00e5r igenom n\u00e4r dessa verktyg fortfarande \u00e4r aktuella och n\u00e4r de inte b\u00f6r anv\u00e4ndas.<\/p>\n<p><\/p>\n<p>Sedan ser vi p\u00e5 de b\u00e4sta metoderna f\u00f6r modern CI med exempel fr\u00e5n Gitlab.<\/p>\n<p><\/p>\n<p><strong>\u00c4mne nr 5: CI\/CD introduktion till automatisering<\/strong><\/p>\n<p><\/p>\n<ul>\n<li>Introduktion till automatisering<\/li>\n<li>Verktyg (bash, make, gradle)<\/li>\n<li>Anv\u00e4ndning av git-hooks f\u00f6r att automatisera processer<\/li>\n<li>Fabriksbaserade konveyorlinjer och deras till\u00e4mpning inom IT<\/li>\n<li>Exempel p\u00e5 att bygga en \"gemensam\" pipeline<\/li>\n<li>Modern mjukvara f\u00f6r CI\/CD: Drone CI, BitBucket Pipelines, Travis m.fl.<\/li>\n<\/ul>\n<p><\/p>\n<p><strong>\u00c4mne nr 6: CI\/CD: Arbeta med Gitlab<\/strong><\/p>\n<p><\/p>\n<ul>\n<li>Gitlab CI - \u00f6versikt<\/li>\n<li>Gitlab Runner, deras typer och till\u00e4mpning<\/li>\n<li>Gitlab CI, konfigurationsspecifika egenskaper, b\u00e4sta metoder<\/li>\n<li>Steg i Gitlab CI<\/li>\n<li>Gitlab CI-variabler<\/li>\n<li>Bygg, testning, distribution<\/li>\n<li>Kontroll och begr\u00e4nsningar av k\u00f6rning: only, when<\/li>\n<li>Arbete med artefakter<\/li>\n<li>Mallar inuti .gitlab-ci.yml, \u00e5teranv\u00e4ndning av \u00e5tg\u00e4rder p\u00e5 olika delar av pipelinen<\/li>\n<li>Include - sektioner<\/li>\n<li>Centraliserad hantering av gitlab-ci.yml (en fil och automatiska pushar till andra repor)<\/li>\n<\/ul>\n<p><\/p>\n<p>Samarbetet mellan administrat\u00f6rer och utvecklare n\u00e5r en ny niv\u00e5: administrat\u00f6ren skriver CI-mall, och utvecklarna justerar det, vilket bygger sin CI oberoende av administrat\u00f6ren.<\/p>\n<p><\/p>\n<p>Beroendet av utvecklarna minskar fr\u00e5n administrat\u00f6rerna, antalet manuella uppgifter minskar, och problemet med den \"enda personen som vet hur man arbetar med make-filen\" f\u00f6rsvinner. Utrullningar sker p\u00e5litligt och snabbt.<\/p>\n<p><\/p>\n<h2 id=\"iac\">IaC<\/h2>\n<p><\/p>\n<p>Tema f\u00f6r Infrastructure as Code med exempel fr\u00e5n Terraform kommer att presenteras av cloud-administrat\u00f6ren p\u00e5 Selectel, Alexey Stepanenko. Han kommer att visa hur man snabbt och automatiskt kan installera och skala servrar, hur man automatiskt paketerar bilder, samt hur man anv\u00e4nder konfigurationsmallar f\u00f6r att direkt f\u00e5 f\u00e4rdiga maskiner.<\/p>\n<p><\/p>\n<p>En person som har skapat tusentals IaC-l\u00f6sningar kommer att ber\u00e4tta om hur man g\u00f6r det p\u00e5 r\u00e4tt s\u00e4tt och hur man inte ska g\u00f6ra det.<\/p>\n<p><\/p>\n<p>L\u00f6sningen f\u00f6r cloud Selectel, med minimala justeringar, \u00e4r l\u00e4mplig f\u00f6r Google- och Amazon-moln.<\/p>\n<p><\/p>\n<p>Medarbetaren fr\u00e5n Southbridge, Nikolay Mesropyan, kommer att visa hur man utan nedtid kan installera en fungerande applikation med Ansible och kontrollera dess funktionalitet.<\/p>\n<p><\/p>\n<p>Om du manuellt \u00e4ndrar infrastrukturen (konfigurerar servrar, installerar bibliotek och paket vid behov), m\u00e5ste du n\u00e4r du f\u00f6rs\u00f6ker \u00e5teruppbygga en kopia av milj\u00f6n minnas och reproducera alla dina \u00e5tg\u00e4rder. Denna uppgift kan l\u00e4tt ta 3-5 dagar. Att arbeta med infrastrukturen som kod garanterar att du har en aktuell beskrivning av milj\u00f6n som kan installeras p\u00e5 minuter.<\/p>\n<p><\/p>\n<p>Nikolay kommer att ber\u00e4tta hur man skriver playbooks, vilka misstag som f\u00f6rekommer och varf\u00f6r playbooks ibland arbetar l\u00e5ngsamt eller inte fungerar som f\u00f6rv\u00e4ntat. Detta \u00e4r erfarenheten fr\u00e5n m\u00e5nga \u00e5rs anv\u00e4ndning av IaC i Southbridge.<\/p>\n<p><\/p>\n<p><strong>\u00c4mne Nr 7: Infrastructure as Code<\/strong><\/p>\n<p><\/p>\n<ul>\n<li>IaC: tillv\u00e4gag\u00e5ngss\u00e4tt f\u00f6r att betrakta infrastruktur som kod<\/li>\n<li>Molnleverant\u00f6rer som infrastrukturleverant\u00f6rer<\/li>\n<li>Systeminitialiseringsverktyg, bildbyggande (packer)<\/li>\n<li>IaC med exempel fr\u00e5n Terraform<\/li>\n<li>Lagring av konfigurationer, samarbete, automatisering av till\u00e4mpningar<\/li>\n<li>Praktik f\u00f6r att skapa Ansible-playbooks<\/li>\n<li>Idempotens, deklarativitet<\/li>\n<li>IaC med exempel fr\u00e5n Ansible<\/li>\n<li>Database as Code \/ Fj\u00e4dringsbarhet f\u00f6r PostgreSQL<\/li>\n<\/ul>\n<p><\/p>\n<p>Infrastrukturen f\u00e5r deklarativitet och idempotens.<br \/>\nAdministrat\u00f6ren l\u00e4r sig att hantera en komplex infrastruktur: snabbt skapa nya milj\u00f6er, uppr\u00e4tth\u00e5lla enhetlighet mellan alla milj\u00f6er, se \u00e4ndringshistorik, vilket \u00e4r kritiskt n\u00e4r flera team arbetar p\u00e5 projektet.<br \/>\nUtvecklaren kan studera infrastrukturen och sj\u00e4lvst\u00e4ndigt installera sina egna milj\u00f6er.<\/p>\n<p><\/p>\n<p>Bonus avsnittet \u2014 skapandet och inst\u00e4llningen av en fj\u00e4dringsbar databascluster f\u00f6r PostgreSQL. Vi kommer att ge dig en f\u00e4rdig playbook som vi anv\u00e4nder i Southbridge, och du kommer att kunna installera en cluster p\u00e5 en utbildningsmilj\u00f6 och anv\u00e4nda denna l\u00f6sning i ditt f\u00f6retag.<\/p>\n<p><\/p>\n<h2 id=\"testirovanie-infrastruktury-i-monitoring\">Testning av infrastrukturen och \u00f6vervakning<\/h2>\n<p><\/p>\n<p>Automatisering m\u00f6jligg\u00f6r att fels\u00f6ka problem omedelbart p\u00e5 tusentals servrar. Varje \u00e4ndring kr\u00e4ver testning. \u00c5 andra sidan tar manuell testning s\u00e5 mycket tid att det urholkar f\u00f6rdelarna med automatisering.<\/p>\n<p><\/p>\n<p>Vi visar i praktiken hur man skriver rolltester. Som resultat kommer du att kunna skriva tester f\u00f6r ditt f\u00f6retag. Du beh\u00f6ver inte l\u00e4ngre komma ih\u00e5g inst\u00e4llningar som gjorts, du beskriver dem i testerna och kontrollerar automatiskt att alla tidigare l\u00f6sningar och tillf\u00e4lliga l\u00f6sningar fortfarande \u00e4r p\u00e5 plats.<\/p>\n<p><\/p>\n<p>Sedan l\u00e4r vi oss att automatiskt l\u00e4gga till alla nya servrar i \u00f6vervakningen. Vi kommer att titta p\u00e5 \u00f6vervakning av infrastruktur och applikationer separat. Vi visar d\u00e5liga och bra metoder.<\/p>\n<p><\/p>\n<p><strong>\u00c4mne nr 8: Testning av infrastruktur<\/strong><\/p>\n<p><\/p>\n<ul>\n<li>Testning och kontinuerlig integration med Molecule och Gitlab CI<\/li>\n<li>Anv\u00e4ndning av Vagrant<\/li>\n<\/ul>\n<p><\/p>\n<p><strong>\u00c4mne nr 9: \u00d6vervakning av infrastruktur med Prometheus<\/strong><\/p>\n<p><\/p>\n<ul>\n<li>Varf\u00f6r beh\u00f6vs \u00f6vervakning<\/li>\n<li>Typer av \u00f6vervakning<\/li>\n<li>Notifieringar i \u00f6vervakningssystemet<\/li>\n<li>Hur man bygger ett h\u00e4lsosamt \u00f6vervakningssystem<\/li>\n<li>M\u00e4nniskov\u00e4nliga notifieringar f\u00f6r alla<\/li>\n<li>Health Check: Vad man b\u00f6r ha i \u00e5tanke<\/li>\n<li>Automatisering baserat p\u00e5 data fr\u00e5n \u00f6vervakningen<\/li>\n<\/ul>\n<p><\/p>\n<p>Felaktig \u00f6vervakning \u00e4r liktydigt med avsaknad av \u00f6vervakning. F\u00f6retaget bryr sig inte om att startsidan f\u00f6r e-handelsbutiken \u00e4r tillg\u00e4nglig om betalningsformul\u00e4ret ger ett felmeddelande.<\/p>\n<p><\/p>\n<p>I inst\u00e4llningen av \u00f6vervakning och probleml\u00f6sning deltar utvecklare och administrat\u00f6rer p\u00e5 lika villkor. Traditionellt \u00e5vilar \u00f6vervakningsuppgifterna administrat\u00f6rerna. V\u00e5r kurs kommer att visa utvecklarna vilken roll de spelar i att skapa effektiv \u00f6vervakning. Administrat\u00f6rer kommer att f\u00e5 b\u00e4sta praxis fr\u00e5n Southbridge. Som resultat kommer m\u00e4ngden f\u00f6rluster orsakade av driftstopp och l\u00e4gre prestanda f\u00f6r webbplatsen eller applikationen snabbt att minska.<\/p>\n<p><\/p>\n<p>Bonusavsnitt: automatisering baserad p\u00e5 \u00f6vervakning. Till exempel meddelar \u00f6vervakningen att belastning har kommit till webbplatsen, och skalning av webbservrar s\u00e4tts ig\u00e5ng automatiskt.<\/p>\n<p><\/p>\n<h2 id=\"logirovanie\">Loggning<\/h2>\n<p><\/p>\n<p>Det st\u00f6rsta misstaget n\u00e4r det g\u00e4ller loggar \u00e4r att administrat\u00f6rer och utvecklare tittar p\u00e5 dem direkt p\u00e5 servrarna. Om du har mer \u00e4n en server tar det tid. Det \u00e4r os\u00e4kert: utvecklaren g\u00e5r in p\u00e5 en server d\u00e4r han inte b\u00f6r vara.<\/p>\n<p><\/p>\n<p>DevOps kr\u00e4ver centraliserad insamling, bearbetning och analys av loggar.<\/p>\n<p><\/p>\n<p><strong>\u00c4mne nr 10: Loggning av applikationer med ELK<\/strong><\/p>\n<p><\/p>\n<ul>\n<li>Huvudapplikationer och funktioner f\u00f6r elastic (s\u00f6kning, lagring, skalningsfunktioner, anpassningsbarhet)<\/li>\n<li>\u00d6versikt av kibana (huvudfunktioner, fr\u00e5gespr\u00e5k, dashboardhantering, skapa grafer)<\/li>\n<li>\u00d6versikt av produkter baserade p\u00e5 elastic och deras anv\u00e4ndning<\/li>\n<li>Samlar m\u00e4tv\u00e4rden i APM (applikationssp\u00e5rning)<\/li>\n<li>Till\u00e4gg: \u00d6versikt av den nya produkten \u2014 SIEM<\/li>\n<\/ul>\n<p><\/p>\n<p>Genom att implementera denna metod blir loggar ett enkelt och tydligt verktyg f\u00f6r att analysera, konfigura och justera applikationen och infrastrukturen.<\/p>\n<p><\/p>\n<h2 id=\"sre\">SRE<\/h2>\n<p><\/p>\n<p>Och vi kommer till \u00e4mnet som Southbridge just b\u00f6rjar titta p\u00e5 och som andra talare vill stanna kvar f\u00f6r p\u00e5 den sista dagen av Slyram. Vi \u00e4r glada att Ivan Kruglov fr\u00e5n Booking.com har g\u00e5tt med p\u00e5 att l\u00e4sa den.<\/p>\n<p><\/p>\n<p>Projektet lever i den verkliga v\u00e4rlden d\u00e4r p\u00e5litlighet aldrig \u00e4r absolut och varje beslut kostar pengar.<\/p>\n<p><\/p>\n<p>Vad \u00e4r SLA i f\u00f6rh\u00e5llande till ett komplext projekt? L\u00e5t oss s\u00e4ga, hur bed\u00f6mer man att webbplatsen \u00e4r tillg\u00e4nglig, men bilder laddas med f\u00f6rdr\u00f6jning. Vad \u00e4r SLA-m\u00e4tv\u00e4rdena, var f\u00e5r man dem, hur f\u00e5r man dem?<\/p>\n<p><\/p>\n<p>Hur installera SLA? Hur uppr\u00e4tth\u00e5lla dem?<\/p>\n<p><\/p>\n<p><strong>\u00c4mne nr 11: SRE<\/strong><br \/>\nDefinition av SLA, SLO, Error Budget och andra skr\u00e4mmande termer fr\u00e5n SRE-v\u00e4rlden<br \/>\nSRE: Praxis f\u00f6r \u00f6vervakning av SLI och SLO<br \/>\nSRE: Praxisen f\u00f6r till\u00e4mpning av Error Budget<br \/>\nSRE: Hantering av avbrott och operationell belastning (apigateway, service mesh, circuit brackers)<br \/>\nF\u00f6retaget vill ha SRE. \u00c5tminstone p\u00e5 den enklaste niv\u00e5n: ha en reservserver eller \u00e5terst\u00e4lla fr\u00e5n backup? En databas eller kluster? Installera DDoS-skydd proaktivt eller endast under attack?<\/p>\n<p><\/p>\n<p>Direkt\u00f6rerna blir inte n\u00f6jda med att h\u00f6ra att \"webbplatsen fungerar\" n\u00e4r en kund ringer och meddelar att best\u00e4llningsformul\u00e4ret inte \u00f6ppnas.<\/p>\n<p><\/p>\n<p>D\u00e4rf\u00f6r \u00e4r det viktigt f\u00f6r DevOps-ingenj\u00f6ren att \u00e5tminstone ytligt f\u00f6rst\u00e5 SRE, f\u00f6r att p\u00e5 ett adekvat s\u00e4tt prata med f\u00f6retaget om dess behov.<\/p>\n<p><\/p>\n<h2 id=\"itog\">Resultat<\/h2>\n<p><\/p>\n<p>Under tiden <noindex><a rel=\"nofollow\" href=\"http:\/\/slurm.io\/devops\">Slyram DevOps<\/a><\/noindex> administrat\u00f6rer och utvecklare kommer att l\u00e4ra sig:<br \/>\n\u2014 arbeta korrekt med Git;<br \/>\n\u2014 organisera lokal utveckling;<br \/>\n\u2014 konfigurera (administrat\u00f6rer) och anv\u00e4nda (utvecklare) CI\/CD;<br \/>\n\u2014 arbeta med infrastruktur som kod;<br \/>\n\u2014 testa infrastrukturen;<br \/>\n\u2014 \u00f6vervaka infrastrukturen och applikationen;<br \/>\n\u2014 konfigurera loggning;<br \/>\n\u2014 f\u00f6rst\u00e5, och i idealfallet \u2014 anv\u00e4nda SRE.<\/p>\n<p><\/p>\n<p>F\u00f6r uppm\u00e4rksamma l\u00e4sare \u2014 med rabattkoden habrapost f\u00e5r du 15% rabatt.<\/p>\n<p><\/p>\n<p>Vi f\u00f6rbereder praktik och verktyg f\u00f6r alla punkter. S\u00e5 varje deltagare kommer efter att ha \u00e5terv\u00e4nt fr\u00e5n Slurm kunna ta sitt f\u00f6retag till n\u00e4sta niv\u00e5 inom DevOps.<\/p>\n<p><\/p>\n<p>F\u00f6r f\u00f6retag inneb\u00e4r detta l\u00e4gre kostnader f\u00f6r administration och utveckling, minskad nedtid, \u00f6kad p\u00e5litlighet, snabbare leverans av funktioner och buggfixar.<\/p>\n<p>K\u00e4lla: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/southbridge\/blog\/462879\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>4-6 \u0441\u0435\u043d\u0442\u044f\u0431\u0440\u044f \u0432 \u0421\u0430\u043d\u043a\u0442-\u041f\u0435\u0442\u0435\u0440\u0431\u0443\u0440\u0433\u0435, \u0432 \u043a\u043e\u043d\u0444\u0435\u0440\u0435\u043d\u0446-\u0437\u0430\u043b\u0435 Selectel \u043f\u0440\u043e\u0439\u0434\u0435\u0442 \u0442\u0440\u0435\u0445\u0434\u043d\u0435\u0432\u043d\u044b\u0439 \u0421\u043b\u0451\u0440\u043c DevOps. \u041c\u044b \u0441\u0442\u0440\u043e\u0438\u043b\u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0443, \u0438\u0441\u0445\u043e\u0434\u044f \u0438\u0437 \u043c\u044b\u0441\u043b\u0438, \u0447\u0442\u043e \u0442\u0435\u043e\u0440\u0435\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0442\u0440\u0443\u0434\u044b \u043f\u043e DevOps, \u043a\u0430\u043a \u0438 \u043c\u0430\u043d\u0443\u0430\u043b\u044b \u043a \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430\u043c, \u043a\u0430\u0436\u0434\u044b\u0439 \u043c\u043e\u0436\u0435\u0442 \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u0442\u044c \u0441\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e. \u0418\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u044b \u0442\u043e\u043b\u044c\u043a\u043e \u043e\u043f\u044b\u0442 \u0438 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0430: \u043e\u0431\u044a\u044f\u0441\u043d\u0435\u043d\u0438\u0435, \u043a\u0430\u043a \u0434\u0435\u043b\u0430\u0442\u044c \u043d\u0430\u0434\u043e \u0438 \u043d\u0435 \u043d\u0430\u0434\u043e, \u0438 \u0440\u0430\u0441\u0441\u043a\u0430\u0437, \u043a\u0430\u043a \u0434\u0435\u043b\u0430\u0435\u043c \u043c\u044b. \u0412 \u043a\u0430\u0436\u0434\u043e\u0439 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438, \u0443 \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u0430 \u0438\u043b\u0438 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-36933","post","type-post","status-publish","format-standard","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.4 - aioseo.com -->\n\t<meta name=\"description\" content=\"4-6 \u0441\u0435\u043d\u0442\u044f\u0431\u0440\u044f \u0432 \u0421\u0430\u043d\u043a\u0442-\u041f\u0435\u0442\u0435\u0440\u0431\u0443\u0440\u0433\u0435, \u0432 \u043a\u043e\u043d\u0444\u0435\u0440\u0435\u043d\u0446-\u0437\u0430\u043b\u0435 Selectel \u043f\u0440\u043e\u0439\u0434\u0435\u0442 \u0442\u0440\u0435\u0445\u0434\u043d\u0435\u0432\u043d\u044b\u0439 \u0421\u043b\u0451\u0440\u043c DevOps.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/sv\/blog\/administrirovanie\/slyorm-devops-ot-git-do-sre-so-vsemi-ostanovkami\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\n\t\t<meta property=\"og:locale\" content=\"sv_SE\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0421\u043b\u0451\u0440\u043c DevOps: \u043e\u0442 Git \u0434\u043e SRE \u0441\u043e \u0432\u0441\u0435\u043c\u0438 \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430\u043c\u0438 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"4-6 \u0441\u0435\u043d\u0442\u044f\u0431\u0440\u044f \u0432 \u0421\u0430\u043d\u043a\u0442-\u041f\u0435\u0442\u0435\u0440\u0431\u0443\u0440\u0433\u0435, \u0432 \u043a\u043e\u043d\u0444\u0435\u0440\u0435\u043d\u0446-\u0437\u0430\u043b\u0435 Selectel \u043f\u0440\u043e\u0439\u0434\u0435\u0442 \u0442\u0440\u0435\u0445\u0434\u043d\u0435\u0432\u043d\u044b\u0439 \u0421\u043b\u0451\u0440\u043c DevOps.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/sv\/blog\/administrirovanie\/slyorm-devops-ot-git-do-sre-so-vsemi-ostanovkami\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T19:14:50+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:14:50+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Slurm DevOps: fr\u00e5n Git till SRE med alla stopp | ProHoster","description":"Den 4\u20136 september i Sankt Petersburg kommer det att h\u00e5llas en tre dagar l\u00e5ng Slurm DevOps-konferens i Selectels konferenslokal.","canonical_url":"https:\/\/prohoster.info\/sv\/blog\/administrirovanie\/slyorm-devops-ot-git-do-sre-so-vsemi-ostanovkami","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"sv_SE","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0421\u043b\u0451\u0440\u043c DevOps: \u043e\u0442 Git \u0434\u043e SRE \u0441\u043e \u0432\u0441\u0435\u043c\u0438 \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430\u043c\u0438 | ProHoster","og:description":"4-6 \u0441\u0435\u043d\u0442\u044f\u0431\u0440\u044f \u0432 \u0421\u0430\u043d\u043a\u0442-\u041f\u0435\u0442\u0435\u0440\u0431\u0443\u0440\u0433\u0435, \u0432 \u043a\u043e\u043d\u0444\u0435\u0440\u0435\u043d\u0446-\u0437\u0430\u043b\u0435 Selectel \u043f\u0440\u043e\u0439\u0434\u0435\u0442 \u0442\u0440\u0435\u0445\u0434\u043d\u0435\u0432\u043d\u044b\u0439 \u0421\u043b\u0451\u0440\u043c DevOps.","og:url":"https:\/\/prohoster.info\/sv\/blog\/administrirovanie\/slyorm-devops-ot-git-do-sre-so-vsemi-ostanovkami","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T19:14:50+00:00","article:modified_time":"2019-10-31T19:14:50+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"36933","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"Article","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-22 05:23:22","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 01:36:24","updated":"2026-01-22 05:23:22","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/posts\/36933","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/comments?post=36933"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/posts\/36933\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/media?parent=36933"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/categories?post=36933"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/tags?post=36933"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}