IT 용어

[IT 용어 1.] Devops, SRE, Cloud/System Engineer

Somaz 2024. 11. 14. 10:38
728x90
반응형

Overview

DevOps, Site Reliability Engineering (SRE), Cloud Engineering, and System Engineering 이라는 용어는 소프트웨어 개발, IT 운영 및 기타 분야의 특정 과제를 해결하기 위해 발전한 역할을 나타낸다. 인프라 관리. 다음은 각 역할, 개발 방법, 고유한 엔지니어링 관점에 대한 분석해보자.

 

출처 : https://www.infoq.com/articles/platform-sre-evolving-devops/

 

 

 


 

Devops vs Site Reliability Engineering (SRE) vs Cloud Engineering vs System Engineering

Role Origins & Purpose Core Focus Key Skills & Tools
DevOps Dev & Ops, CI/CD 및 자동화 연결 CI/CD 파이프라인, 자동화, 협업, 코드형 인프라 Jenkins, Github Action, GitLab CI, Docker, Kubernetes, Terraform, ArgoCD, etc..
SRE 소프트웨어 엔지니어링 원칙을 통한 신뢰성 운영, 모니터링, 사고 대응, 오류 예산 자동화 Prometheus, Grafana, 사고 대응(SLO), Python/Go 코딩, 인프라에 대한 깊은 지식
Cloud Engineering 클라우드 인프라 관리 확장 가능하고 안전하며 비용 효율적인 클라우드 기반 리소스 설계, 배포 및 관리 AWS, GCP, Azure, Terraform, CloudFormation, 클라우드 보안 사례
System Engineering 기존 IT, 서버 및 네트워크 관리 용량 계획, 시스템 구성, 네트워크 관리, 때로는 가상화 Linux/Windows OS, VMware, Hyper-V, 네트워킹, 쉘 스크립팅

 

 

Devops란?

DevOps라는 용어는 애자일 방법론이 인기를 끌던 2000년대 후반에 등장했다. 목표는 역사적으로 사일로에서 일하여 릴리스 주기가 느려지고 배포 문제가 발생하고 의사소통이 원활하지 못한 개발(Dev) 팀과 운영(Ops) 팀 간의 격차를 해소하는 것이었다. 초기 DevOps 방식은 자동화, 지속적 통합(CI), 지속적 전달(CD) 파이프라인에 중점을 두어 개발에서 프로덕션까지 코드를 간소화는 것이다.

 

엔지니어링 관점

DevOps 엔지니어는 전체 소프트웨어 개발 수명주기(SDLC)에서 자동화 및 프로세스 효율성을 강조헌다. 이들의 목표는 CI/CD 파이프라인, 버전 제어, 테스트를 강화하여 소프트웨어 품질과 배포 빈도를 개선하는 것이다. 핵심 사례에는 IaC(코드형 인프라), 모니터링, 조정, 공동작업 도구가 포함되어 일관되고 반복 가능한 프로세스를 보장한다.

  • 기술: 작업 자동화를 위한 스크립팅 지식(예: Python, Bash)과 함께 Jenkins, Github Action, GitLab CI/CD, Docker, Kubernetes, Terraform과 같은 Opensource 도구에 대한 활용 능력

 

 

Site Reliability Engineering (SRE)

SRE는 2000년대 초 Google이 신뢰성 및 운영 안정성에 대한 엔지니어링 중심 접근 방식으로 개척했다. Google SRE팀은 수동 작업을 자동화하고 인프라 관리에서 사람의 개입을 최소화하는 것을 목표로 소프트웨어 엔지니어링 원칙을 시스템 관리에 적용했다. SRE는 오류 예산, 서비스 수준 목표(SLO), 서비스 수준 계약(SLA)과 같은 개념을 도입하여 안정성과 민첩성의 균형을 맞추는 데 중점을 두었다.

 

엔지니어링 관점

SRE는 소프트웨어 엔지니어링 관점에서 인프라를 바라보며 운영에 코딩 방식을 적용하여 시스템의 안정성, 확장성, 관리성을 향상시키려고 한다. self-healing 인프라를 목표로 시스템을 사전에 모니터링하고, 경고하고, 수리하는 자동화된 도구를 설계한다.

  • 기술: 모니터링 도구(Prometheus, Grafana), 사고 대응, 고급 프로그래밍 언어(Python, Go), 시스템 내부 및 안정성 엔지니어링 원칙에 대한 심층적인 이해에 대한 전문 지식

 

