본문 바로가기

분류 전체보기146

[쿠버네티스 입문] 5-1. 파드 파드 개념 쿠버네티스는 파드라는 단위로 컨테이너를 묶어서 관리 보통 파드 안에 컨테이너 하나가 아닌 여러 개의 컨테이너로 구성됨 파드로 컨테이너 여러 개를 한꺼번에 관리할 때는 컨테이너마다 역할을 부여할 수 있음 파드 하나에 속한 컨테이너들은 모두 노드 하나 안에서 실행 (노드란?) -> 파드의 역할 중 하나가 컨테이너들이 같은 목적으로 자원을 공유하는 것이므로 가능 파드 하나 안에 컨테이너들이 IP 하나를 공유함 파드에 192.168.10.10 이라는 IP 로 접근하며, 파드안 컨테이너와 통신할 때는 컨테이너마다 다르게 설정한 포트(Port)를 사용함 파드 사용하기 # pod-sample.yaml apiVersion: v1 kind: Pod metadata: name: kubernetes-simple-.. 2023. 1. 12.
마틴 파울러 - 리팩터링의 절차 (리팩터링의 중요성) 아래 영상을 보고 내용을 정리한 글입니다. https://www.youtube.com/watch?v=mNPpfB8JSIU 내용에 대한 원문 : https://martinfowler.com/articles/workflowsOfRefactoring/ 리팩터링이 자주 필요한 순간은 언제인가? -> TDD 개발을 진행할 때, 새로운 기능을 추가하고 싶다면 실패할 테스트를 추가한다. 테스트가 빨간색으로 보일 때(실패할 때), 이 그림이 시작됨 (Red) 애플리케이션이 새로운 기능을 동작하도록 코드를 만들어서, 테스트를 초록색(성공)으로 만든다. (Green) 이 단계에서 개발자는 기능을 구현하는 것, 기능이 정상 동작하는 것이 우선이다. 이 기능이 큰 시스템에 어떻게 적용될 지는 깊게 고민하지 않는다. 세번째 단.. 2023. 1. 11.
[쿠버네티스 입문] 4-2. 오브젝트와 컨트롤러 쿠버네티스는 오브젝트(object)와 오브젝트를 관리하는 컨트롤러(controller)로 나뉨 사용자는 템플릿 등으로 쿠버네티스에 자원의 '바라는 상태'를 정의하고, 컨트롤러는 바라는 상태와 현재 상태가 일치하도록 오브젝트들을 생성/삭제 함 오브젝트 pod service volumn namespace 등등 컨트롤러 ReplicaSet Deployment StatefulSet DemonSet Job 등등 네임스페이스 kubenetes namespace 공식문서 : https://kubernetes.io/ko/docs/concepts/overview/working-with-objects/namespaces/ 네임스페이스는 쿠버네티스 클러스터 하나를 여러 개 논리적인 단위로 나눠서 사용하는 것 네임스페이스를 .. 2023. 1. 5.
[쿠버네티스 입문] 4-1. 쿠버네티스 아키텍처 쿠버네티스 클러스터의 전체 구조 kubernetes 주요 컴포넌트 공식 문서 : https://kubernetes.io/docs/concepts/overview/components/ 쿠버네티스 클러스터는 크게 두 종류의 서버로 구성 마스터 (master) etcd, kube-apiserver, kube-scheduler, kube-controller-manager, kubelet, kube-proxy, docker 등의 컴포넌트가 master에서 실행됨 마스터는 보통 고가용성을 만족하고자 서버 3대정도 구성해서 운영. 실제 클러스터를 관리하는 리더 마스터 1대 / 나머지 2대는 대기 리더 마스터에 장애 발생 시, 대기하던 마스터가 리더 역할로 교체함 노드 (node) kubelet, kube-proxt,.. 2023. 1. 5.
[기록용] 미니큐브(minikube) minikube 란? 쿠버네티스를 쉽게 배우고 개발할 수 있도록 하는 데 중점을 둔 로컬 쿠버네티스입니다. minikube 시작 문서 : https://minikube.sigs.k8s.io/docs/start/ minikube 와 katacoda 를 이용한 쿠버네티스 샘플 애플리케이션 실행 실습 : https://kubernetes.io/ko/docs/tutorials/hello-minikube/ 2023. 1. 4.