Deploying and Automating Infrastructure at Scale

Learn how to use an integrated CI/CD pipeline that tests and deploys server infrastructure the same way every time, including during times of disaster recovery


In order to manage large-scale infrastructure, DevOps teams need to manage how servers are deployed in a repeatable and reliable fashion. Deploying servers at scale can be complex, time-consuming, and when things go wrong, the costs could be huge in losses of both customer revenue and customer trust.

This hands-on, lab-based, instructor-led course teaches exactly how to create and use an end-to-end CI/CD pipeline geared specifically for server and application deployment.

We’ll teach you Terraform from the ground up so you can define in code how to create cloud networking components and launch VM's in the cloud. Then we’ll teach you how to configure those servers using Ansible provisioners. Next, we’ll integrate Terraform and Ansible with Docker containerization, allowing the blistering fast launch of applications on your server infrastructure.

If you decide to hold a private team session of this course, an additional day can be added to teach you how to orchestrate and manage your entire containerized infrastructure with Kubernetes.

Reserve Your Seat
$3195 (USD)
4 days/28 hours of instruction
Group (3+): $2995 USD
GSA: $2750 USD

Next Upcoming Course

There are currently no scheduled classes for this course.
form pictures
private group

Train up your teams with private group training

Have a group of 5 or more students? Cprime also provides specialist private training with exclusive discounts for tailored, high-impact learning.

Contact Us

Deploying and Automating Infrastructure at Scale Schedule

Reserve your seat
There are currently no scheduled classes for this course. Please contact us if you would like more information or to schedule this course for you or your company.

Full Course Details

Part 1 – Infrastructure Platform: AWS Cloud

  1. Installing and using the AWS CLI (Command Line Interface)
  2. AWS Networking
  3. VPC's (Virtual Private Clouds)
  4. Subnets
  5. Internet Gateways
  6. Route Tables
  7. Route Table Associations
  8. Creating AWS Networking Components
  9. Launching VMs in AWS Cloud

Part 2 – Git: Source Control Management: GitHub

  1. This course doesn't teach the basics of git. Git experience is assumed (see the 'DevOps Pipeline' course if your team needs basic git knowledge)

Part 3 – Infrastructure Deployment: Terraform

  1. Intro to Terraform
  2. Creating cloud buckets for storage
  3. Separating code: Multiple Terraform configuration files
  4. Storing state remotely
  5. Git branching
  6. Displaying resource outputs
  7. Creating cloud networking components with Terraform
  8. Configuring cloud Security groups
  9. Using SSH Public/Private Keys with Terraform
  10. Launching and Destroying cloud VM instances with Terraform
  11. Creating reusable code with modules
  12. Using Terraform variables

Part 4 – Configuration Management: Terraform with Ansible

  1. Ansible Provisioners in Terraform
  2. Integrating Terraform-managed instances with Ansible Control Nodes
  3. Launching multi-tiered architectures (web servers and load balancers) with Terraform and Ansible

Part 5 – Notifications: Slack

  1. Integrating CI/CD with Slack
  2. Using Slack for CI/CD approvals and notifications

Part 6 – Containerization: Docker

  1. Purpose and use case for Docker
  2. Docker Hub
  3. Basic Docker commands
  4. Docker Networking
  5. Launching and debugging NGINX containers
  6. Mounting Volumes to containers
  7. Docker mount points: Multiple containers, one shared code location
  8. Launching Docker hosts and Docker containers automatically
  9. Port mapping with containers
  10. Launching multi-tiered architectures (web servers and load balancers): an automated approach
  11. Customizing containers with Docker Hub and Dockerfiles
  12. Reducing infrastructure bloat: Buster-Slim Docker containers

Part 7 – Managed OS: Linux Only

  1. Management of Linux Servers only

Part 8 – Container Management: Kubernetes (Optional)

  1. Kubernetes (K8S) overview and use case
  2. K8S architecture
  3. Installation and configuration
  4. Master and node server components
  5. Creating K8S load-balanced clusters
  6. Deploying Apps with K8S
  7. Scaling Apps
  8. K8S monitoring and App repair
  9. Updating Apps with K8S

Required Prerequisites:

  • Students should have experience with Ansible configuration management and Jenkins CI/CD, either from the Implementing a CI/CD Pipeline course or relevant work experience.
  • Familiar with scripting of any kind
  • Experience working at command line of Unix, Linux, or PowerShell
  • Experience with a text editor of any kind

Job Titles that may find this course useful include:

  • DevOps Engineers
  • System Operations
  • Code Developers
  • Software Developers
  • Quality Assurance Professionals
  • Software Testers
  • Product Owners
  • Infrastructure Engineers
  • Development Team Members
  • Operations Team Members
  • Project Managers
  • Technical Product Managers

  • Define types of networking components and types of virtual machines best for your solutions
  • Use Terraform to build everything needed for an enterprise-class server architecture
  • Relaunch your entire infrastructure in a different cloud region with minimum downtime
  • Turn basic virtual machines launched by Terraform into web or database servers using Ansible
  • Create Docker hosts
  • Launch Docker containers on virtual machines using Ansible
  • Build and launch container images
  • Mount volumes and deploy applications using containers
  • Test for reliable code before deployment
  • Deploy approved code using Jenkins to a remote location such as AWS S3 or JFrog Artifactory

Request Private Group Training