사이트 신뢰성 공학

1 개요[ | ]

site reliability engineering (SRE)
사이트 신뢰성 공학, 사이트 신뢰성 엔지니어링, 사이트 안정성 공학, 사이트 안정성 엔지니어링
  • 시스템 관리의 확장 개선
  • 서비스나 인프라의 신뢰성을 유지하기 위한 직무
  • 시스템 운영관리를 담당하는 소프트웨어 엔지니어링
  • 소프트웨어 엔지니어가 운영 업무를 맡을 때 발생하는 것
  • 소프트웨어 공학의 관점들을 인프라스트럭처 및 운영 문제에 적용하는 분야
  • 운영(operations)과 소프트웨어 공학(software engineering)을 결합한 분야 ★
  • 조직이 해당 시스템, 서비스 및 제품에서 적절한 수준의 신뢰성을 달성하도록 지원하는 엔지니어링 분야
  • 고도의 소프트웨어 기술을 이용해 시스템 운용관리 전반을 담당한다.
  • 고도의 소프트웨어 개발능력과 시스템 운영관리 기술을 겸비한 인재가 요구된다.
  • 주업무는 소프트웨어 개발이며, 운영업무 비중은 50% 이하로 제한한다.
  • 구글을 필두로 주요 IT기업들이 적용하고 있다.
MS, Apple, Twitter, Facebook, Amazon, Dell, IBM, Oracle 등
  • 키워드: 자동화(automation), 자율화(autonomuous)

  • 사이트 신뢰성 엔지니어는 제품의 기능을 만들기 보다는 애플리케이션이 실행되는 시스템을 구축한다.
  • 애플리케이션이 안정적으로 실행되도록 하려면 성능 모니터링, 경고 알림, 디버깅, 트러블슈팅 등 다양한 역량이 필요하다.
  • 이런 역량이 없다면 시스템 운영자는 단순히 문제를 조치할뿐, 사전에 예방하기는 어렵다.

  • SRE 접근 방식은 기반 시스템을 지속적으로 개선하여 소프트웨어 개발 프로세스의 비용, 시간, 인력을 최소화시켜준다.
  • 시스템은 인프라 및 애플리케이션 컴포넌트를 지속적으로 측정하고 모니터링한다.
  • 문제가 발생하면 시스템은 사이트 신뢰성 엔지니어에게 언제, 어디서, 어떻게 수정해야 하는지 알려준다.
  • 이러한 접근 방식은 운영 작업을 자동화하여 확장성이 뛰어나고 안정적인 소프트웨어 시스템을 만드는 데 도움이 된다.

2 DevOps와의 관계[ | ]

DevOps와 유사점이 있지만, DevOps는 코드를 프로덕션으로 가져오는 데 중점을 두는 반면, SRE는 프로덕션에서 실행되는 코드가 제대로 작동하는지에 중점을 둔다.

구분 DevOps SRE
시기[1] 2010년 2016년
차이점
  • 개발과 운영 조직의 소통·조화
  • 개발 조직과 운영 조직간의 사일로를 해체하기 위해 발생한 문화적 움직임
  • 코드를 프로덕션으로 가져오는 데 중점을 둔다.
  • 신뢰성에 중점을 두는 엔지니어링 분야
  • 운영(operations)과 소프트웨어 공학(software engineering)을 결합한 분야
  • 프로덕션에서 실행되는 코드가 제대로 작동하는지에 중점을 둔다.
공통점
  • 모니터링/식별 가능, 자동화 추구

3 같이 보기[ | ]

4 참고[ | ]

  1. 영어판 위키백과 기준
문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}