Development and Operations – DevOps
The term "DevOps" is defined as a set of practices, procedures and tools designed to reduce the time between creating a code change and installing it in production while ensuring high quality. DevSecOps is an upgrade of DevOps that enables the integration of security practices early into the DevOps approach. Contrary to the traditional centralized model of the specialized security team/role, each development team is authorized to include the correct security controls in its software delivery.
- Introduction to Development and Operations
- DevOps, basic notions, definitions, history, practices, tools/frameworks/platforms
- DevSecOps: Security as a key component in DevOps practices
- SRE (Site Reliability Engineering): comparison, differences
- Platform Engineering: comparison, differences
- Zero Trust Architecture
- Technical building blocks of cloud-native apps, immutable infrastructure, load balancing, scalability, high availability
- CI/CD (Continuous Integration/Continuous Delivery/Continuous Deployment) pipelines
- GitOps
- CNCF (Cloud Native Computing Foundation), CNCF landscape, evaluating open source projects
- Security in virtualization, hypervisors, containers; differences, typical use cases;
- Choosing the right/optimal technology for different problem domains
- Container runtimes, differences between container runtimes in HPC environments/supercomputers and clouds (cloud-native systems)
- Zero-downtime deployment patterns: rolling upgrade, blue-green deployment, canary deployment, AB testing, shadow deployment
- Best practices in building, securing, operating, running, and orchestrating containers