DevOps käyttöön ja kehittämiseen - kurssi 124 000 RUB. Yandex Workshopista, koulutus 6 kuukautta (8 tuntia viikossa), Päivämäärä: 6.12.2023.
Miscellanea / / November 30, 2023
Tällä hetkellä työskentely ETL: n kanssa, BI-järjestelmän valvonnan viimeistely, Pythonissa kehittäminen ja kaikki tämä Azure-pilvessä. Rakensi CI/CD: tä BI-järjestelmää varten, kirjoitti käyttöliittymän automaattiset testit Seleeniin. LANITissa (2018 asti) hän loi...
Tällä hetkellä työskentely ETL: n kanssa, BI-järjestelmän valvonnan viimeistely, Pythonissa kehittäminen ja kaikki tämä Azure-pilvessä. Rakensi CI/CD: tä BI-järjestelmää varten, kirjoitti käyttöliittymän automaattiset testit Seleeniin. LANITissa (2018 asti) hän loi oman "Frankensteinin" Jenkinsistä, Ansiblesta, VMwaresta, Telegram-botista, Jirasta, bash- ja Python-skriptit täysimittaisille ChatOps-ohjelmille, joissa kaikki päivitykset sekä palvelimiin että lippuihin tehtiin botin kautta. sähke https://gis-tek.ru. Auttoi myös Kubernetesin sivujen orkestroinnissa https://мдм.моидокументы.рф. NIIAS: ssa (vuoteen 2016) hän kirjoitti mega-bash-skriptejä päivittääkseen Venäjän rautateiden lähetyspalvelimia, jotta juna voisi saapua ajoissa.
1) Versionhallintajärjestelmät ja sovellusten rakentamisen automaatio 15 tuntia
Löydät olevasi työskennellyt startupissa, tapaat tiimin ja ihmettelet, miten on edes mahdollista työskennellä tällä tavalla. Kun haluat saada asiat kuntoon nopeasti, alat ymmärtää, miten ohjelmistokehitys toimii nykyään, ja otat ensimmäiset askeleet tuotannon nopeuttamiseksi.
- Miten ohjelmiston elinkaari toimii?
- Versionhallintajärjestelmät. Miksi kaikki valitsevat Gitin?
• Järjestä tiimityötä Feature Branch Workflow -toiminnon avulla.
• Git-varastojen tallennuksen järjestäminen Giteassa. - Nojata:
• Muda (tappio).
• Arvo ja arvovirta. - Nojata:
• Automaatiotyökalut toistuviin tehtäviin.
• Puitteet projektin kokoonpanon automatisointiin.
2) Joustavat menetelmät ja jatkuva integrointi 15 tuntia
IT-jätti Krupnaya Kompaniya (KK) ostaa startup-yrityksesi. Tiimisi johtajasta tulee oppaasi DevOps-oppimisen tiellä. Mutta hakemuksesi ongelmat eivät katoa. Huomaat, että sovellus toimii huonosti tuotantoympäristössä, ja uusia pyyntöjä korjata vikoja tulee jatkuvasti. Tämän vuoksi työtä kertyy, eikä uuden toimivuuden ja vakauden vapauttamisesta voi edes haaveilla.
- DevOps-ongelmat:
• Toimivat kaivot.
• Syöksykierre. - Ketterät menetelmät ja DevOps-kulttuuri:
• Ryhmävuorovaikutus.
• Nykyaikaiset lähestymistavat. Mikä aiheutti ketterän syntymisen?
• Kolme DevOps-tapaa: arvon toimitussykli, palautesilmukat, kokeilu ja oppiminen. - Jatkuva integraatio:
• Koodin tallennuksen organisointi.
• Kokoonpanoorganisaatio.
• Testauksen järjestäminen.
• Saat nopeasti palautetta. - Jatkuvan integroinnin palvelimet:
• Yleiskatsaus GitLab CI: n käyttöliittymään ja toimivuuteen. - Laadun mittaus ja staattisen koodin turvatestaus:
• Staattisen koodin laadun analysointityökalut: SonarQube, GitLab Analyzer.
• Staattisen koodin suojausanalyysityökalut: SonarQube SAST, GitLab SAST.
3) Verkottuminen ja Linux-palvelimilla työskentelyn perusteet 15 tuntia
Tapaat järjestelmänvalvojan KK: n, joka kertoo kuinka verkko on rakennettu ja miten kaikki toimii hänen kohdallaan. Esittelyn aikana näet, että järjestelmänvalvojaa ohjataan paljon nopeammin konsolin komennoilla ja kohdistimen liikkeillä, ja pyydät häntä kertomaan sinulle näistä tekniikoista. Ylläpitäjä kehottaa sinua ymmärtämään esimerkin tehtävästä siirtää palvelu vanhalta palvelimelta uudelle - samalla ratkaista polttava ongelma.
- Linux-palvelimilla työskentelyn perusteet, komentorivillä työskentely.
- Linux-levyalijärjestelmä.
- Linuxin käyttöoikeudet.
- Verkkokäytön perusteet: Ongelmia yhteyden muodostamisessa etäpalvelimeen.
- Virtualisointi:
• Suositut hypervisorit.
• Virtuaalikoneet.
• Virtuaaliverkot.
4) Jatkuva toimitus ja jatkuva käyttöönotto 20 tuntia
Saatuasi uuden sovelluspäivityksen älypuhelimeesi viikon kuluttua, kiinnostuit siitä, kuinka usein päivityksiä saapuu käyttäjille. Kävi ilmi, että ei ollenkaan usein. Onko se tarpeen useammin?
- Miten IT-tuotteiden toimitusprosessi toimii:
• Mikä on toimitusprosessi.
• Arvovirran hallinta. - Artefaktien säilytysjärjestelmät: Nexus.
- Jatkuva toimitus:
• Toimitusvaiheiden visualisointi.
• Toimitusprosessin organisointi. Toimitusputki. Jatkuva käyttöönotto. - Twelve-Factor App -menetelmä.
5) Infrastruktuuri koodina ja konfiguraation hallintajärjestelmänä 20 tuntia
Tämä on ensimmäinen kerta, kun kohtaat infrastruktuuriongelman. Joku muutti kehittäjien palvelimien asetuksia, joilla he olivat suorittaneet kokeiluja, ja nyt palvelimet ovat niin viallisia, että niitä ei voi enää käyttää.
- Varmuuskopioida:
• Varmuuskopioinnin järjestäminen.
• Varmuuskopioiden tyypit.
• Varmuuskopioiden kierto. - Infrastruktuuri koodina: kuvaamme infrastruktuuria koodilla, ottamalla käyttöön kehityskokemus.
- Konfiguroinnin hallintajärjestelmät:
• Ansible (roolit, tehtävät, inventaario, holvi, awx).
• Muiden järjestelmien tuntemus: Chef, Salt, Puppet.
6) DBOps: relaatiotietokannat ja ei-relaatiotietokannat 15 tuntia
Tapaat DBA: n. Saat käyttäjiltä uhkaavia kommentteja siitä, että sivusto on hidas. Empiirisesti huomaat, että uusin päivitys on merkittävästi hidastanut tietokantaa.
- Tietokanta teorian perusteet:
• Relaatiotietokannat: PostgreSQL.
• SQL-peruskyselyt.
• Kuinka nopeuttaa kyselyn suorittamista tietokannassa: optimointi, välimuisti, kapasiteetin kasvu, indeksointi. - Tietokannan korkean saatavuuden järjestäminen:
• DBOps-periaatteet.
• Tietokannan siirto Flywayn avulla. - Ei-relaatiotietokannat: MongoDB.
7) Docker-kontitointi ja tietojen tallennus 20 tuntia
Löydät itsesi kahden tulen väliltä: toisaalta on kehittäjiä, joille kaikki toimii paikallisesti, mutta joillain heistä ehkä ei; toisaalta on käyttöosasto, jolle ei toimi juuri mikään. Selvitämme, kuinka varmistaa, että kaikki on yhtä hyvin kaikille, ja käynnistämme lopuksi sovelluksen tuotantoon.
- Säiliöinti:
• Yleiskatsaus Linux- ja Docker-säilöistä.
• Docker-laite: tasot, kuvat, säiliöt, Docker-tiedosto, rekisteri.
• Docker-vaihtoehdot (containerd, Podman, LXC, CRI-O). - Tiedon tallennus: työskentely S3:n kanssa, MinIO vs Ceph.
- Arkaluonteisten tietojen tallentaminen ja siirtäminen: loistava yleiskatsaus Holviin.
8) Mikropalvelut, tasapainotus ja välimuisti 15 tuntia
Valmistaudut sovelluksen uuden version julkaisuun ja haluat ottaa huomioon menneisyyden virheet, kun palvelusi ei pystynyt käsittelemään liikennettä ja makasi kolme päivää. Tällä kertaa yritys tuli luoksesi ja vaati, ettei näin käy! Tulet niin uppoutumaan prosessiin, että esittelet uusia hienoja ominaisuuksia ja toimitusstrategioita.
- Tasapainotus ja välimuisti.
- Mikropalvelut:
• Lähestymistavat sovellusarkkitehtuurin organisointiin.
• Työkalut mikropalvelusovellusten hallintaan: Docker Compose. - Toimitusstrategiat ja oikean valinta:
• Millaisia käyttäjiä on olemassa?
• Sinivihreä käyttöönotto.
• Kanariansaarten käyttöönotto.
9) Kubernetes. Käyttöönotto ja sovellusten luotettavuuden varmistaminen 50 tuntia
Luot palvelualustan varmistamaan koko toimitussyklin laadukkaan toiminnan.
- Kontin orkestrointi:
• Sovelluksen käyttäminen nykyaikaisessa infrastruktuurissa.
• Miksi orkestrointijärjestelmiä tarvitaan ja millaisia ne ovat.
• Kubernetes: kehittämisen syyt ja tavoitteet. - Kubernetes-klusterin käynnistäminen testausta ja kehitystä varten:
• Kubernetesin hankkiminen: kuvaus viidestä pääasennusmenetelmästä.
• Yksinkertaisten kubectl-komentojen jäsentäminen.
• Kubectl-apuohjelman käyttäminen. - Kubernetes-arkkitehtuuri:
• Pääkomponentit ja niiden vuorovaikutus: ajastin, kubelet, kube-proxy, ohjainhallinta jne. ja api-palvelin. - Kubernetesin ydinkokonaisuudet:
• Solmut, Podit, Palvelut, Pysyvät volyymit, Pysyvät määrävaatimukset.
• Kubernetes ilmenee.
• Kubectlin käyttäminen klusterin yhteystasolla.
• Näytä solmujen, koteloiden, salaisuuksien jne. kokoonpano. - Edistyneet Kubernetes-entiteetit:
• ReplicaSet, Deployment, DaemonSet ja StatefulSet.
• Elävyys, valmiusanturi + Init-säiliöt.
• Lisäys kubectl: stä: muokkaa, käytä, poista, luo.
• Verkkoviestintä klusterissa. - Edistynyt työskentely kubectl-apuohjelman kanssa:
• Kubectl-lisäkomennot, liput, Kubernetes-kokonaisuuksien esitys YAML- tai JSON/YAML-tiedostoina.
• Ota sovellus käyttöön kahdella tavalla: komennolla ja YAML-tiedoston kautta. - Sovellusten käyttöönotto Kubernetesiin:
• Sovelluksen käyttöliittymän käyttöönotto.
• Käyttöönotto ja uudelleenkäyttö ArgoCD: n kautta. - Käyttöönottostrategiat:
• Yhteys Kubernetesin ja Twelve-Factor Appin välillä.
• Käyttöönottostrategiat Kubernetesissa.
• Kuinka palautusmekanismi on toteutettu Kubernetesissa. - GitOps-käytännöt infrastruktuurin kanssa työskentelemiseen.
- Ruorikaavion kirjoittaminen sovelluksen käyttöönottoa varten.
- ArgoCD: n asetukset.
- Mallimoottorien käyttö.
10) Kirjaus- ja seurantavirheet 15 tuntia
Palvelualustasi lakkaa yhtäkkiä toimimasta.
- Virheiden kirjaaminen ja valvonta:
• Linux-lokit.
• Loki.
• Sentry - Valvonta:
• Mittarityypit, tyypilliset poikkeamat.
• Hälytykset.
• GAP-pino (Grafana, Prometheus, Alertmanager).
• Kultaiset signaalit.
• Sovellustason mittarit. - AWS-järjestelmät ja hajautettu jäljitys.
- RAHOITTAA.
- Virheiden kirjaaminen ja valvonta:
D
unelmoija-fkn
23.03.2022 G.
Hyvä palvelu ja hyvä DevOps-kurssi toimintaan ja kehitykseen
Edut: kätevä alusta, hyvä tiimi, hyvä materiaali. Miinukset: raakamateriaali. Suoritettu puolet DevOps-kurssista toiminnan ja kehityksen osalta. Pääsi toiseen erään. Tässä suhteessa teoreettinen materiaali on kosteaa ja siinä on epätarkkuuksia. Mutta järjestäjien kunniaksi, ongelmat ratkeavat nopeasti. Puutteet poistetaan. Erittäin ystävällinen kuraattorien ja mentoreiden tiimi. Puoleksi...