SRE Reliability Principles & Service Level Objectives 1 — Questions and Answers
Question 1: What is the primary purpose of setting Service Level Objectives (SLOs)?
- To ensure 100% uptime.
- To align business and reliability expectations (Correct answer)
- To eliminate the need for monitoring.
- To replace Service Level Agreements (SLAs).
Correct answer: To align business and reliability expectations
Service Level Objectives (SLOs) are targets for a service's reliability, defining an acceptable level of performance or availability. Their primary purpose is to create a shared understanding and alignment between the service provider (SRE team) and business stakeholders regarding what constitutes 'good enough' reliability. This alignment helps in making informed decisions about resource allocation, feature development, and operational priorities.
Question 2: What metric represents the frequency of successful system responses?
- Latency
- Availability (Correct answer)
- Throughput
- Error budget
Correct answer: Availability
Availability is a key Service Level Indicator (SLI) that measures the proportion of time a system or service is operational and capable of performing its intended function. It is typically expressed as a percentage of successful requests or uptime over a given period. High availability indicates a system that is consistently accessible and responsive to user requests, representing the frequency of successful system responses.
Question 3: How does an error budget help SRE teams?
- It increases deployment frequency.
- It defines the acceptable level of unreliability (Correct answer)
- It measures system throughput.
- It replaces performance metrics.
Correct answer: It defines the acceptable level of unreliability
An error budget is the maximum amount of acceptable downtime or unreliability a service can experience over a specific period, derived directly from its Service Level Objectives (SLOs). It provides a quantitative measure of how much 'unreliability' the system can tolerate before violating its SLOs. This budget allows SRE teams to balance the need for new feature development with the imperative of maintaining system reliability, enabling calculated risks.
Question 4: Which of the following is an example of a latency metric?
- HTTP 500 error rate
- Request response time (Correct answer)
- CPU utilization
- Traffic volume
Correct answer: Request response time
Latency refers to the delay between a user's request and the system's response. Request response time directly measures this delay, indicating how quickly a service processes and returns a result for a given request. It is a crucial metric for user experience, as high latency can lead to frustration and perceived slowness, making it a direct example of a latency metric.
Question 5: Why should SLOs be reviewed periodically?
- To make them more strict over time.
- To align with changing requirements and reliability targets (Correct answer)
- To comply with financial audits.
- To replace SLIs and SLAs.
Correct answer: To align with changing requirements and reliability targets
SLOs are not static; they should evolve as the business, user expectations, and system capabilities change over time. Periodic review ensures that SLOs remain relevant and accurately reflect current business objectives and user needs. This dynamic approach allows SRE teams to adapt their reliability efforts and resource allocation to new priorities and technological advancements, maintaining their effectiveness.
Question 6: What does SLI stand for in SRE terminology?
- Service Latency Index
- System Learning Indicator
- Service Level Indicator (Correct answer)
- Service Logging Interface
Correct answer: Service Level Indicator
SLI stands for Service Level Indicator in SRE terminology. An SLI is a carefully defined, quantifiable measure of some aspect of the level of service that is provided. Examples include latency, throughput, error rate, and availability, which are used to measure how well a service is performing against its Service Level Objectives (SLOs).
Question 7: Which principle emphasizes balancing innovation with reliability?
- 100% uptime policy
- Error budgeting (Correct answer)
- Resource capping
- Load balancing
Correct answer: Error budgeting
Error budgeting is a core SRE principle that explicitly balances the tension between innovation (deploying new features) and reliability (maintaining system stability). By defining an acceptable level of unreliability (the error budget), teams can use the remaining budget for experimentation and new deployments. If the budget is exhausted, focus shifts back to reliability work, ensuring a sustainable pace of development and balancing these two critical aspects.
Question 8: What should an SLO be tied to?
- Codebase complexity
- Business objectives and user impact (Correct answer)
- Infrastructure cost
- Deployment frequency
Correct answer: Business objectives and user impact
Service Level Objectives (SLOs) should always be tied directly to what matters most to the business and its users. They define the acceptable performance and reliability from the perspective of the end-user experience and critical business functions. This ensures that SRE efforts are focused on improving aspects that directly contribute to user satisfaction and overall business success, making them impactful and relevant.
Question 9: Which action is recommended when error budgets are consistently exhausted?
- Increase the number of deployments
- Lower the SLO threshold
- Pause new releases and improve system reliability (Correct answer)
- Ignore and continue operations
Correct answer: Pause new releases and improve system reliability
When error budgets are consistently exhausted, it signals that the system is failing to meet its agreed-upon reliability targets. In such cases, SRE principles dictate that the team should prioritize reliability work over new feature development. This means pausing new releases to focus on identifying and fixing the underlying causes of unreliability, thereby restoring the system to its desired state and ensuring long-term stability.
What is the primary purpose of setting Service Level Objectives (SLOs)?