IT 공부/쿠버네티스8 쿠버네티스 완벽 가이드 6장 - 1 서비스 API 카테고리 6.1 서비스 API 카테고리 개요 컨테이너를 외부에 공개하는 엔드 포인트를 제공하는 리소스다. 서비스 종류는 아래와 같다. ClusterIP ExternalP(ClusterIP의 한 종류) NodePort LoadBalancer Headless(None) ExternalName Node-Selector 그리고 인그레스도 있다. 6.2 쿠버네티스 클러스터 네트워크와 서비스 파드 내부에는 여러 컨테이너가 존재할 수 있는데, 같은 파드 내에 있는 컨테이너는 동일한 IP 주소를 할당받게 된다. 따라서 같은 파드의 컨테이너로 통신하려면 localhost로 통신하고, 다른 파드에 있는 컨테이너와 통신하려면 파드의 IP 주소로 통신한다. 쿠버네티스 클러스터는 클러스터를 생성하면 노드상에 파드.. 2022. 6. 28. 쿠버네티스 완벽 가이드 5장 - 2 5.5 데몬셋 데몬셋은 레플리카셋의 특별한 형태라고 할 수 있는 리소스다. 레플리카셋은 각 쿠버네티스 노드에 총 N개의 파드를 노드의 리소스 상황에 맞게 배치한다. 따라서 각 노드의 파드 수가 동일하다고 할 수 없다. 그러나 데몬셋은 각 노드에 파드를 하나씩 배치하는 리소스다. 따라서 데몬셋은 각 파드가 출력하는 로그를 호스트 단위로 수집하는 Fluentd나 각 파드 리소스 사용 현황 및 노드 상태를 모니터링하는 Datadog 등 모든 노드에서 반드시 동작해야 하는 프로세스를 위해 사용하는 것이 유용하다. 5.5.2 데몬셋 업데이트 전략 디플로이먼트와 마찬가지로 두 가지 업데이트 전략 중 하나를 선택할 수 있다. OnDelete OnDelete에서는 데몬셋 매니페스트를 수정하여 이미지 등을 변경했더라도 .. 2022. 6. 8. 쿠버네티스 완벽 가이드 5장 - 1 5.1 워크로드 API 카테고리 개요 워크로드 API 카테고리로 분류된 리소스는 클러스터에 컨테이너를 기동시키기 위해 사용되는 리소스다. 5.2 파드 워크로드 리소스의 최소단위는 '파드'라고 불리는 리소스다. 파드는 한 개 이상의 컨테이너로 구성되며, 같은 파드에 포함된 컨테이너끼리는 네트워크적으로 격리되어 있지 않고 IP 주소를 공유한다. 5.2.1 파드 디자인 패턴 사이드카 패턴 메인 컨테이너 외에 보조적인 기능을 추가하는 서브 컨테이너를 포함하는 패턴 엠배서더 패턴 메인 컨테이너가 외부 시스템과 접속할 때 대리로 중계해주는 서브 컨테이너를 포함하는 패턴 어댑터 패턴 서로 다른 데이터 형식을 변환해주는 컨테이너를 포함하는 패턴 5.2.2 ~ 5.2.3 생략 5.2.4 컨테이너 로그인과 명령어 실행 k.. 2022. 4. 20. 쿠버네티스 완벽 가이드 4장 - 2 4.5 커맨드 라인 인터페이스 도구 kubectl 4.5.1 인증 정보와 컨텍스트 kubectl이 쿠버네티스 마스터와 통신할 때는 접속 대상의 서버 정보, 인증 정보 등이 필요하다. kubectl은 kubeconfig(기본 위치는 ~/.kube/config)에 쓰여 있는 정보를 사용하여 접속한다. kubeconfig도 매니페스트와 동일한 형식으로 작성된다. 4.5.2 kubectx/kubens를 사용한 전환 컨텍스트나 네임스페이스를 전환할 때 kubectl 명령어를 사용하는 것이 불편하다면 오픈 소스 소프트웨어인 kubectx/kubens를 사용하는 것을 검토하자 4.5.3 매니페스트와 리소스 생성/삭제/갱신 리소스 생성 : kubectl create -f sample-pod.yaml 생성한 파드 조회 .. 2022. 4. 18. 쿠버네티스 완벽 가이드 4장 - 1 앞의 내용은 중요하지 않아 생략 4.2 쿠버네티스 기초 쿠버네티스는 쿠버네티스 마스터와 쿠버네티스 노드로 구성되어 있다. 쿠버네티스 마스터는 API 엔드포인트 제공, 컨테이너 스케줄링, 컨테이너 스케일링 등을 담당 쿠버네티스 노드는 이른바 도커 호스트에 해당, 실제로 컨테이너를 기동시키는 노드다. 쿠버네티스 클러스터 관리는 CLI도구인 kubectl과 YAML 형식이나 JSON 형식으로 작성된 매니페스트 파일을 사용하여 쿠버네티스 마스터에 '리소스'를 등록해야 한다. 매니페스트 파일은 가독성을 위해 일반적으로 YAML 형식으로 작성한다. 4.3 쿠버네티스와 리소스 4.3.1 워크로드 API 카테고리 파드(Pod) 레플리케이션 컨트롤러(Replication Controller) 레플리카셋(ReplicaSe.. 2022. 3. 28. 쿠버네티스 완벽 가이드 3장 3. 쿠버네티스 환경 선택 3.1 쿠버네티스 환경의 종류 로컬 쿠버네티스 : 이중화 되어있지 않아 개인적인 테스트나 개발 환경으로 적합 쿠버네티스 구축 도구 : 도구를 사용하여 온프레미스/클라우드에 클러스터를 구축 관리형 쿠버네티스 서비스 : 퍼블릭 클라우드의 관리형 서비스로 제공하는 클러스터 3.2 로컬 쿠버네티스 미니큐브 : 물리 머신에 로컬 쿠버네티스를 쉽게 구축하고 실행할 수 있는 도구 Docker Desktop for Mac/Windows : 도커에서 만든 도구. 쿠버네티스를 지원하도록 변경되었다. kind : kubernetes in Docker 의 약자. 쿠버네티스 자체 개발을 위한 도구. 3.3 쿠버네티스 구축 도구 쿠버네티스 서비스 수준 목표(SLO) API 응답 시간 단일 객체의 변경 .. 2022. 3. 23. 이전 1 2 다음 반응형