Curso DevOps with JenkinsTerraform and HashiCorp Stack

  • DevOps | CI | CD | Kubernetes | Web3

Curso DevOps with JenkinsTerraform and HashiCorp Stack

24 horas
Visão Geral

Curso DevOps with JenkinsTerraform and HashiCorp Stack, ensina os participantes como construir fluxos de trabalho DevOps CI/CD para ambientes virtuais e de nuvem. Esta aula se aprofunda no DevOps com Jenkins, HashiCorp Stack e Terraform para implantação de recursos da AWS. Os participantes aprendem como usar os recursos da Amazon Web Services.

Objetivo

Após realizar este Curso DevOps with JenkinsTerraform and HashiCorp Stack você será capaz de:

  • Use com confiança a pilha Jenkins, Terraform e HashiCorp
  • Compreenda os vários componentes principais da pilha
  • Entenda o Git e os conceitos e operações básicas
  • Ramifique, mescle e execute operações em repositórios Git
  • Melhore a confiabilidade dos processos de construção e lançamento
  • Entenda as várias peças do Jenkins para CI/CD
  • Configure Maven e Jenkins para implantar os artefatos gerados no Artifactory
  • Use Terraform com AWS
  • Use Atlas com Terraform
  • Implemente segurança secreta com o Vault
  • Configurar o Packer para virtualização
  • Implemente o Vagrant com Terraform e AWS
Materiais
Portugues/Inglês + Lab Pratico
Conteúdo Programatico

