CI/CD met Jenkins - cursus 35.000 roebel. uit Slurm, training 8 lessen, Datum 28 november 2023.
Gemengde Berichten / / November 28, 2023
Dit is een cursus waarbij de nadruk ligt op het praktische gebruik van Jenkins. Het zal veel voorbeelden bevatten uit mijn persoonlijke praktijk.
Laten we van eenvoudig naar complex gaan. Eerst kijken we naar de toepassingsgebieden van Jenkins en verschillende soorten pipelines, daarna kijken we naar de Jenkins Shared Library en kijken we naar de integratie met Kubernetes.
Mijn doel is om mijn ervaring te delen en u te helpen de fouten te vermijden die ik aan het begin van mijn reis heb gemaakt.
Deze cursus zal uw kennis van het werken met Jenkins verdiepen. Alles wat we tijdens de training behandelen, kun je meteen in de praktijk brengen.
CI/CD-basisbeginselen
Je leert welk probleemgebied CI/CD kan oplossen. Met de CI/CD-functionaliteit kunt u actuele problemen in uw werk vergelijken.
Theorie:
- Geschiedenis van CI/CD
- Noodzaak van gebruik, herhaalbaarheid van assemblages
- Terugkoppeling
- Entropie zonder automatisering (menselijke fouten)
- Beste praktijken
- Hoe je het niet moet doen
Jenkins-basisprincipes
Je begrijpt de logica van de architecturale beslissingen van anderen en begrijpt de directorystructuur in Jenkins. Leer Jenkins installeren en voer de basisconfiguratie uit.
Theorie:
- Welke problemen lost Jenkins op?
- Architectuur op het hoogste niveau - master-slave
- Directorystructuur in Jenkins-master (referenties, werkruimte, logboeken)
- Een server installeren op Linux (centos)
- Verschillende opties voor het uitvoeren van Linux in Docker
Oefening:
- Het installeren en configureren van de Jenkins-server met behulp van een van de methoden die in de les worden besproken
Jenkins-administratie
U leert hoe u plug-ins installeert en de basisconfiguratie uitvoert, extra werkknooppunten toevoegt en configuratietools configureert. U zult begrijpen hoe u inloggegevens kunt aanmaken en toegangsrechten kunt differentiëren in Jenkins.
Theorie:
- Slave-agenten toevoegen
- Werken met gereedschap
- Beveiliging in Jenkins
- Methoden voor het afbakenen van rechten
- Waarom hebben we plug-ins en opties nodig om ze te installeren?
Oefening:
- De plug-in installeren en aanvullende tools instellen. Een GitLab-token toevoegen aan referenties.
Implementatie (2 lessen)
Je leert hoe je het juiste type pijplijn kiest om het CI/CD-proces te organiseren, een werkomgeving in te richten voor het ontwikkelen en testen van de pijplijn. U zult begrijpen hoe u een taak kunt maken met parameters, freestyle-taak, declaratieve pijplijn, scriptpijplijn.
Theorie:
- Soorten pijpleidingen
- VScode + IdeeIJ
- Actief reactief + uitgebreide keuze met groove-scripts
Oefening:
- Een pijplijn maken
Integraties met Jenkins
Je leert hoe je pipeline-integratie met SAST Sonarqube en notificatie via e-mail, Telegram en Slack opzet.
Theorie:
- Integratie met Sonarqube: wat is het en waarom?
- Integratie met jforg: wat is het en waarom?
- Methoden voor kennisgeving over de resultaten van de uitvoering van pijpleidingen
Oefening:
- Een pijplijn opzetten met het verzenden van resultaten
Ontwikkeling in Jenkins
Je leert de toepassingsgebieden van Jenkins Shared Library en Jenkins Template Engine, en leert hoe je eenvoudige JSL maakt.
Theorie:
- Laten we twee benaderingen bekijken aan de hand van voorbeelden:
- Jenkins gedeelde bibliotheek en Jenkins Template Engine
Oefening:
- Een eenvoudige gedeelde Jenkins-bibliotheek maken
Beste praktijken
Je leert hoe je een pipeline opzet met behulp van Blue Ocean en hoe je een Jenkins As a Code-configuratie maakt.
Theorie:
- DevOps-manier om Jenkins-configuratie op te slaan
Oefening:
- Een pijpleiding opzetten met Blue Ocean
- Een configuratie als code maken en Jenkins daaruit installeren
Jenkins op Kubernetes
Je leert hoe je de Jenkins- en Kubernetes-integratie opzet. Je begrijpt hoe je een pijplijn configureert om dynamische agenten in Kubernetes te gebruiken.
Theorie:
- Jenkins- en Kubernetes-integratie
Oefening:
- Kubernetes-integratie instellen
- Een pijplijn opzetten met behulp van dynamische agenten
Examen voorbereiding
U zult verschillende opties overwegen voor taken die in interviews kunnen worden opgenomen.
Laatste taak
Je ontvangt 2-3 repositories (frontend en backend). De taak is om het CI/CD-proces uit te werken. De taak zal helpen bij het bepalen van het niveau van vaardigheidsgroei.