•
쿠버네티스를 다루는 전문직이나 비전문직의 고용 비율이 증가함
•
컨테이너 오케스트라에서 쿠버네티스 사용 비율이 급증
•
1711 개 회사는 구글, 슬랙, Shopify를 포함한 기술 스택에서 Kubernetes를 사용가상화 점유율 9.1% 이상
•
모놀리식(Monolithic architecture) 아키텍처
•
전통적인 아키텍처, 기존에 사용하던 서비스 방법
•
서비스가 하나의 애플리케이션으로 돌아가는 구조
•
기존의 개발 방식을 사용해 개발하여 간단히 배포
•
하나의 서비스 또는 어플리케이션이 하나의 거대한 아키텍처
•
다양한 기능을 동작하는 서비스를 서버에서 실행하여 서비스
모놀리식 단점
•
기존의 애플리케이션을 그대로 복제하여 로드밸런싱
•
불필요한 서비스까지 모두 공유 및 복제
•
종속적인 라이브러리의 충돌
◦
각각의 기능들은 서로 다른 기능을 제공하여 버전의 종속성을 필요한 경우가 존재
◦
각 기능의 따른 라이브러리를 매번 업데이트마다 관리하기 매우 어려움
컨테이너를 격리하는 기술
리눅스 네임 스페이스: 각 프로세스가 파일 시스템 마운트, 네트워크, 유저(uid), 호스트 네임(uts) 등 에 대해 시스템에 독립 뷰를 제공
리눅스 컨트롤 그룹: 프로세스로 소비할 수 있는 리소스 양(CPU, 메모리, I/O, 네트워크 대역대,device 노드 등)을 제한
데브옵스(DevOps) 모델
•
데브옵스는 소프트웨어 개발과 IT 운영을 결합한 합성어
•
기존의 분리된 소프트웨어 개발팀과 IT 운영팀의 협업으로 전체 라이프사이클을 함께 관리할 수 있자는 일종의 철학 또는 운동
•
소프트웨어 개발팀과 IT 팀이 더 빠르고 안정적으로 소프트웨어를 빌드, 릴리즈할 수 있도록 두 팀 간의
프세스를 자동화하는 일련의 과정
데브옵스의 이점
➢속도: 서로의 업무에 대해 더 잘 이해하여 좀더 신속하게 사용자에게 필요한 업데이트를 수행 가능. 개발자는
소비자가 무엇을 원하는지, 운영자는 애플리케이션을 제공하는데 해결할 문제를 인지할 수 있음
➢신속한 제공: 컨테이너와 마이크로서비스를 사용하면 더 자주 빠르게 릴리즈하는 것이 가능. 더 빠르게 좋은
기능을 제공할 수 있으며 개발자가 운영에 필요한 인프라와 하드웨어에 대해 잘 몰라도 릴리즈가 가능.
➢ 개발과 릴리즈가 편해지므로 안정성이 확보, 협업 강화