week 3 Flashcards
(5 cards)
Scenario:
A retail startup wants to revamp its app delivery cycle using DevOps. They plan to implement continuous testing, monitoring, and deployment to minimize bugs and downtime.
a. Identify and explain four stages of the DevOps lifecycle they should focus on, with their purpose.
(8 marks)
b. For each of the stages above, mention one automation tool commonly used.
(4 marks)
c. Why is it important to integrate continuous feedback in a DevOps pipeline?
(3 marks)
a.
Continuous Testing: Ensures code is bug-free before release
Continuous Deployment: Automates delivery to production
Continuous Monitoring: Tracks health and performance of system
Continuous Feedback: Collects user response to improve product
b.
Testing: Selenium
Deployment: AWS CodeDeploy
Monitoring: Nagios
Feedback: Pendo
c.
Feedback helps teams improve future releases, identify usability issues, and align with user needs faster.
a. Define the following DevOps stages:
i. Plan
ii. Code
iii. Build
iv. Release
(8 marks)
b. Explain how Infrastructure-as-Code (IaC) supports the Deploy phase.
(4 marks)
a.
Plan: Understand requirements and end-user needs
Code: Write code with best practices and version control
Build: Compile source code into executable build
Release: Package and prepare build for production
b.
IaC automates the setup of infrastructure (e.g., servers, networks) using scripts/configs, ensuring consistent environments for deployment.
Scenario:
Your team is managing a large SaaS product used by 10,000 customers. You’re tasked with reducing planned downtime and improving system uptime using DevOps principles.
a. Which DevOps stage specifically targets this issue, and what tools might be used?
(3 marks)
b. Describe how Continuous Operations helps in maximizing uptime.
(4 marks)
c. What is the role of containerization platforms like Kubernetes in this stage?
(3 marks)
d. State one real-world benefit of continuous operations for SaaS businesses.
(3 marks)
a.
Stage: Continuous Operations
Tools: Kubernetes, Docker Swarm
b.
Reduces planned downtimes via load balancing, live updates, and container orchestration.
c.
Kubernetes automates deployment and scaling of containers, enabling live updates and minimizing restarts.
d.
Higher user satisfaction due to system availability and reduced service interruptions.
a. Describe how Continuous Integration works and name two tools used in this phase.
(4 marks)
b. What is the benefit of using Git in Continuous Development?
(3 marks)
c. Explain why automated testing is essential in the DevOps lifecycle.
(3 marks)
a.
Developers regularly merge code into a shared repo; CI tools run builds/tests automatically.
Tools: Jenkins, SonarQube
b.
Git enables version control, collaboration, rollback, and traceability of code changes.
c.
Automated tests ensure faster bug detection, improve stability, and reduce human error before release.
Task:
Pick any five DevOps tools and for each:
i. Name the tool
ii. Identify which DevOps stage it belongs to
iii. Briefly explain its purpose
(2 marks each × 5 = 10 marks)
Tool Stage Purpose
Git Continuous Development Version control and collaboration
Jenkins Continuous Integration Automates builds, tests, and CI pipeline
Selenium Continuous Testing Automates testing across browsers to detect UI bugs
AWS CodeDeploy Continuous Deployment Automates deployment to production environments
Nagios Continuous Monitoring Tracks application and server health