Introduction to Continuous Integration, Continuous Delivery, and Jenkins-CI

  1. Foundation of Agile AppDev
  2. XP Flow
  3. Extreme Programming
  4. Agile Development
  5. What is Continuous Integration
  6. What is Continuous Integration (cont'd)
  7. Typical Setup for Continuous Integration
  8. Setup Notes for Continuous Integration
  9. CI with Artifact Management
  10. What is Continuous Delivery?
  11. Why Continuous Delivery?
  12. DevOps and Continuous Delivery
  13. Continuous Delivery Challenges
  14. Continuous Delivery vs Continuous Deployment
  15. Jenkins Continuous Integration
  16. Jenkins Features
  17. Running Jenkins

Getting Started With Maven

  1. Terminology and Basic Concepts
  2. Artifacts
  3. Lifecycle
  4. Default Lifecycle
  5. Plugins
  6. Running Maven - the Story So Far
  7. Running Maven from an IDE
  8. Common Goals
  9. pom.xml
  10. Artifact Coordinates
  11. Standard Layout for Sources

A Web Application in Maven

  1. A More Complex Project
  2. Putting it Together With Maven
  3. Packaging the Target Artifact
  4. The Source Tree
  5. Dependencies
  6. Transitive Dependencies
  7. Dependency Scope
  8. Working With Servers
  9. Declaring and Configuring Plugins
  10. Running the Plugin
  11. Binding a Plugin Goal to the Lifecycle
  12. Archetypes

Job Types in Jenkins

  1. Different types of Jenkins Items
  2. Configuring Source Code Management(SCM)
  3. Working with Subversion
  4. Working with Git
  5. Storing Credentials
  6. Service Accounts
  7. Build Triggers
  8. Schedule Build Jobs
  9. Polling the SCM
  10. Polling vs. Triggers
  11. Maven Build Steps

Continuous Delivery and the Jenkins Pipeline

  1. Continuous Delivery
  2. DevOps and Continuous Delivery
  3. Continuous Delivery Challenges
  4. Continuous Delivery with Jenkins
  5. The Pipeline Plugin
  6. Defining a Pipeline
  7. A Pipeline Example
  8. Parallel Execution
  9. Creating a Pipeline
  10. Invoking the Pipeline
  11. Interacting with the Pipeline
  12. Pipeline vs. Traditional Jobs

Jenkins Plugins

  1. Jenkins Plugins
  2. Jenkins for Teams
  3. Installing Jenkins Plugins

Best Practices for Jenkins

  1. Secure Jenkins
  2. Users
  3. Backups
  4. Reproducible Builds
  5. Testing and Reports
  6. Large Systems
  7. Distributed Jenkins

Overview of the Amazon Web Services (AWS)

  1. Amazon Web Services
  2. The History of AWS
  3. The Initial Iteration of Moving amazon.com to AWS
  4. The AWS (Simplified) Service Stack
  5. Accessing AWS
  6. Direct Connect
  7. Shared Responsibility Model
  8. Trusted Advisor
  9. The AWS Distributed Architecture
  10. AWS Services
  11. Managed vs. Unmanaged Amazon Services
  12. Compute and Networking Services
  13. Elastic Compute Cloud (EC2)
  14. AWS Lambda
  15. Auto Scaling
  16. Elastic Load Balancing (ELB)
  17. Virtual Private Cloud (VPC)
  18. Route53 Domain Name System
  19. Elastic Beanstalk
  20. Security and Identity Services
  21. Identity and Access Management (IAM)
  22. AWS Directory Service
  23. AWS Certificate Manager
  24. AWS Key Management Service (KMS)
  25. Storage And Content Delivery
  26. Elastic Block Storage (EBS)
  27. Simple Storage Service (S3)
  28. Glacier
  29. CloudFront Content Delivery Service
  30. Database Services
  31. Relational Database Service (RDS)
  32. DynamoDB
  33. Amazon ElastiCache
  34. Redshift
  35. Messaging Services
  36. Simple Queue Service (SQS)
  37. Simple Notifications Service (SNS)
  38. Simple Email Service (SES)
  39. AWS Monitoring with CloudWatch
  40. Other Services Example

Introduction to Git

  1. What is Git?
  2. Git's Design Goals
  3. Branching and Merging
  4. Centralized Version Control
  5. Distributed Version Control
  6. Git Basics
  7. Getting Git
  8. Git on the Server
  9. Git Repository Managers
  10. Git on Somebody Else's Server

Basic Git Operations

  1. Using Git
  2. Definitions
  3. Commit
  4. How to Think About Commits
  5. Viewing History
  6. Configuring Git
  7. Configuration Scope
  8. User Identification
  9. GPG Signing
  10. Gnu Privacy Guard
  11. GPG Basics
  12. GPG and Git
  13. .gitignore
  14. Other Useful Configurations

Branching, Merging, and Remotes

  1. Branching
  2. Branches in Git
  3. Merge
  4. Fast Forward Merge
  5. --no-ff
  6. More Than One Repository
  7. Working with Remotes
  8. Fetch and Pull
  9. Push
  10. Pull Requests
  11. Tagging a Commit
  12. Lightweight Tags
  13. Annotated Tags
  14. Sharing Tags
  15. Checking Out a Tag

Git Work Flows

  1. Work Flows
  2. Local Work Flow
  3. Feature Branches
  4. Centralized Workflow
  5. Integration Manager Workflow
  6. Other Work Flows Are Possible

Introduction to GitFlow

  1. What is GitFlow
  2. Benefits
  3. How GitFlow works?
  4. GitFlow Extension
  5. Initializing GitFlow
  6. Features
  7. Release
  8. Hotfixes

Examining History

  1. Looking at History
  2. Log
  3. Blame
  4. Bisect

Introduction to Terraform

  1. What is Terraform
  2. Why Infrastructure as Code
  3. Who is Hashicorp
  4. Other Infrastructure Automation Tools
  5. Terraform
  6. How Does Terraform Work?
  7. Sample Configuration File
  8. Terraform vs Configuration Management
  9. Drawbacks of Configuration Management
  10. Benefits of Declarative Infrastructure
  11. Drawbacks of Declarative Infrastructure
  12. Terraform processing
  13. Master mode
  14. Drawbacks of Master mode
  15. Masterless mode
  16. Agents
  17. Drawbacks of Agents
  18. Agentless

Terraform Basics

  1. The Terraform Command
  2. Running Terraform
  3. The Current State
  4. Directory Structure
  5. Load Order
  6. Configuration Format
  7. HCL
  8. String Interpolation
  9. Configuration Files
  10. Variables
  11. Outputs
  12. Data Sources
  13. Resources
  14. Data Sources and Resources
  15. Providers
  16. Built-in Providers
  17. Configuring Providers
  18. Modules
  19. Defining a Module
  20. Configuring the AWS Provider
  21. Basic Usage - Define an EC2 Instance
  22. Manipulating DNS Entries

VPC ELB and ALB with Terraform

  1. Amazon Virtual Private Cloud
  2. VPC Advantages
  3. Regions and Availability Zones
  4. VPC Concepts
  5. Security Groups
  6. Network Address Translation (NAT)
  7. Public IP Addresses
  8. Load Balancing
  9. VPC with Terraform
  10. Some Notes on Load Balancers

Using ECS and ECR with Terraform

  1. What is Docker
  2. Where Can I Run Docker?
  3. Docker and Containerization on Linux
  4. Linux Kernel Features: cgroups and namespaces
  5. The Docker-Linux Kernel Interfaces
  6. Docker Containers vs. Traditional Virtualization
  7. Docker as Platform-as-a-Service
  8. Docker Integration
  9. Docker Services
  10. Docker Application Container Public Repository
  11. Docker Command-line
  12. Starting, Inspecting, and Stopping Docker Containers
  13. Docker Benefits
  14. Docker on AWS - ECR and ECS
  15. Using Amazon ECR
  16. Authenticating to ECR
  17. Building a Docker Image
  18. Push to ECR
  19. Elastic Container Service
  20. ECS Cluster
  21. ECS Container Instances
  22. Container Instance with Terraform
  23. Task Definition
  24. Task Definition with Terraform
  25. Service Definition

Introduction to Vagrant

  1. What is Vagrant?
  2. Why Use Vagrant?
  3. The Vagrantfile
  4. Sample Vagrantfile
  5. Vagrant Box
  6. Running Vagrant
  7. Networking
  8. Multi-Machine Usage

Introduction to Packer

  1. What is Packer?
  2. Why Use Packer?
  3. Use Cases
  4. Supported Platforms

Utilizing Packer

  1. Installing Packer
  2. Building an Image
  3. The Build Process
  4. Templates
  5. Template Example
  6. Builders
  7. Amazon EC2 Builder
  8. VirtualBox Builder
  9. Provisioners
  10. Configuration Management Provisioners
  11. Post-Processors
  12. Parallel Builds
  13. Remote Builds
TENHO INTERESSE

Cursos Relacionados

Curso Ansible Red Hat Basics Automation Technical Foundation

16 horas

Curso Terraform Deploying to Oracle Cloud Infrastructure

24 Horas

Curso Ansible Linux Automation with Ansible

24 horas

Ansible Overview of Ansible architecture

16h

Advanced Automation: Ansible Best Practices

32h