WA2542
DevOps for Architects Training
This course teaches Architects how to use DevOps for continuous integration, application development, and maintenance. Attendees master configuration, automation, monitoring, measuring, and governance. They also learn to construct a stable, scalable, and reliable build and implement an effective configuration management process.
Course Details
Duration
3 days
Prerequisites
An understanding of the basic concepts in version control, release management, automation, governance, and infrastructure.
Target Audience
Architects and Development leads that need to design and implement DevOps in their organization.
Skills Gained
- Confidently design a DevOps framework for their organization.
- Understand the various key components.
- Implement DevOps in their organization.
- Create automation through scripting
- Compare the different tools available for applicability to their environment
- Apply the knowledge to improve reliability of build & release processes
- Utilize the various tools covered in the course in the real world
Course Outline
- Introduction to DevOps
- Why and How
- Modern DevOps Practices
- Key Components of Successful DevOps (CALMS Framework: Culture, Automation, Lean, Measurement, Sharing)
- Driving Business Outcomes with DevOps
- DevOps at the Core: Aligning DevOps with Business Goals
- Continuous Integration (CI), Continuous Delivery (CD), and Continuous Deployment
- Application Performance Monitoring (APM) and Observability
- Continuous Integration & Delivery
- What is Continuous Delivery (CD)?
- Deployment Pipelines with Modern CI/CD Tools (GitLab, GitHub Actions, CircleCI, Jenkins)
- Best Practices for CI/CD Pipeline Design
- Measuring Organizational DevOps Maturity (DORA Metrics)
- Automated Testing and Feedback Loops
- Build & Release Management
- Version Control with Git: Branching Strategies (GitFlow, Trunk-Based Development)
- Repository Management: GitHub, GitLab, Bitbucket
- Feature Flags for Controlled Releases
- Release Monitoring and Rollbacks
- Cloud Computing and Containerization
- Evolution from Virtualization to Containers
- Cloud-Native Applications and Microservices Architecture
- Kubernetes Orchestration and Management: Deploying and Scaling Applications
- Kubernetes Best Practices (High Availability, Security, Networking)
- Service Mesh (Istio, Linkerd) for Advanced Networking and Observability
- Cloud Platforms: AWS, Azure, Google Cloud, and their DevOps Toolchains
- Serverless Architectures: AWS Lambda, Azure Functions, Google Cloud Functions
- Monitoring & Observability
- Modern Monitoring Strategies: Prometheus, Grafana, and ELK Stack (Elasticsearch, Logstash, Kibana)
- Application Performance Monitoring (APM) Tools: Datadog, New Relic, Dynatrace
- Observability: Tracing, Logging, Metrics with OpenTelemetry
- Monitoring Kubernetes Clusters: Prometheus, Thanos, Loki
- Cloud Monitoring: AWS CloudWatch, Google Cloud Monitoring, Azure Monitor
- Alerting and Incident Management
- Measurement and Metrics
- Key DevOps Metrics: Deployment Frequency, Lead Time for Changes, MTTR (Mean Time to Recovery)
- DORA Metrics: Four Key Metrics for Measuring DevOps Success
- Continuous Improvement through Data-Driven Insights
- Tools for Measuring DevOps Performance: Grafana, Prometheus, Datadog
- Automation and Infrastructure as Code (IaC)
- Why Automate Infrastructure?
- Introduction to Infrastructure as Code (IaC): Terraform, OpenTofu, AWS CloudFormation, Azure ARM
- Automated Configuration Management with Ansible, Chef, Puppet
- Continuous Testing and Automated Rollbacks
- Automating Security in CI/CD (DevSecOps): Tools like Snyk, ZAP
- Servers and Serverless Architectures
- Application Servers vs. Serverless Architectures: Key Differences
- Kubernetes-based Server Management
- Introduction to Serverless Technologies (AWS Fargate, AWS Lambda, Azure Functions)
- Managing Microservices in Serverless Architectures
- Agile & Lean Practices
- Modern Agile in DevOps: Continuous Feedback and Iteration
- Scrum and Kanban: Integrating Agile with DevOps
- Value Stream Mapping in DevOps
- Managing Backlogs and Sprints in a DevOps Environment
- Tools for Agile and DevOps: Jira, Azure DevOps, GitLab Issues
- Continuous Code Quality and Security
- Code Quality Tools: SonarQube, Linting Tools
- Static and Dynamic Code Analysis
- Continuous Security Testing: OWASP, Snyk
- Shifting Security Left in the Development Process (DevSecOps)
- Best Practices for Security Automation in CI/CD Pipelines
- Configuration Management & Containerization
- Configuration Management with Ansible, Puppet, Chef
- Managing Docker and Kubernetes Configurations
- Helm for Kubernetes Package Management
- Docker and Kubernetes Security: Best Practices