반응형
컨테이너와 도커
- 컨테이너란?
- 앱을 실행할 수 있는 가상 공간
- 도커란?
- 컨테이너를 실행하는 플랫폼
- 사용 방법
- 컨테이너 생성
- Linux 운영체제에 도커 설치
- 도커에 컨테이너 빌드
- 하드디스크에 이미지 생성
- 컨테이너(이미지) 도커 허브에 Push
- 이미지 사용
- Linux 운영체제에 도커 설치
- 컨테이너(이미지)허브에서 다운로드
- 하드디스크에 이미지 생성
- 컨테이너 실행
- 컨테이너 생성
가상머신 vs 컨테이너
가상머신
- 동작 순서
- 하드웨어 인프라에 하이퍼바이저(vmware, virtualbox) 설치
- 소프트웨어 기술을 이용하여 가상 머신 생성
- 가상 머신 내 하드웨어 생성(메모리, cpu, network 등)
- os 설치
- 특징
- 가장 적합한 하드웨어 리소스 할당(유연한 사용 가능)
- 세일 등의 이벤트로 추가 리소스 필요한 경우 추가로 할당하여 사용
- 리소스를 수직적으로 할당하지 않고 수평적으로 할당하는 추세
- 하나의 가상머신에 추가 리소스를 계속 할당하는 경우 해당 가상머신이 다운되면 서비스 불가
- 가장 적합한 하드웨어 리소스 할당(유연한 사용 가능)
컨테이너
- 동작 순서
- 하드웨어 인프라에 호스트 운영체제(리눅스, 윈도우 등) 설치
- 도커 플랫폼 설치&실행
- 컨테이너 생성
- 특징
- 컨테이너는 가상머신과 달리 하드웨어, 운영체제 없이 애플리케이션(웹 서버, 웹 콘텐츠)만 있으므로 훨씬 가볍고 확장이 용이
- 컨테이너는 주로 배포의 목적을 가짐
컨테이너 동작 구조
- 도커 플랫폼에서 여러 컨테이너를 동작하는 구조
- 웹 서버에 리소스가 많이 필요한 경우 여러 웹 서버 수평적 운영
- 멀티호스트 도커 플랫폼
- 시스템 자체가 다운된 경우 서비스가 불가능하므로 여러 시스템에 컨테이너를 분산하여 운영하는 구조
- 여러 시스템에 분산하여 운영하면 하나의 시스템이 다운되어도 다른 시스템을 이용하여 정상 동작 가능
- 시스템 자체가 다운된 경우 서비스가 불가능하므로 여러 시스템에 컨테이너를 분산하여 운영하는 구조
컨테이너 오케스트레이션
- 컨테이너의 애플리케이션들을 웹 서비스에 적합하게 잘 배치하여 최적으로 운영
- 웹 서버 하나를 운영하는데 수백, 수천개의 컨테이너 사용
- 엔지니어가 시스템의 컨테이너 분산을 직접 다 관리하는것이 거의 불가능
- control plane에서 work node 관리
- 다른 시스템들의 애플리케이션 컨테이너들을 배치하고 확장 축소
쿠버네티스
- 쿠버네티스란?
- k8s라고 작성
- kubernetes, k와 s사이 8개의 글자
- 컨테이너화 된 애플리케이션을 자동으로 배포, 스케일링 및 관리해주는 오픈소스 시스템
- 쿠버네티스 뜻: 조타수
- 컨테이너를 운영한다는 의미
- 구글에서 개발
- CNCF 재단에 기부
- k8s라고 작성
- 특징
- 워크로드 분리
- 컨테이너를 분리하여 운영함에도 불구하고 컨테이너 간 통신 원활
- 어디서나 실행 가능
- 온프레미스
- 퍼블릭 클라우드(AKS, EKS, GKE 등)
- 선언적 API
- 쿠버네티스 운영자가 웹서버 3개 실행하라고 선언하면 쿠버네티스가 알아서 배치하고 운영
- 워크로드 분리
참고
반응형
'Kubernetes(k8s) > 따배쿠(따라하면서 배우는 쿠버네티스) 학습' 카테고리의 다른 글
[k8s]kubectl실습(command, pod 생성) (0) | 2023.02.08 |
---|---|
[k8s]kubectl 개요 (0) | 2023.02.08 |
[k8s]쿠버네티스 설치하기 (0) | 2023.02.08 |
[k8s]설치 없이 쿠버네티스 사용하기 (0) | 2023.02.07 |
[k8s]따배쿠 스터디 시작 (0) | 2023.02.06 |