📈리눅스의 흐름

  • 리눅스는 크게 debain과 redhat 계열로 나뉨
  • 기업 규모가 작을 경우 자사 인력으로 서버 관리를 다 하기 힘들어 유료지만 redhat을 많이 씀
  • 시장 점유율은 ubuntu가 압도적
  • CentOS의 종료에 따라 RHEL, CentOS를 그대로 쓰도록 지원해주는 기업, 마이그레이션 스크립트 제공 기업과 같은 3가지 선택 가능
  • RHEL 복제한 Rocky Linux와 Alma Linux가 있음(많이 사용하는 오픈소스를 사용하자)

⭐컨테이너의 흐름

  • chroot, cgroup, namespace 기술들을 집약해서 정리한 게 LXC(LinuX Container)
  • LXC를 기반으로 docker 만들어짐
  • root 권한으로 설치를 하고 실행을 해서 보안에 취약점을 강화한 rkt(Rocker) 출시
  • containerd는 docker에 컨테이너를 만들어주는 기능이 분리된 것(CNCF 졸업함)

☀️Container Orchestration이란?

1.  App을 컨테이너에 담아서 배포

2. 시스템 운영 노하우를 많이 가지고 있다

  • 컨테이너 오케스트레이션은 쿠버네티스의 점유율이 압도적이다!(사실상 표준)
  • Kubernetes는 현재 표준을 넘어 여러 분야에서 활용
  • 컨테이너를 더 수비게 사용 할 수 있게 해줌
  • 컨테이너는 쿠버네티스와의 인터페이스가 중요

  • RUNC가 기존의 libcontainer와 다른 점은 LXC를 이용하진 않고 Kernel 레벨의 가상화 기술을 씀
  • 컨테이너 표준 OCI
  • Docker는 이 OCI 규격을 맞추기 위해 runC를 만들었음
  • 내부관 통신은 grpc라는 것으로 하는데 컨테이너 런타임의 기술 개발이랑 쿠버네티스의 기능 개발은 서로 별개
  • 따라서 도커에 새 기능이 생기면 쿠머네티스도 같이 패치를 해야함
  •  
  • 그래서 kubelet에서 컨테이너 런타임으로 바로 받을 수 있게 구조를 바꿈
  • 이러한 구조를 지원하기 위해 containerd는 CRI-Plugin 기능 추가
  • cri-o는 태생부터 이 구조를 지원
  • 미란티스 컨테이너 런타임도 이 구조를 위해 cri-dockerd 만듦
  • containerd와 cri-os는 runC를 사용

출처

[인프런] 쿠버네티스 어나더 클래스 (지상편) - Sprint 1, 2

저자 : 일프로

chobo99