DevOps pro provoz a vývoj - kurz 124 000 RUB. z Yandex Workshop, školení 6 měsíců (8 hodin týdně), Datum: 6. prosince 2023.
Různé / / November 30, 2023
Aktuálně pracuji s ETL, dokončuji monitorování BI systému, vývoj v Pythonu a to vše v cloudu Azure. Postaveno CI/CD pro systém BI, napsané autotesty uživatelského rozhraní v Selenium. Ve společnosti LANIT (do roku 2018) vytvořil...
Aktuálně pracuji s ETL, dokončuji monitorování BI systému, vývoj v Pythonu a to vše v cloudu Azure. Postaveno CI/CD pro systém BI, napsané autotesty uživatelského rozhraní v Selenium. V LANIT (do roku 2018) vytvořil svůj vlastní „Frankenstein“ od Jenkinse, Ansible, VMware, Telegram bot, Jira, bash- a Python skripty pro plnohodnotné ChatOps, kde byly všechny aktualizace serverů i tiketů prováděny pomocí robota v telegram pro https://gis-tek.ru. Také pomohl Kubernetes organizovat stránky https://мдм.моидокументы.рф. Na NIIAS (do roku 2016) napsal mega-bash skripty pro aktualizaci expedičních serverů ruských drah, aby váš vlak mohl přijet včas.
1) Systémy řízení verzí a automatizace sestavování aplikací 15 hodin
Zjistíte, že pracujete ve startupu, potkáte tým a divíte se, jak je vůbec možné takto fungovat. Chcete-li mít věci rychle v pořádku, začnete chápat, jak v dnešní době funguje vývoj softwaru, a podniknete první kroky ke zrychlení výroby.
- Jak funguje životní cyklus softwaru?
- Systémy kontroly verzí. Proč si každý vybere Git?
• Organizujte týmovou práci pomocí funkce Feature Branch Workflow.
• Organizace ukládání úložišť Git v Gitea. - Opírat se:
• Muda (ztráta).
• Hodnota a hodnotový tok. - Opírat se:
• Automatizační nástroje pro opakující se úkoly.
• Rámce pro automatizaci sestavování projektů.
2) Flexibilní metodiky a průběžná integrace 15 hodin
Váš startup kupuje IT gigant Krupnaya Kompaniya (KK). Vedoucí týmu vašeho týmu se stane vaším průvodcem na cestě k učení DevOps. Ale problémy s vaší aplikací nezmizí. Zjistíte, že aplikace funguje špatně v produkčním prostředí a do vývoje neustále přicházejí nové požadavky na opravu defektů. Kvůli tomu se práce hromadí a o uvolnění nové funkčnosti a stability se ani nesní.
- Problémy DevOps:
• Funkční studny.
• Klesající spirála. - Agilní metodiky a kultura DevOps:
• Týmová interakce.
• Moderní přístupy. Co způsobilo vznik Agile?
• Tři způsoby DevOps: cyklus poskytování hodnoty, smyčky zpětné vazby, experimentování a učení. - Nepřetržitá integrace:
• Organizace ukládání kódu.
• Organizace montáže.
• Organizace testování.
• Získejte rychlou zpětnou vazbu. - Servery pro nepřetržitou integraci:
• Přehled rozhraní a funkčnosti GitLab CI. - Měření kvality a testování bezpečnosti statického kódu:
• Nástroje pro analýzu kvality statického kódu: SonarQube, GitLab Analyzer.
• Nástroje pro analýzu zabezpečení statického kódu: SonarQube SAST, GitLab SAST.
3) Networking a základy práce na linuxových serverech 15 hodin
Setkáte se se správcem systému KK, který vám řekne, jak je síť strukturovaná a jak mu vše funguje. Během ukázky vidíte, že admin je mnohem rychleji ovládán příkazy a pohyby kurzoru v konzoli a požádejte ho, aby vám o těchto technikách řekl. Správce vás zve, abyste porozuměli příkladu úkolu přenést službu ze starého serveru na nový - a zároveň vyřešit palčivý problém.
- Základy práce na linuxových serverech, práce s příkazovým řádkem.
- Linuxový diskový subsystém.
- Uživatelská práva Linuxu.
- Základy práce v síti: Problémy s připojením ke vzdálenému serveru.
- Virtualizace:
• Populární hypervizory.
• Virtuální stroje.
• Virtuální sítě.
4) Průběžné dodávání a průběžné zavádění 20 hodin
Po obdržení další aktualizace aplikace na vašem smartphonu za týden jste se začali zajímat o to, jak často uživatelé dostávají aktualizace. Ukázalo se, že vůbec ne často. Je to nutné častěji?
- Jak funguje proces dodání IT produktu:
• Jaký je proces doručení.
• Správa toku hodnot. - Systémy pro ukládání artefaktů: Nexus.
- Průběžné doručení:
• Vizualizace fází dodávky.
• Organizace procesu dodání. Dodací potrubí. Průběžné nasazení. - Metodika dvanáctifaktorové aplikace.
5) Infrastruktura jako systémy řízení kódu a konfigurace 20 hodin
Je to poprvé, co se setkáváte s problémem infrastruktury. Někdo změnil konfiguraci serverů vývojářů, na kterých spouštěli experimenty, a servery teď tak nefungují, že už je nelze používat.
- Záloha:
• Organizace zálohování.
• Typy záloh.
• Rotace záloh. - Infrastruktura jako kód: popisujeme infrastrukturu pomocí kódu, přičemž využíváme vývojové zkušenosti.
- Systémy pro správu konfigurace:
• Ansible (role, úkoly, inventář, vault, awx).
• Znalost dalších systémů: Kuchař, Sůl, Loutka.
6) DBOps: relační a nerelační databáze 15 hodin
Setkáváte se s DBA. Dostáváte výhružné komentáře od uživatelů, že web je pomalý. Empiricky zjistíte, že nejnovější aktualizace výrazně zpomalila databázi.
- Základy teorie databází:
• Relační databáze: PostgreSQL.
• Základní SQL dotazy.
• Jak urychlit provádění dotazů v databázi: optimalizace, ukládání do mezipaměti, růst kapacity, indexování. - Organizace vysoké dostupnosti databáze:
• Principy DBOps.
• Migrace databáze pomocí Flyway. - Nerelační databáze: MongoDB.
7) Docker kontejnerizace a ukládání dat 20 hodin
Ocitnete se mezi dvěma ohni: na jedné straně jsou vývojáři, kterým vše funguje lokálně, ale některým možná ne; na druhé straně je provozní oddělení, kterému nefunguje vůbec nic. Vymýšlíme, jak zajistit, aby bylo vše stejně dobré pro všechny, a nakonec aplikaci spustíme do výroby.
- Kontejnerizace:
• Přehled kontejnerů Linux a Docker.
• Zařízení Docker: vrstvy, obrázky, kontejnery, soubor Docker, registr.
• Alternativy dockeru (containerd, Podman, LXC, CRI-O). - Ukládání dat: práce s S3, MinIO vs Ceph.
- Ukládání a přenos citlivých dat: skvělý přehled o Vaultu.
8) Mikroslužby, vyrovnávání a ukládání do mezipaměti 15 hodin
Připravujete se na vydání nové verze aplikace a chcete zohlednit chyby z minulosti, kdy vaše služba nezvládala provoz a tři dny ležela. Tentokrát za vámi přišel podnik a požadoval, aby se to nestalo! Do procesu se tak ponoříte, že představíte nové skvělé funkce a strategie doručení.
- Vyrovnávání a ukládání do mezipaměti.
- Mikroslužby:
• Přístupy k organizaci aplikační architektury.
• Nástroje pro správu aplikací mikroslužeb: Docker Compose. - Strategie doručení a výběr té správné:
• Jaké typy uživatelů existují?
• Modro-zelené rozmístění.
• Nasazení Canary.
9) Kubernetes. Nasazení a zajištění spolehlivosti aplikace 50 hodin
Vytvoříte servisní platformu pro zajištění kvalitního provozu celého cyklu dodávek.
- Orchestrování kontejneru:
• Provozování aplikace na moderní infrastruktuře.
• Proč jsou potřebné orchestrační systémy a jaké jsou.
• Kubernetes: důvody a cíle vývoje. - Spuštění clusteru Kubernetes pro testování a vývoj:
• Jak získat Kubernetes: popis 5 hlavních instalačních metod.
• Analýza jednoduchých příkazů kubectl.
• Práce s obslužným programem kubectl. - Architektura Kubernetes:
• Hlavní komponenty a jejich interakce: plánovač, kubelet, kube-proxy, správce řadiče, etcd a api server. - Základní entity Kubernetes:
• Uzly, pody, služby, trvalé svazky, nárok na trvalý svazek.
• Manifesty Kubernetes.
• Použití kubectl na úrovni připojení clusteru.
• Zobrazení konfigurace uzlů, modulů, tajemství atd. - Pokročilé entity Kubernetes:
• ReplicaSet, Deployment, DaemonSet a StatefulSet.
• Životnost, sonda připravenosti + kontejnery Init.
• Doplněk o kubectl: upravit, použít, odstranit, vytvořit.
• Síťová komunikace v clusteru. - Pokročilá práce s nástrojem kubectl:
• Další příkazy kubectl, příznaky, reprezentace entit Kubernetes jako soubory YAML nebo JSON/YAML.
• Nasazení aplikace dvěma způsoby: pomocí příkazu a pomocí souboru YAML. - Nasazení aplikací do Kubernetes:
• Nasazení aplikačního frontendu.
• Nasazení a opětovné nasazení přes ArgoCD. - Strategie nasazení:
• Spojení mezi Kubernetes a Twelve-Factor App.
• Strategie nasazení v Kubernetes.
• Jak je v Kubernetes implementován mechanismus vrácení zpět. - Postupy GitOps pro práci s infrastrukturou.
- Psaní diagramu Helm pro nasazení aplikace.
- Nastavení ArgoCD.
- Použití šablonových motorů.
10) Chyby protokolování a sledování 15 hodin
Vaše servisní platforma náhle přestane fungovat.
- Protokolování a sledování chyb:
• Linuxové protokoly.
• Loki.
• Hlídka - Sledování:
• Typy metrik, typické anomálie.
• Upozornění.
• Zásobník GAP (Grafana, Prometheus, Alertmanager).
• Zlaté signály.
• Metriky na úrovni aplikace. - Systémy AWS a distribuované trasování.
- KLIDNI.
- Protokolování a sledování chyb:
D
snílek-fkn
23.03.2022 G.
Dobré služby a dobrý kurz DevOps pro operace a vývoj
Výhody: pohodlná platforma, dobrý tým, dobrý materiál. Nevýhody: surový materiál Absolvoval jsem polovinu kurzu DevOps pro provoz a vývoj. Dostal se do druhého setu. V tomto ohledu je teoretický materiál vlhký a jsou zde nepřesnosti. Ale ke cti pořadatelů, problémy jsou rychle vyřešeny. Nedostatky jsou odstraněny. Velmi přátelský tým kurátorů a mentorů. Za polovinu...