DevOps til drift og udvikling - kursus 124.000 RUB. fra Yandex Workshop, træning 6 måneder (8 timer om ugen), Dato: 6. december 2023.
Miscellanea / / November 30, 2023
Arbejder i øjeblikket med ETL, færdiggør BI-systemovervågning, udvikler i Python og alt dette i Azure-skyen. Bygget CI/CD til BI-systemet, skrev UI-autotests i Selenium. Hos LANIT (indtil 2018) skabte han...
Arbejder i øjeblikket med ETL, færdiggør BI-systemovervågning, udvikler i Python og alt dette i Azure-skyen. Bygget CI/CD til BI-systemet, skrev UI-autotests i Selenium. Hos LANIT (indtil 2018) skabte han sin egen "Frankenstein" fra Jenkins, Ansible, VMware, Telegram bot, Jira, bash- og Python-scripts til fuldgyldige ChatOps, hvor alle opdateringer til både servere og billetter blev udført gennem en bot i telegram for https://gis-tek.ru. Hjalp også Kubernetes med at orkestrere sider https://мдм.моидокументы.рф. Hos NIIAS (indtil 2016) skrev han mega-bash-scripts for at opdatere Russian Railways afsendelsesservere, så dit tog kunne nå frem til tiden.
1) Versionskontrolsystemer og applikationsopbygningsautomatisering 15 timer
Du oplever, at du arbejder i en startup, møder holdet og spekulerer på, hvordan det overhovedet er muligt at arbejde på denne måde. Hvis du vil have tingene rigtigt hurtigt, begynder du at forstå, hvordan softwareudvikling fungerer i disse dage og tager de første skridt mod at accelerere produktionen.
- Hvordan fungerer softwarens livscyklus?
- Versionskontrolsystemer. Hvorfor vælger alle Git?
• Organiser teamarbejde ved hjælp af Feature Branch Workflow.
• Organisering af lagring af Git repositories i Gitea. - Læne:
• Muda (tab).
• Værdi og værdistrøm. - Læne:
• Automatiseringsværktøjer til gentagne opgaver.
• Rammer til automatisering af projektmontage.
2) Fleksible metoder og kontinuerlig integration 15 timer
Din startup bliver købt af it-giganten Krupnaya Kompaniya (KK). Teamlederen for dit team bliver din guide på vejen til at lære DevOps. Men problemer med din ansøgning forsvinder ikke. Du finder ud af, at applikationen fungerer dårligt i et produktionsmiljø, og der kommer hele tiden nye anmodninger om at rette fejl. På grund af dette akkumuleres arbejdet, og man kan ikke engang drømme om at frigive ny funktionalitet og stabilitet.
- DevOps problemer:
• Funktionelle brønde.
• Nedadgående spiral. - Agile metoder og DevOps-kultur:
• Teaminteraktion.
• Moderne tilgange. Hvad forårsagede fremkomsten af Agile?
• Tre måder til DevOps: værdileveringscyklus, feedbackloops, eksperimentering og læring. - Kontinuerlig integration:
• Organisering af kodelagring.
• Forsamlingsorganisering.
• Organisering af test.
• Få feedback hurtigt. - Kontinuerlig integrationsservere:
• Oversigt over grænsefladen og funktionaliteten af GitLab CI. - Kvalitetsmåling og statisk kodesikkerhedstest:
• Værktøjer til analyse af statisk kodekvalitet: SonarQube, GitLab Analyzer.
• Værktøjer til analyse af statisk kodesikkerhed: SonarQube SAST, GitLab SAST.
3) Netværk og grundlæggende arbejde på Linux-servere 15 timer
Du møder systemadministratoren KK, som fortæller, hvordan netværket er bygget op, og hvordan alt fungerer for ham. Under demonstrationen ser du, at administratoren er meget hurtigere styret af kommandoer og markørbevægelser i konsollen, og beder ham fortælle dig om disse teknikker. Administratoren inviterer dig til at forstå eksemplet med opgaven med at overføre en tjeneste fra en gammel server til en ny - samtidig med at løse et brændende problem.
- Grundlæggende om at arbejde på Linux-servere, arbejde med kommandolinjen.
- Linux disk undersystem.
- Linux brugerrettigheder.
- Grundlæggende om netværk: Problemer med at oprette forbindelse til en ekstern server.
- Virtualisering:
• Populære hypervisorer.
• Virtuelle maskiner.
• Virtuelle netværk.
4) Kontinuerlig levering og Kontinuerlig implementering 20 timer
Efter at have modtaget endnu en applikationsopdatering på din smartphone om en uge, blev du interesseret i, hvor ofte opdateringer modtages til brugerne. Det viste sig slet ikke så ofte. Er det nødvendigt oftere?
- Hvordan fungerer leveringsprocessen for it-produkter:
• Hvad er leveringsprocessen.
• Value Stream management. - Artefaktlagersystemer: Nexus.
- Kontinuerlig levering:
• Visualisering af leveringsstadier.
• Organisering af leveringsprocessen. Leveringsrørledning. Kontinuerlig implementering. - Tolv-faktor app-metodologi.
5) Infrastruktur som kode og konfigurationsstyringssystemer 20 timer
Det er første gang, du støder på et infrastrukturproblem. Nogen ændrede konfigurationen af udviklernes servere, som de kørte eksperimenter på, og nu fungerer serverne så dårligt, at de ikke længere kan bruges.
- Backup:
• Organisering af backup.
• Typer af sikkerhedskopier.
• Rotation af backups. - Infrastruktur som kode: vi beskriver infrastrukturen med kode, ved at bruge udviklingserfaring.
- Konfigurationsstyringssystemer:
• Ansible (roller, opgaver, inventar, vault, awx).
• Kendskab til andre systemer: Kok, Salt, Puppet.
6) DBOps: relationelle og ikke-relationelle databaser 15 timer
Du mødes med DBA. Du modtager truende kommentarer fra brugere om, at siden er langsom. Empirisk opdager du, at den seneste opdatering har bremset databasen betydeligt.
- Grundlæggende om databaseteori:
• Relationelle databaser: PostgreSQL.
• Grundlæggende SQL-forespørgsler.
• Hvordan man fremskynder udførelse af forespørgsler i en database: optimering, caching, kapacitetsvækst, indeksering. - Organisering af høj tilgængelighed af databasen:
• DBOps principper.
• Databasemigration ved hjælp af Flyway. - Ikke-relationelle databaser: MongoDB.
7) Docker containerisering og datalagring 20 timer
Du vil befinde dig mellem to brande: På den ene side er der udviklere, for hvem alt fungerer lokalt, men for nogle af dem måske ikke; på den anden side er der driftsafdelingen, som intet fungerer for overhovedet. Vi finder ud af, hvordan vi sikrer, at alt er lige godt for alle, og lancerer endelig applikationen i produktion.
- Containerisering:
• Oversigt over Linux- og Docker-containere.
• Docker-enhed: lag, billeder, containere, Docker-fil, registreringsdatabase.
• Docker-alternativer (containerd, Podman, LXC, CRI-O). - Datalagring: arbejder med S3, MinIO vs Ceph.
- Lagring og overførsel af følsomme data: et fantastisk overblik over Vault.
8) Mikrotjenester, balancering og caching 15 timer
Du forbereder dig på udgivelsen af en ny version af applikationen og ønsker at tage højde for fortidens fejl, da din tjeneste ikke kunne håndtere trafikken og lå ned i tre dage. Denne gang kom en virksomhed til dig og forlangte, at dette ikke skulle ske! Du vil blive så fordybet i processen, at du vil introducere nye fede funktioner og leveringsstrategier.
- Balancering og caching.
- Mikrotjenester:
• Tilgange til organisering af applikationsarkitektur.
• Værktøjer til styring af mikroserviceapplikationer: Docker Compose. - Leveringsstrategier og valg af den rigtige:
• Hvilke typer brugere er der?
• Blå-grøn implementering.
• Kanarie-udsættelse.
9) Kubernetes. Implementering og sikring af applikationspålidelighed 50 timer
Du skaber en serviceplatform for at sikre højkvalitetsdrift af hele leveringscyklussen.
- Container orkestrering:
• Kørsel af applikationen på en moderne infrastruktur.
• Hvorfor orkestreringssystemer er nødvendige, og hvordan de er.
• Kubernetes: årsager og mål for udvikling. - Lancering af en Kubernetes-klynge til test og udvikling:
• Sådan får du Kubernetes: beskrivelse af de 5 vigtigste installationsmetoder.
• Parsing af simple kubectl-kommandoer.
• Arbejde med kubectl-værktøjet. - Kubernetes arkitektur:
• Hovedkomponenter og deres interaktion: skemalægger, kubelet, kube-proxy, controller manager, etcd og api server. - Kerneenheder i Kubernetes:
• Noder, poder, tjenester, vedvarende volumener, persistent volumenkrav.
• Kubernetes manifesterer.
• Brug af kubectl på klyngeforbindelsesniveau.
• Se konfiguration af noder, pods, hemmeligheder osv. - Avancerede Kubernetes-enheder:
• ReplicaSet, Deployment, DaemonSet og StatefulSet.
• Liveness, Readiness sonde + Init containere.
• Tilføjelse om kubectl: rediger, anvend, slet, opret.
• Netværkskommunikation i en klynge. - Avanceret arbejde med kubectl-værktøjet:
• Yderligere kubectl-kommandoer, flag, repræsentation af Kubernetes-enheder som YAML- eller JSON/YAML-filer.
• Implementer applikationen på to måder: ved hjælp af en kommando og via en YAML-fil. - Implementering af applikationer til Kubernetes:
• Implementering af applikationens frontend.
• Implementering og re-deployering via ArgoCD. - Implementeringsstrategier:
• Forbindelse mellem Kubernetes og Twelve-Factor App.
• Implementeringsstrategier i Kubernetes.
• Hvordan tilbagerulningsmekanismen er implementeret i Kubernetes. - GitOps-praksis for at arbejde med infrastruktur.
- Skrivning af et Helm-diagram til applikationsimplementering.
- Opsætning af ArgoCD.
- Brug af skabelonmotorer.
10) Lognings- og overvågningsfejl 15 timer
Din serviceplatform holder pludselig op med at fungere.
- Fejllogning og overvågning:
• Linux-logfiler.
• Loke.
• Vagtvagt - Overvågning:
• Typer af metrikker, typiske anomalier.
• Advarsler.
• GAP stack (Grafana, Prometheus, Alertmanager).
• Gyldne signaler.
• Målinger på applikationsniveau. - AWS-systemer og distribueret sporing.
- ROLIGT.
- Fejllogning og overvågning:
D
drømmer-fkn
23.03.2022 G.
God service og et godt DevOps kursus til drift og udvikling
Fordele: praktisk platform, godt team, godt materiale. Ulemper: råmateriale Gennemført halvdelen af DevOps-kurset til drift og udvikling. Kom ind i andet sæt. I denne henseende er det teoretiske materiale fugtigt, og der er unøjagtigheder. Men til arrangørernes ære er problemer løst hurtigt. Manglerne er elimineret. Et meget venligt team af kuratorer og mentorer. For det halve...