쿠버네티스와 컨테이너 이해하기

2022. 7. 29. 10:21클라우드 컴퓨팅/클라우드 바로알기

728x90
반응형

쿠버네티스와 컨테이너 이해하기

1. 왜 쿠버네티스인가?
쿠버네티스는 클라우드 네이티브 애플리케이션을 실행하기 위한 새로운 업계 표준 도구가 되고 있습니다. 더 많은 개발자와 조직이 온프레미스 환경을 너머 클라우드, 컨테이너의 장점을 활용하여 향상된 기능 및  고가용성(HA) 및 확장성을 보장해야 합니다. 또한 애플리케이션을 구축하고 유지 관리하려면 여러 리소스를 조정하기위해 다양한 시스템 유형과 네트워크 환경을 관리해야합니다.

컨테이너형 애플리케이션을 (도커와 같은것을 이용) 개발한 경우 보다 안정적인 애플리케이션을 관리 및 플랫폼에 대한 필수 요구 사항이 있습니다. 예를 들면 급격한 트래픽 급증이나 실패한 서비스를 다시 시작해야 하는 등의 이벤트가 발생하게 되고 개발자의 수동 개입이 필요합니다. 쿠버네티스클라우드용 컨테이너 오케스트레이션 구축 및 관리를 최적화함으로서 이러한 문제를 해결 할 수 있습니다.

컨테이너의 그룹 또는 파드를 생성하여 추가 증설을 하지않고 인프라를 확장하여 애플리케이션의 요구에 응답합니다. 컨테이너 중심으로 시스템을 구성하면 쿠버네티스를 통해 인프라가 자동으로 복구되며, 개발부터 제품싸지의 서비스 환경을 일관되게 유지할 수 있습니다. 


쿠버네티스는 구글이 처음에 확장에 도움을 주기 위해 설계한 컨테이너 오케스트레이션 시스템입니다. 클라우드에서 컨테이너화된 애플리케이션. 쿠버네티스는 컨테이너의 라이프 사이클을 관리할 수 있습니다. 애플리케이션의 필요에 따라 삭제와 재생을 반복하여 수행할 뿐만 아니라 다양한 기능을 제공할 수 있습니다.쿠버네티스는 클라우드 기반 애플리케이션 개발에서 가장 많이 논의되는 개념 중 하나가 되었습니다.

 

쿠버네티스의 장점
① 복구 자동화 : 컨테이너들을 모니터링하면서 정상 작동이 불가능한 컨테이너 발견 시 빠르게 재시작합니다.
② 로드 밸런싱 : 트래픽이 가중되면 자동으로 컨테이너가 증설됩니다.
③ 무중단 서비스 : 점진적인 업데이트를 제공하여 서비스를 중단하지 않고 애플리케이션 업데이트 가능합니다.
④ 호환성 : 도커 컨테이너 기반의 오픈소스이기 때문에 특정 업체에 종속되지 않고 클라우드 환경으로 이전이 가능하다.
       

반응형

2. 컨테이너
쿠버네티스는 컨테이너 오케스트레이션 도구로 컨테이너 런타임 설치가 필요합니다. 실제로 쿠버네티스의 기본 컨테이너 런타임은 도커이지만, rkt 나 LXD도 작동합니다. 컨테이너 런타임 인터페이스(CRI)의 등장으로 쿠버네티스가 컨테이너와 상호 작용하는 방식이 표준화되었습니다. 


1) 컨테이너는 가상 시스템과 유사합니다. OS자원을 공유하는 경량의 격리된 런타임입니다. 컨테이너는 리소스를 거의 사용하지 않지만 필요한 전체 정보를 포함합니다. 파일, 환경 변수 및 라이브러리와 같은 포함된 응용 프로그램 이미지를 실행합니다.

 

2) 컨테이너화는 컨테이너에서 마이크로서비스를 통해 애플리케이션을 실행하는 가상화 방법입니다. 마이크로 서비스 애플리케이션을 컨테이너화하려면 인스턴스를 생성하기 위한 기본 이미지가 필요합니다. 애플리케이션 이미지가 존재하면 중앙 컨테이너 레지스트리에 푸시할 수 있고, 쿠버네티스가 클러스터의 파드에 컨테이너 인스턴스를 구현하는 역할을합니다.


3)오케스트레이션은 컴퓨팅시스템, 소프트웨어, 미들웨어등을 자동으로된 구성, 조정 및 관리하는 서비스입니다.
컨테이너 오케스트레이션을 통해 모든 프로비저닝, 구축, 컨테이너의 가용성, 로드 밸런싱, 컨테이너 간의 리소스 할당 및 상태 클러스터 모니터링이 가능해집니다.

컨테이너의 장점
① 빠른 시작과 종료 속도 : 가상환경이 커널에서 공유되므로 새로운 커널을 시작하거나 하드웨어 초기화 작업이 필요 없습니다.
② 높은 집적도 : 여러 개의 프로세스가 실행중 이라고 해도 PC상에서 동작중인 OS는 하나이므로 VM에 비해 고밀도 시스템 활용을 할 수 있습니다.

③ 낮은 오버헤드 : 가상화를 위한 하드웨어 복제 단계 생략으로 인해 오버헤드가 거의 발생하지 않습니다.

컨테이너의 단점
① Host OS에 종속 : Linux이외의 다른 OS에서는 동작하지 않으며, 컨테이너 별 커널 구성이 불가능합니다. 

728x90
반응형