DevOps/Kubernetes (4) 썸네일형 리스트형 [Kubernetes] CKA 합격 후기 - 1번 실패하고 재시험으로 합격 CKA(Certified Kubernetes Administrator) 자격증을 준비했고, 첫 시험에서는 아쉽게 불합격했지만 재시험 기회를 사용해서 최종 합격했다. Kubernetes를 이전부터 직접 다뤄본 경험이 있어서 기본적인 개념을 이해하는 데에는 큰 어려움이 없었다. 다만 CKA는 단순히 Kubernetes 개념을 알고 있는 것보다 실제 시험 환경에서 문제를 빠르게 해결하는 능력이 중요했기 때문에 시험 문제 풀이에 익숙해지는 것을 중심으로 공부했다.공부 기간전체적으로는 약 1개월 정도 공부했다. 다만 실제로 1개월 내내 매일 공부한 것은 아니고, 기존에 Kubernetes를 다뤄본 경험이 있었기 때문에 개념을 처음부터 공부하는 방식보다는 강의를 통해 부족한 부분을 확인하고 문제 풀이에 익숙해지는 .. [Kubernetes] Control Plane - Kube Api Server 한 줄 요약: 쿠버네티스에서 무언가를 바꾸는 유일한 방법은 API 서버에 HTTP 요청을 보내는 것이다. 위 그림의 핵심위 아키텍처 그림을 보면 스케줄러와 컨트롤러 매니저, 그리고 워커 노드의 kubelet 사이에는 직접 연결된 선이 없다. 모든 선은 가운데의 kube-api-server 상자를 거친다. etcd로 들어가는 선도 오직 API 서버에서만 나온다. api-server 를 통하는 것은 쿠버네티스 설계의 핵심 그 자체다. 쿠버네티스는 컴포넌트들이 서로를 호출하며 협업하는 시스템이 아니다. 모든 컴포넌트는 오직 API 서버만 바라보고, 서로의 존재조차 모른다. 스케줄러는 kubelet에게 "이 파드 좀 띄워줘"라고 말하지 않는다. 그냥 API 서버에 있는 파드 객체에 nodeName: node-.. [Kubernetes] Service Service는 프로세스가 아니라 규칙(rule) 이다.어딘가에 트래픽을 받아 넘겨주는 프록시 서버가 떠 있는 게 아니라, 모든 노드의 커널에 심어진 패킷 변환 규칙의 집합이다. 이 한 문장을 이해하면 Service의 거의 모든 동작이 설명된다.Service가 왜 필요한가Pod는 일회용(ephemeral) 이다. 재시작되면 새 IP를 받고, 스케일 아웃되면 개수가 바뀌고, 노드가 죽으면 다른 노드에서 태어난다. 그래서 Pod IP를 직접 부르는 구조는 성립할 수 없다.문제Service가 없다면Service가 있다면Pod 재생성 시 IP 변경호출하는 쪽 설정을 매번 수정ClusterIP는 Service 수명 동안 불변Pod가 N개클라이언트가 직접 분배 로직 구현커널 레벨에서 자동 분산Pod 위치를 모름IP.. [Kubernetes] Kubernetes 아키텍처 - kubectl 명령 이후의 동작 이 글은 Kubernetes를 처음 접하는 사람들이 "도대체 내가 입력한 명령이 어디로 가는 거지?" 라는 궁금증을 해소할 수 있도록, 아키텍처 전체를 순서대로 뜯어보는 글이다.Kubernetes란 무엇인가?컨테이너를 혼자 쓰면 어떤 문제가 생길까?Docker를 처음 배우면 docker run 명령 하나로 컨테이너를 실행하는 것이 마법처럼 느껴진다. 하지만 실제 서비스를 운영하다 보면 금방 한계에 부딪힌다.컨테이너가 죽으면? → 직접 다시 실행해야 한다트래픽이 갑자기 몰리면? → 수동으로 컨테이너를 늘려야 한다서버가 10대, 100대면? → 어느 서버에서 무엇이 실행되는지 파악하기 어렵다배포 중 서비스를 중단하지 않으려면? → 복잡한 스크립트를 직접 작성해야 한다이 문제들을 해결하기 위해 등장한 것이 컨.. 이전 1 다음