Track2. SRE(Site Reliability Engineering) 실전적용! - eCommerce, RCS Chatbot (김미숙 프로 (MC실행그룹), 김선학 프로 (Cloud운영그룹))
1. SRE란? 사이트(서비스)의 신뢰성을 높이는 공학
목표 : 소프트웨어로 서비스의 신뢰성(안정적으로 유지)과 확장성(사용량이 높아지더라도 안정적으로 동일한 수준의 서비스를 제공) 구현
역할
- 1. 자동화(수작업/반복적 업무의 자동화)
- 2. 모니터링(서비스 수준 목표설정(SLO))
- 3. 협업방식(서비스 공동책임, 소통활성화)
- -> 서비스 신뢰성 상승
1-1. SRE 적용사례 (eCommerce 글로벌 확산)
- eCommerce(리테일 시장) : 제품의 출시속도가 굉장히 빠르며 서비스의 종류 다양. 국가별로 설정정보가 다르며 정책이나 법률이 다름. 블렉프라이데이와 같은 이벤트에는 거래량이 급격히 증가.
- 빠르게 변화하는 리테일 시장대응을 위해 신속한 서비스 확산과 안정적인 서비스 제공
- 고객이 원하는 것은... : 신속한 글로벌 확산 및 배포, 모니터링 체계구축, 안정적인 서비스 운영, 글로벌 협업/통합운영
- 개선방향
1. 자동화 (인프라, SW, App 배포 자동화)
2. 모니터링 (오픈소스 기반의 모니터링 구축)
3. 협업방식 (협업툴을 활용한 소통 활성화)
- solution 1 자동화
- 반복적으로 수행했던 수작업들을 선별하여 인프라, SW, App 배포 자동화
- 1) 인프라, SW 배포 자동화
- 운영팀이 코드를 변경할 시, concource(Pipelines 관리)가 자동 감지 후 terraform(인프라 자동화 툴)을 통해서 인프라 배포. 이렇게 만들어진 인프라 상에 SW 배포 자동화 툴을 통해 자동 배포 -> 자동화 툴을 통해서 신규 권역을 구성기간 단축!
- 2) 애플리테이션 배포 고도화
- 개발팀이 코드를 변경할 시, concource(Pipelines 관리)가 자동 감지 후 자동빌드, 각환경별로 배포와 테스트과정을 수행, 이후 slack을 통해 배포 결과를 통지. 운영팀은 slack과 concource(Pipelines 관리)를 통해서 설치과정에서 문제가 있었는지 확인 -> 신규국가를 확산 단축
- solution 2 모니터링
- 전 영역 오픈소스 기반 모니터링 체계 구축 및 모니터링 구축 및 모니터링 구성 자동화 적용(추가 리소스 식별 -> 모니터링 자동 구성 -> 서비스 지속성 관리)
- solution 3 협업 방식 개선
- 글로벌 협업도구(Jira, slack, confluence)를 활용한 신속한 대응 및 글로벌 통합 협업 체계 구현
- eCommerce SRE 결과 : 확산기간단축, 서비스지속성 모니터링, 개발팀 요구사항 대응
2. SRE 적용사례 (RCS(Rich Communication Services) Chatbot 개발자 workSpace)
- RCS(Message) : 1:1chatting, read sign, typing sign 등 + chatbot
- Develop : 1) Portal(Tech Doc, Support, Events,,) 2) workspace(Emulator(동시), Builder,onborading,,,)
- production : netflix OSS Stack, cloud infra host, infra CLi, AnsibleScripts, Cache,,
- Requirement form a SRE engineering(Key Qualifications)
-> SLO(a service level objective)/SLIs(service level indicators), Centralized Logging, VAELT Dashboard, Escalation policy for SLO, CI/CD, Python/Java/Ruby/PerI/Go for buliding
참고 : https://www.youtube.com/embed/TvbQMLflJLI