목록Infra/Kubernetes (4)
오답노트

Kubernetes Object 가장 기본적인 구성단위로 상태를 관리하는 역할을 한다. 기본적인 오브젝트로는 Pod, Service, Volume, Namespace가 있다 . 오브젝트는 Spec(정의된 상태)와 Status(현재 상태)가 존재한다. Namespace는 단일 클러스터 내 리소스 그룹 격리를 위한 오브젝트이다. 이는 사용자가 여러 팀으로 구성하는 경우, 프로젝트를 진행함에 있어 환경을 분리 해야 하는 경우 사용한다. Kubernetes Controller 각 컨트롤러는 현재 상태(Status)를 정의된 상태(Spec)에 가깝게 유지하려 한다. 관찰 : 현재 상태를 관찰한다. 상태 변동 : 현재 상태와 정의한 상태를 비교한다. 조치 : 현재 상태를 정의한 상태로 변경한다. 그리고 다시 관찰 ..
All-in-One Single-Node Installation 한 개 노드안에 마스터 노드 워커 노드 모두 존재하는 형식이다. 테스트 단계에서만 사용하고 실제 배포할 수 없다. 그 이유는 etcd가 마스터 노드와 함께 있다면, 마스터노드 etcd 둘 중 하나라도 문제가 발생하면 전부 에러가 발생할 수 있기 때문이다. Single-Node etcd, Single-Master and Multi-Worker Installation 마스터 노드와 워커노드를 분리 하지만 마스터 노드가 존재하는 노드에 etcd도 존재하기 때문에 위와 마찬가지 에러가 발생한다 Single-Node etcd, Multi-Master and Multi-Worker Installation 마스터노드와 etcd가 같이 있는 노드가 하나 ..

클러스터 쿠버네티스는 클러스터라는 형태로 배포한다. 클러스터 노드는 마스터 노드와 노드(워커 노드)로 이루어져있다. 마스터 노드 (Control Plane) 마스터노드는 클러스터에 대한 전반적인 결정을 수행하고 클러스터 이벤트를 감지하고 반응한다. API 서버 API 서버에 명령어를 보내면 명령어 대한 수행하도록 다른 컴포넌트에게 전달한다. 수평으로 확장되도록 디자인되었다. 즉, 더 많은 인스턴스를 배포해서 확장할 수 있다. 여러 인스턴스를 실행하고, 인스턴스간의 트래픽을 균형있게 조절할 수 있다. scheduler 노드가 배정되지 않은 새로 생성된 Pod를 감지하고, 실행할 노드를 선택한다. Controller Manager 클러스터의 상태를 조절하는 컨트롤러들을 생성, 배포한다. 이는 고가용성을 유지..

가상머신과 컨테이너 실제 하드웨어가 아닌 네트워크에 환경을 구축하여 어플리케이션을 제공하는 공통점이 있다. 하지만 구성 방식의 차이가 존재한다. 게스트 OS가 필요없다. : OS위에 구축하는 것이 아닌 도커 엔진 위에서 구동하기 때문에 게스트 OS는 필요없다. 시작시간이 짧다 : 가상머신은 하이퍼바이저가 게스트 OS를 할당해야하지만 컨테이너는 그럴 필요가 없기 때문에 시작시간이 짧다. 이미지 사이즈가 작다 : 게스트 OS가 없으므로 그만큼 이미지 사이즈가 작다. 호스트 OS만 패치한다. : 게스트 OS가 없으므로 호스트만 패치해도 모든 컨테이너에 적용 가능하다. 컨테이너 내부의 데이터는 컨테이너 종료 시 소멸, 필요시 스토리지를 이용하여 저장 Docker 도커는 컨테이너 엔진이며, 컨테이너 기반의 오픈소..