What is Site Reliability Engineering?
- 사이트 안정성 엔지니어(SRE)는 데브옵스 역할로, 소프트웨어 엔지니어링과 운영을 결합하여 확장 가능하고 안정적인 시스템을 구축합니다. 🧑💻
- SRE는 Google에서 처음 사용한 용어로, 주요 기술 기업에서 개발과 운영 간의 격차를 해소하는 중요한 역할을 수행합니다. 🏢
- SRE의 주요 책임은 시스템 가동 시간 및 안정성 확인, 운영 자동화, SLI(서비스 수준 지표), SLO(서비스 수준 목표), SLA(서비스 수준 계약)를 통한 안정성 측정입니다. 📊
- SRE는 넷플릭스의 Chaos Monkey와 같이 프로덕션 인스턴스를 의도적으로 손상시켜 복원력을 테스트하는 역할을 수행하며, Google Gmail의 99.9% 가동 시간 목표를 측정합니다. 🐒
- SRE의 일상 업무에는 상태 모니터링, 배포 자동화, SLO 정의, 사고 대응 및 사후 분석이 포함됩니다. 🛠️
- SLA는 서비스 제공자와 고객 간의 공식 계약으로, 가동 시간 미달 시 환불 또는 크레딧과 같은 결과를 포함하며, 법적 문제로 이어질 수도 있습니다. ⚖️
- SRE는 오류 예산을 통해 프로덕션에 배포할 코드 양을 결정하고, 사고 발생 시 대응 매뉴얼을 작성합니다. 🚨
- SRE는 모니터링 및 APM 도구, PagerDuty 및 Opsgenie와 같은 알림 도구를 사용합니다. 📱
- Site24x7은 가동 시간 모니터링, 서버 모니터링, 네트워크 모니터링, 클라우드 모니터링 등 다양한 기능을 제공하는 도구입니다. 🌐
- 기업들은 서비스 상태 페이지를 통해 서비스 안정성을 투명하게 공개하며, 이는 법적 요구 사항이기도 합니다. 📰
- SRE는 개발자와 협력하여 릴리스 위험을 줄이고, 오류 예산을 관리하며, 사고 관리를 수행합니다. 🤝