Curso Implementing A CI/CD Pipeline

  • DevOps | CI | CD | Kubernetes | Web3

Curso Implementing A CI/CD Pipeline

24 horas
Visão Geral

Curso Implementing A CI/CD Pipeline, Esta aula é uma experiência prática sobre como criar seu pipeline de CI/CD do início ao fim.

Construir, testar e implantar código pode ser complexo e demorado. Este Curso Implementing A CI/CD Pipeline, ministrada por instrutor, fornece a solução de como criar um pipeline de CI/CD automatizado que cria, testa e implanta código sempre que um desenvolvedor envia uma alteração de código, garantindo apenas alta qualidade e o código aprovado é implantado.

Os desenvolvedores não usam ferramentas de software isoladas, então por que aprender ferramentas isoladamente? Este Curso Implementing A CI/CD Pipeline, combina as tecnologias empresariais mais amplamente utilizadas em pipelines únicos, integrados e de ponta a ponta. Ensinaremos git desde o início para que você possa enviar código com segurança para um repositório remoto, como Github ou Bitbucket. A seguir ensinaremos como configurar servidores usando Ansible a partir do código armazenado no git. A seguir, integraremos git e Ansible com Jenkins CI/CD para construir, testar e implantar seu código em ambientes de teste e produção, criando um pipeline DevOps automatizado de ponta a ponta.

Objetivo

Após realizar este Curso Implementing A CI/CD Pipeline, você será capaz de:

  • Manter o código usando Git e GitHub
  • Crie, teste e implante playbooks do Ansible por meio de um pipeline de CI/CD do Jenkins
  • Testes de integração completos
  • Escreva CI/CD como código usando Jenkins
  • Compilar, testar, empacotar e armazenar permanentemente aplicativos Java
  • Armazenar artefatos
Publico Alvo
  • Engenheiros DevOps
  • Operações do sistema
  • Desenvolvedores de código
  • Desenvolvedores de software
  • Profissionais de garantia de qualidade
  • Testadores de software
  • Proprietários do produto
  • Engenheiros de infraestrutura
  • Membros da equipe de desenvolvimento
  • Membros da equipe de operações
  • Gerentes de projeto
  • Gerentes Técnicos de Produto
Pre-Requisitos
  • Entenda a finalidade dos servidores de infraestrutura
  • Familiarizado com scripts de qualquer tipo
  • Experiência trabalhando na linha de comando do Unix, Linux ou PowerShell
  • Experiência com editor de texto de qualquer tipo
Materiais
Inglês/Português/Lab Prático
Conteúdo Programatico

Technology Overview

  1. Terraform – Infrastructure control (optional )
  2. Git - Source Control Management
  3. Chef - Configuration Management
  4. Inspec - Cookbook Testing
  5. Jenkins - Continuous Integration
  6. Docker – Containerization (optional for 4-day delivery)

Terraform – Infrastructure Automation (optional)

  • Terraform use and purpose
  • Getting started with Terraform
  • General concepts
  • Installation
  • Configuration Files
  • Provisioning and Building Infrastructure
  • Changing Infrastructure
  • Destroying Infrastructure
  • Resource Dependencies
  • Input Variables
  • Output Variables
  • Modules – Pre-defined Configurations
  • Remote state management
  • Terraform Enterprise
  • Triggering a Plan from Version Control
  • Workspaces
  • Terraform Enterprise Runs
  • Migration from Open Source to Enterprise
  • AWS
    • Managing infrastructure in AWS
    • Creating IAM Policies
    • Authenticating to AWS
    • Launching a serverless application - Lambda
  • Azure
    • Managing infrastructure in Azure
    • Authentication Methods for Azure
  • Git – Source Control Management
    • Purpose and overview of Git
    • Use cases for Git
    • Git workflow
    • Github, Bitbucket and other Git providers
    • Installation and configuration
    • Finding help on Git
    • Creating Local Git Repositories
    • Basic Git Commands
    • Comparing commits
    • Using a Remote Repository
    • Branching and Merging
    • Using SSH keys with Git private repositories
    • Chef – Configuration Management
    • Chef Architecture and call flow
    • Chef Use cases
    • Idempotence
    • Resources
    • Recipes
    • Cookbooks
    • Integration Testing and Test Kitchen
    • Chef Server – a central management repository
    • Ohai, Attributes and the Node Object
    • Chef Roles
  • Jenkins – Continuous Integration / Continuous Deployment
    • Jenkins Overview, Use Cases and History
    • Initializing a Jenkins server
    • Projects & Jobs
    • Freestyle versus Pipeline
    • Writing a Declarative Pipeline Project - CI/CD as Code
    • Distributing builds using Master and Agent Nodes
    • Views and Folders
    • Managing Credentials
    • Integrating with Git - Source Control Management
    • Triggers: Webhooks and Polling
    • Notifications: Slack and SMTP Email
    • Testing Chef Cookbooks with Test Kitchen in Jenkins
    • Multibranch Pipelines - Reading Entire Repositories
    • Using Maven to Compile, Test & Package Java Applications
    • Storing artifacts in JFrog Artifactory
    • Deploying Chef cookbooks with Jenkins
  • Docker – Containerization And Micro-Service (optional with 4-day delivery)
    • Container Use cases: what problems Docker solves
    • Docker Concepts and Components
    • Most-used Docker Commands
    • Storing Docker images
    • Docker Compose
    • Launching microservices using Docker
    • Building a Docker Image using Jenkins
    • Deploying a Docker container using Chef and Jenkins

Finally, we’ll create the end-to-end Pipeline using Git, Chef & Jenkins:

Three-day option:

  • Write Chef cookbooks with Inspec tests
  • Push the cookbooks to a branch within a Git repo
  • This push will automatically trigger Jenkins to download the cookbooks
  • Jenkins will then initiate testing the Chef cookbooks using Test Kitchen
  • If any tests fail, Jenkins notifies the developer to fix and repeat the build
  • Once all tests pass, Jenkins can require human approval. Once approved, Jenkins will upload the cookbooks to the Chef Server
  • Jenkins will then trigger Chef-managed webservers (in AWS) to download the cookbooks from the Chef Server and deploy the cookbook code
  • Jenkins will then send notifications over both Slack and email regarding any failures or the successful deployment of the cookbooks

Four-day option adds:

  • Upon successful testing in Test Kitchen, create and save a Docker image
  • Notify teams of successful deployment of Docker containers

Five-day option adds:

  • Write Inspec tests for Terraform configurations
  • Test our Terraform Configuration in Test Kitchen
  • Jenkins will use Terraform to launch Docker Hosts running Docker containers, as well as use Chef to configure those containers to run micro-services
TENHO INTERESSE

Cursos Relacionados

Curso Terraform Deploying to Oracle Cloud Infrastructure

24 Horas

Ansible Overview of Ansible architecture

16h

Curso Algorithms and Data Structures

24 horas

Curso Object-Oriented Programming with Python

24 horas

Curso Python Scripting and Automation Basics

24 horas

Curso Python Debugging and Error Handling

24 horas

Curso Cloud Bursting with Virtual Kubelet

24 horas