Fairy ' s
[DevOps] DevOps란? 본문
개발팀과 운영팀 생각의 차이에 대해 인지하고 그 간극을 줄여보자는 이야기에서 시작되었다. 이러한 생각이 지속적으로 발전을 거듭해서 현재는 소프트웨어 개발, 우리의 일에 관한 포괄적인 철학과 방법론이 되었다.
5가지 철학
- 문화 (Culture) : DevOps를 통해 하나의 문화를 만들어 나간다.
- 사람 : 팀, 인원, 가치, 의사소통
- 일 : 프로세스, 방법론
- 서비스 : 서비스의 가치, 성격
- 자원 : H/W, S/W 기술, 도구
- 시간 : 일정에 따른 변경 가능성, 회복 탄력성, 예측
- 자동화 (Automation) : 자동화를 통해 효율성과 빠른 속도를 지향한다.
- 인프라 및 보안 : 클라우드, 네트워크, 접근제어, 암호화
- 언어 및 도구 : 프로그래밍 및 도구
- 지속적 통합 / 배포 : CI/CD 파이프라인 구성 고려
- 모니터링 : 모니터링 시스템 및 장애 대응
- 측정 (Measurement) : 지표를 측정하여 지속적으로 개선해 나간다.
- 변경사항 발생 시 항상 측정
- 애플리케이션 성능, 개발 속도 모니터링
- 지속적으로 나아지고 있는지, 아닌지 측정
- 의사결정 시 추측은 배제
- 공유 (Sharing) : 투명한 공유를 통해 함께 발전해 나간다.
- 언제든 접근 가능한 투명한 데이터
- 지식의 공유, 함께 성장
- 문제 발생 시 함께 해결
- 일의 가속도 그래프
- 축적 (File up & Pile up) : 기록을 축적하여 자산을 만들어 나간다.
- 효율적으로 1만 시간의 법칙이 이루는 것
DevOps는 어떤 요구사항을 효율적으로 만족시키기 위해, 일을 자동화하며 변경 사항 지표들을 측정하고, 공유하고, 이 모든 결과물들을 지속적으로 축적해 나아가는 문화를 만들어가는 철학, 방법론, 기술이다.
DevOps Engineer / Skill
올바른 DevOps 문화를 위해 서비스 혹은 S/W LifeCycle 에서 반복적인 일들을 자동화하고, 기술적 문제 혹은 팀의 차이를 예방하고, 해소시키는 사람. DevOps 엔지니어링에 관련된 기술을 다양한 곳에 접목한다.
- Soft skill : 사회 기술, 의사소통 기술, 성격 또는 성격 특성, 태도, 직업 속성, 소셜 인텔리전스 및 감성 인텔리전스 지수 등의 조합으로, 사람들이 환경을 탐색하고 다른 사람들과 잘 일하는 능력
- Technical Skill : 특정한 일을 효과적으로 수행하는 지식과 능력
Soft skill | |
문제 인식 | 문제가 무엇이 있는지, 정확한 원인이 무엇인지 파악 |
선택과 집중 | 문제를 적합한 방법을 통해 해결, 우선순위 설정 |
결정 | 수 많은 선택지에 대해, 추측이 아닌 확신을 가지고 빠르게 결정 |
업의 속성 | 좋은 결정을 내리기 위해 제공하는 서비스의 본질과 가치 이해 |
사용자 | 사용자를 이해하고, 요구사항에 대해 빠르게 피드백 |
Technical skill | |
프로그래밍 | 능숙하게 다룰 수 있는 언어는 큰 강점이 된다. ex) Go, Python, Node.js 등 |
운영체제 | 운영체제를 능숙하게 다루는 것과 개념을 반드시 알아야 한다. ex) Linux, Shell, Os metrics, File system, 7 layers 등 |
서버 관리 | 서버를 관리하는 기술과 운영지식을 통해 신뢰할 수 있는 서비스를 구축해야 한다. ex) IaC, CICD, API, 가용성, 성능 등 |
오픈소스 | 인프라를 이루는 S/W 들을 이해하고, 자동화 도구들을 다룰 수 있어야 한다. ex) nginx, Tomcat, MySQL, Redis, Ansible, Terraform 등 |
클라우드 | 퍼블릭 클라우드를 능숙하게 다루고, 직접 구축 및 설계를 할 수 있어야 한다. ex) AWS, Azure, GCP, Alibaba 등 |
'Study > DevOps' 카테고리의 다른 글
[DevOps] Infrastructure as Code / Terraform (0) | 2023.07.16 |
---|
Comments