What Is Site Reliability Engineering (SRE) and What Tools Does it Use?
SRE is a methodology that applies software engineering principles to IT operations. The goal is to promote a faster and more efficient workflow. SRE was developed by Google and later developed in a book that explains the methodology.
Because SRE is practiced differently at different organizations, SRE engineers can have several roles. Some SRE engineers are responsible for ongoing operation and availability of production systems, while others build tools and systems that can improve service delivery.
Whatever flavor of SRE your organization practices, the use of tools is essential. SREs use technology to monitor systems, respond to incidents, collaborate to resolve issues, and automate cloud deployments.
Related content: Read our guide to DevOps vs SRE
In this article:
- APM or General Monitoring Tools
- Real-Time Communication
- Automated Incident Response Systems
- Configuration Management Tools
- Site Reliability Engineering with Cloud Volumes ONTAP
APM or General Monitoring Tools
Application performance monitoring (APM) tools provide granular visibility into the entire application stack, reporting on performance from the user’s perspective. General monitoring tools usually focus on a single application. SREs use APM and monitoring tools to capture, measure, and track reliability metrics across the environment.
Datadog offers cloud monitoring functionality. You can use Datadog to set up monitors, view existing infrastructure hosts, collect events, and more. Datadog offers features that let you customize and integrate the solution with other systems.
Kibana is an open-source data visualization platform, which SRE teams can use to analyze operational metrics and identify security events as part of SecOps. It is commonly used to collect metrics from Elasticsearch clusters but can be used for other monitoring tasks as well.
3. New Relic
New Relic was the pioneer of application performance monitoring (APM). It offers a cloud-based full-stack observability platform that specializes in performance monitoring, and telemetry. You can use the platform to track the performance of distributed applications and services on a single dashboard.
4. NetApp Cloud Insights
NetApp Cloud Insights is a cloud infrastructure monitoring tool that gives you visibility into your complete infrastructure. With Cloud Insights, you can monitor, troubleshoot and optimize all your resources including your public clouds and your private data centers.
SRE teams need to collaborate in a timely manner and quickly solve problems before they escalate. To do this, they need a messaging platform that enables interpersonal communication in a closed, secure environment, and can integrate with operational systems to stream notifications and alerts to SREs.
Slack is a popular real-time communication platform now offered by Salesforce. It provides a primary collaboration tool for businesses and teams. SRE teams can use Slack for interpersonal messaging, and also as a programmatic platform that can help automate responses and coordinate events. You can use Slack to set up hooks to other systems, such as ChatOps services.
Telegram offers simple and reliable messaging functionality. The application is free and provides an application programing interface (API) that enables programmatic access. Some SRE teams use it as a lightweight alternative to Slack.
7. Microsoft Teams
Teams is a real-time communication solution offered by Microsoft, typically used by organizations already using Office 365. Teams offers chat-based collaboration functionality that comes with features including online meetings and document sharing. Microsoft offers a free version of Teams for a maximum of 100 users.
Automated Incident Response Systems
SRE teams need to set up preventive measures that protect systems against failure and protect systems when failure occurs. Automated incident response systems can help detect and respond to incidents as they occur.
PagerDuty offers cloud-based incident response functionality designed especially for incident management and on-call rotations. It integrates with a variety of DevOps tools. A major advantage of PagerDuty is that it provides a native app that lets you receive notifications and calls on your mobile devices or smartwatches.
9. VictorOps (Splunk On-Call)
VictorOps is offered as part of the Splunk On-Call solution, which provides enterprise-grade incident response capabilities. It provides on-call scheduling tools like schedules and automations, adds context to alerts to enable easier remediation, and provides native apps for both iOS and Android.
Opsgenie is an incident response solution offered by Atlassian. It provides actionable alerting with automated grouping and filtering of alerts, on-call scheduling with routing rules and escalations, and a reporting and analytics module that lets you track incident response metrics and team productivity.
Configuration Management Tools
SRE teams use configuration management tools to track changes to applications and infrastructure, prevent and monitor for unauthorized changes, and automate deployments and infrastructure updates to make them predictable and reliable.
Related content: Read our guide to Infrastructure as Code (IaC) for DevOps
Terraform by HashiCorp takes an infrastructure as code (IaC) approach, letting you define infrastructure declaratively using simple text files. Based on these declarative templates, Terraform automatically provision infrastructure like virtual machines, Kubernetes clusters, and applications, either on-premises or in public cloud environments.
Ansible uses YAML configuration files to define roles and tasks, and orchestrate their execution in a specified order, across multiple infrastructure components. Ansible connects to the relevant machines over SSH and runs the playbook defined in the YAML files. When done, it cleans up after itself and reports on status. Ansible is based on Python and is easy to customize for specific use cases.
SaltStack takes a different approach to infrastructure automation—it deploys agents on your compute nodes and performs orchestration by pushing commands to the nodes (somewhat like Kubernetes with its kubelet). It can scale up to thousands of nodes with very low overhead. SaltStack is an open-source solution which is now controlled by VMware.
Site Reliability Engineering with NetApp and Cloud Volumes ONTAP
NetApp Cloud Insights gives you complete visibility into your infrastructure and applications. With Cloud Insights, you can monitor, troubleshoot and optimize all your resources and applications across your entire technology stack, whether it’s on-prem or in the cloud. Cloud Insights lets you find and fix problems faster, manage resources more effectively, meet SLOs and SLAs, and detect ransomware before it impacts your business. Click here to learn more and start a free trial.
NetApp Cloud Volumes ONTAP, the leading enterprise-grade storage management solution, delivers secure, proven storage management services on AWS, Azure and Google Cloud. Cloud Volumes ONTAP capacity can scale into the petabytes, and it supports various use cases such as file services, databases, DevOps or any other enterprise workload, with a strong set of features including high availability, data protection, storage efficiencies, Kubernetes integration, and more.
Learn more about how Cloud Volumes ONTAP is used by both SRE and DevOps teams.