k8s

정은지·2023년 6월 16일

도커 구조는 2가지로 나뉜다.
1. 클라이언트로서의 도커
2. 서버로서의 도커(컨테이너 생성, 이미지 관리) - dockered 프로세스에서 동작함

  • 클라이언트 도커
    cli를 제공

사용자가 docker로 시작하는 명령어를 입력하면 도커 클라이언트를 사용,


쿠버네티스

설치

  • 개발용도 쿠버네티스 설치 : docker desktop for mac/windows에 내장된 쿠버네티스
  • 서비스 테스트 or 운영 용도의 쿠버네티스 설치 : kops, kubespray, kubeadm / EKS, GKE 등의 매니지드 서비스

실제 서비스 테스트 OR 운영 용도로 사용 시

  1. 자체 서버(온프라미스)에 쿠버네티스 설치 가능(kubespray, kubeadm 등의 도구 사용)
  2. 클라우드 서버 인프라에서 쿠버네티스 설치 (EC2)
  • 네트워크, 인프라 관리는 AWS, GCP같은 클라우드 제공자에게 맡긴다~
  • (kubespray, kubeadm, kops 등의 도구 사용)
  1. EKS(Elastic Kubernetes Service), GKE(Google Kubernetes Engine) 등 의 매니지드 쿠버네티스 사용 (완전 관리형)
  • 장점 : 쿠버네티스 설치 및 관리까지 클라우드 제공자가 담당해서 k8s의 관리 및 유지보스의 비용이 줄어듦. 별도로 설치 안해도 되고 실제 서비스 환경을 구성할 수 있음

1->3 으로 갈 수록 관리의 복잡성 증가, 3 -> 1 로 갈 수록 클라우드 의존성 감소.

docker desktop for Mac/windows : 로컬에서 쿠버네티스 기본 기능 테스트 가능, 일부 기능 제한
GKE, EKS 등의 완전 관리형 서비스 : 가장 쉽게 사용 가능, 클라우드 플랫폼의 종속적인 기능 사용가능(로드 밸런싱, 오토스케일링 이런거)
클라우드 의존성 증가, 비용 증가.
kubespray, kubeadm : 온프레미스, 클라우드 인프라에서 설치 가능. 관리 쬐꼼 어려울 수 있음, 쿠버네티스를 설치할 서버 인프라를 직접 마련해야함.
kops : 특정 클라우드 플랫폼에서 쉽게 쿠버네티스 설치 가능, 서버 네트워크 등 각종 인프라도 자동으로 프로비저닝(?) ..

프로비저닝이란?..
IT 인프라 자원을 사용자 또는 비즈니스의 요구사항에 맞게 할당, 배치, 배포해서 시스템을 사용할 수 있도록 만들어 놓는 작업을 의미한다.

쿠버네티스는 클라우드 플랫폼에서만 사용할 수 있는 기능이 일부 포함되어있다...
로컬개발환경이나 온프레미스 서버에서 설치해서 쓸 경우 로드밸런서 이런 기능 못 씀 

0개의 댓글