DEVOPS — Implementing DevOps Solutions and Practices Using Cisco Platforms
DEVOPS - Implementing DevOps Solutions and Practices Using Cisco Platforms
Course Objectives
After taking this course, you should be able to:
Describe the DevOps philosophy and practices, and how they apply to real-life challenges
Explain container-based architectures and available tooling provided by Docker
Describe application packaging into containers and start building secure container images
Utilize container networking and deploy a three-tier network application
Explain the concepts of Configuration Item (CI) pipelines and what tooling is available
Implement a basic pipeline with Gitlab CI that builds and deploys applications
Implement automated build testing and validation
Describe DevOps principles applied to infrastructure
Implement on-demand test environments and explain how to integrate them with an existing pipeline
Implement tooling for metric and log collection, analysis, and alerting
Describe the benefits of application health monitoring, telemetry, and chaos engineering in the context of improving the stability and reliability of the ecosystem
Describe how to implement secure DevOps workflows by safely handling sensitive data and validating applications
Explain design and operational concepts related to using a mix of public and private cloud deployments
Describe modern application design and microservices architectures
Describe the building blocks of Kubernetes and how to use its APIs to deploy an application
Explain advanced Kubernetes deployment patterns and implement an automated pipeline
Explain how monitoring, logging, and visibility concepts apply to Kubernetes
Course Prerequisites
Before taking this course, you should have the following knowledge and skills:
Basic programming language concepts and familiarity with Python
Basic understanding of compute virtualization
Ability to use Linux, text-driven interfaces, and CLI tools, such as Secure Shell (SSH), bash, grep, ip, vim/nano, curl, ping, traceroute, and telnet
Foundational understanding of Linux-based OS architecture and system utilities
CCNA® level core networking knowledge
Foundational understanding of DevOps concepts
Awareness and familiarity with continuous integration, continuous deployment, and continuous delivery CI/CD) concepts
Hands-on experience with Git
The following Cisco courses can help you gain the knowledge you need to prepare for this course:
Developing Applications and Automating Workflows Using Cisco Core Platforms (DEVASC)
Developing Applications Using Cisco Core Platforms and APIs (DEVCOR)
Course Outline
Introducing the DevOps Model
Introducing Containers
Packaging an Application Using Docker
Deploying a Multitier Application
Introducing CI/CD
Building the DevOps Flow
Validating the Application Build Process
Building an Improved Deployment Flow
Extending DevOps Practices to the Entire Infrastructure
Implementing On-Demand Test Environments at the Infrastructure Level
Monitoring in NetDevOps
Engineering for Visibility and Stability
Securing DevOps Workflows
Exploring Multicloud Strategies
Examining Application and Deployment Architectures
Describing Kubernetes
Integrating Multiple Data Center Deployments with Kubernetes
Monitoring and Logging in Kubernetes
Lab Outline
Interact with GitLab Continuous Integration (CI)
Explore Docker Command-Line Tools
Package and Run a WebApp Container
Build and Deploy Multiple Containers to Create a Three-Tier Application
Explore Docker Networking
Build and Deploy an Application Using Docker Compose
Implement a Pipeline in Gitlab CI
Automate the Deployment of an Application
Validate the Application Build Process
Validate the Deployment and Fix the Infrastructure
Build a Yaml Ain’t Markup Language (YAML) Infrastructure as Code (IaC) Specification for the Test Environment
Manage On-Demand Test Environments with Terraform
Build Ansible Playbooks to Manage Infrastructure
Integrate the Testing Environment in the CI/CD Pipeline
Implement Pre-deployment Health Checks
Set Up Logging for the Application Servers and Visualize with Kibana
Create System Dashboard Focused on Metrics
Use Alerts Through Kibana
Instrument Application Monitoring
Use Alerts and Thresholds to Notify Webhook Listener and Cisco Webex® Teams™ Rooms
Secure Infrastructure in the CI/CD Pipeline
Explore Kubernetes Setup and Deploy an Application
Explore and Modify a Kubernetes CI/CD Pipeline
Kubernetes Monitoring and Metrics—Elasticsearch, Logstash, and Kibana (ELK)