Visão Geral
Este Curso CI/CD Implementing a CI/CD Pipeline, de ferramentas técnicas usando Github, Ansible e Jenkins, dando aos membros da equipe DevOps a capacidade de automatizar todo um pipeline de CI/CD de ponta a ponta.
Construir, testar e implantar código pode ser complexo e demorado. Esta aula técnica prática e conduzida por instrutor de três dias fornece a solução de como criar um pipeline de CI/CD automatizado que cria, testa e implanta código toda vez 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 combina as tecnologias corporativas mais usadas em pipelines únicos, integrados e completos. Ensinaremos o git desde o início para que você possa enviar código com segurança para um repositório remoto, como Github ou Bitbucket. Em seguida, ensinaremos como configurar servidores usando o Ansible a partir do código armazenado no git. Em seguida, integraremos git e Ansible com Jenkins CI/CD para criar, testar e implantar seu código em ambientes de preparação e produção, criando um pipeline de DevOps automatizado de ponta a ponta.
Conteúdo Programatico
Technology Overview
- Git – Source Control Management
- Chef – Configuration Management
- Jenkins – Continuous Integration/Continuous Deployment
Git – Source Control Management
- Purpose overview and use cases
- Git workflow
- Configuring git on your local machine
- Getting help with Git
- Local vs. Global vs. System configurations
- Basic Git Commands
- Creating local git repositories
- Branching and merging
- Using remote repositories
- Pushing code to Github using public and private SSH keys
Ansible – Configuration Management
- Ansible purpose and use cases
- Architecture and call flow
- Ansible installation, configuration, and validation
- Control nodes and managed nodes
- Ansible managed hosts
- Host inventory; hosts and groups
- Repeatable code: Playbooks
- Introduction to YAML
- Modularizing code: Roles
- Ansible variables
- Dynamic configuration with facts
- Finding errors: Ansible unit testing
- Ensuring code quality: Ansible integration testing
Jenkins – Continuous Integration / Continuous Deployment
- CI/CD overview, use cases and history
- Plugin architecture
- Initializing a Jenkins server
- Projects and jobs
- Freestyle jobs
- CI/CD as Code: Pipeline projects
- Declarative vs. scripted pipelines
- Jenkins Environment variables and parameters
- Distributed architecture: Master and agent nodes
- Views and Folders
- Managing credentials and secrets
- Integrating with git Source Control Management
- Triggers: Webhooks and Polling
- Notifications: Instant messaging and SMTP Email
- Approval inputs
- Testing Ansible playbooks in Jenkins
- Multibranch Pipelines: Reading entire repositories
- Conditional Logic
- Deploying Chef cookbooks with Jenkins: An automated end-to-end deployment pipeline