전체 글(117)
-
Test-replicaSet
#replicaset 조회 kubectl get replicaset = kubectl get rs # 생성 yaml 파일 kubectl create -f replicaset-definition.yaml # 삭제 kubectl delete rs # 수정 edit (직접수정가능) kubectl edit rs new-replica-set ## 수정 주의: replicaset 의 이미지 명이 갱신돼도, 이미 생성된 pod는 갱신되지 않는다. -> pod를 delete 해줘야한다. # 개별 삭제 kubectl delete pod # 수정 scale kubectl scale rs new-replica-set --replicas=5 # selector 로 pod 들 삭제 (label selector정보는 replic..
2023.04.12 -
Recap-ReplicaSets
Replication Controller 는 하나의 pod에서 여러개의 인스턴스를 실행하도록 도와준다. pod가 하나일때도, pod가 고장나면 Replication Controller는 자동으로 새 pod를 불러올수있다. Replication Controller 는 1. 여러 pod로 로드를 나눌 수있다. 2. 여러 노드에 걸쳐 pod 의 부하를 분산할 수있다. (Load balancing) 3. App scale 도 조정할 수있다.(Scaling) Replication Controller , Replica Set 둘을 구분해야 하는데, Replication Controller 는 구식 기술로 Replica Set 으로 대체 되고 있다. Replication Controller 를 생성하는 방법은 yml..
2023.04.10 -
Pods with YAML
yaml 설정 파일로 pod를 생성할 수있다. 쿠버네티스는 yaml 파일을 써서 쿠버네티스 오브젝트를 생성한다. 오브젝트 예시 : pods, replicas, deployments, services 구조는 다 비슷한데, 아래 4가지는 root level 속성들이라 필수값이다. apiVersion: kind: metadata: spec: 1) api version은 쿠버네티스 API 버전인데, 종류에따라 올바른 api version 을 써야함. Pod는 apiVersion:v1 Kind Version POD v1 Service c1 ReplicaSet apps/v1 Deployment apps/v1 2) Kind : object 유형이다. 위 표의 kind에 해당하는걸 적으면 됨. Pod는 kind: po..
2023.04.09 -
Recap -Pods
최종 목표는 쿠버네티스 클러스터의 워커노드에 컨테이너 형태의 app을 배포하는거다. 근데, 쿠버네티스는 컨테이너를 워커노드에 직접 배포하진않는다. 컨테이너는 "Pod"라고 불리는 "쿠버네티스 object" 형태로 포장된다. pod는 하나의 어플리케이션의 인스턴스다. pod가 쿠버네티스에서 생성할수있는 가장 작은 object다. 사용자가 늘면 로드를 분산할 앱을 추가해야할것이다. spin up을 어케할까? -> pod에 컨테이너를 추가할까? X 동일한 pod를 추가한다. 만약 노드가 감당할수있는 사용자수를 넘기면? 클러스터에 새 노드에 추가 pod를 배포할 수있다. 클러스터의 물리적 용량을 확장하기위해서! Pod에는 여러 컨테이너가 담길수 있다. 사용자 처리를 할때 helper container 를 쓸 수..
2023.04.09 -
Kube-Proxy
쿠버네티스 cluster 안에서는 모든 pod는 다른 모든 pod에 닿을 수있다. pod network 는 내부 가상 네트워크로 클러스터내의 모든 노드가 연결있다. A 노드에 web application 이 있고, B 노드에 DB 가 있다고 하자. web app 은 pod의 IP 를 써서 접근한다. 하지만, pod의 ip 가 항상 똑같이 유지되는게 보장되진 않는다. 그래서 우리는 클러스터에 걸쳐 DB application 을 노출할 서비스를 생성한다. 그러면 web app 은 DB service 를 통해서 DBapp 접근할 수있다. service 도 역시 ip 주소를 할당받는다. 서비스는 어떻게 ip 를 할당받을까? 서비스는 pod network 에 join 할수 없다. 가상 요소이기 때문이다. 가상이기..
2023.04.08 -
Kubelet
Kubelet 은 마치 배의 선장과 같아서, 배의 모든일을 리드한다. 클러스터의 요소가 되기 위한 모든 문서작업을 처리한다. Master 배와의 유일한 통신 수단이고, - 마스터의 스케줄러로 부터 지시받은 컨테이너를 실거나 내린다. 주기적으로 배의 상태와 컨테이너들에 대한 상태 report 를 보낸다. kubelet 은 쿠버네티스 워커노드 안에서 쿠버네티스 클러스터에 노드를 등록한다. 1. Register Node : 1) 노드등록 요청을 스케줄러로부터 받으면 Container runtimer 엔진한테 요청한다. 2) 아마 Docker가 요구된 image를 땡겨와 인스턴스를 실행시킨다. 2. Create Pods 3. Monitor Node & PODs Kubelet 설치법 wgget https://st..
2023.04.08