SLO란?

서비스 수준 목표(SLO)는 사이트 안정성 엔지니어링(SRE)의 장애 대응 기능의 핵심이다.

SLO는 서비스의 안정성, 가용성 또는 성능에 대한 측정 가능한 목표로, 서비스가 사용자 기대를 충족할 만큼 '충분히 좋은지' 판단하는 데 도움이 된다. 이는 허용 가능한 임계값과 오류 허용 범위를 정의하여 시스템 안정성 관리에 대한 SRE 접근 방식의 기초를 형성한다.

 

 

SLO 예시

  • 가용성 SLO: 서비스는 한 달 동안 99.9%의 시간 동안 사용할 수 있어야 한다.
  • 지연 시간 SLO: 요청의 95%가 500밀리초 이내에 응답해야 해야 한다.

 

 

 

클라우드 엔지니어링(Cloud Engineering)

2000년대 중반 클라우드 컴퓨팅이 등장하면서(Amazon Web Services는 2006년에 출시되었으며, 이후 다른 주요 CSP 업체도 출시) 클라우드 환경을 효과적으로 관리해야 하는 엔지니어의 필요성이 증가했다. 기업이 온프레미스 인프라에서 클라우드로 전환해야 함에 따라 클라우드 엔지니어링이 발전했으며, 이에 따라 클라우드 아키텍처, 보안, 비용 관리에 대한 새로운 기술이 필요해졌다.

 

엔지니어링 관점

클라우드 엔지니어는 확장 가능하고 안전하며 비용 효율적인 클라우드 기반 인프라 설계, 배포, 관리에 중점을 둔다. 이들의 역할에는 적합한 서비스 선택, 네트워킹 및 보안 구성, 비용 최적화, 클라우드 리소스 프로비저닝 자동화가 포함되는 경우가 많다.

  • 기술: 클라우드 플랫폼(AWS, Google Cloud, Azure), IaC(Terraform, AWS CloudFormation), 클라우드 네이티브 서비스 및 클라우드 보안 관행에 대한 숙련도

 

 

시스템 엔지니어링(System Engineering)

시스템 엔지니어링은 IT에서 가장 오래된 분야 중 하나이며 물리적 및 가상 시스템(예: 서버, 네트워크, 데이터베이스)의 설계, 배포 및 유지 관리에 중점을 둡니다. 이는 IT 인프라의 기초이며 기존 시스템 관리를 포괄한다. IT 환경이 발전함에 따라 시스템 엔지니어는 가상화, 구성 관리 및 서버 자동화 방식을 통합하여 적응해 왔다.

 

엔지니어링 관점

시스템 엔지니어는 서버, 운영 체제, 네트워크를 관리하고 유지 관리하여 시스템 신뢰성, 성능 및 확장성을 강조한다. 용량 계획, 네트워크 관리, 시스템 구성, 때로는 가상화 또는 프라이빗 클라우드 설정에 중점을 둔다.

  • 기술: 운영 체제(Linux, Windows), 가상화(VMware, Hyper-V), 네트워크 프로토콜 및 시스템 스크립팅(Shell, PowerShell)에 대한 깊은 지식

 

 

마무리

DevOps, SRE, 클라우드 엔지니어링, 시스템 엔지니어링 사이의 경계는 확실히 모호해지고 있다. 현대 인프라에서는 엔지니어가 이러한 분야의 모든 측면을 이해해야 한다는 요구가 점점 더 커지고 있기 때문이다.

 

미래에는 엔지니어가 "masters of all"이 될 필요는 없지만 빠르게 발전하는 기술 환경에 적응하려면 모든 영역에 걸친 실무 지식이 필요할 것이다.

 

궁극적으로 전문화는 여전히 존재하지만 역할은 "T자형" 기술 세트, 즉 특정 분야에 대한 깊은 전문 지식과 여러 분야에 걸친 폭넓은 지식을 요구하도록 수렴되고 있습니다. 미래에는 전문적일 뿐만 아니라 필요에 따라 여러 영역을 연결할 수 있을 만큼 적응력이 있는 엔지니어가 선호될 것이라고 본다.

 

 


Reference

https://www.spaceone.megazone.io/blog/devops-vs-sre

https://medium.com/@bdccglobal/devops-vs-sre-vs-cloud-engineer-substance-or-semantic-e2894337cbd

https://www.infoq.com/articles/platform-sre-evolving-devops/

 

728x90
반응형