반응형 전체 글264 [따배쿠] 18-1 Kubernetes AutoScaling - 이론편 이번에는 쿠버네티스 오토스케일링과 HPA 오토스케일링에 대해 알아보자 쿠버네티스 오토스케일링은 크게 두 가지로 나눠진다. 클러스터 레벨의 오토스케일링의 예를 들어보자 만약 마스터노드 1대와 워커노드 1대(cpu 4core, memory 32GIB, 수 많은 파드가 동작중인 상태)가 있다고 생각해보자 파드(cpu 1core, memory 1GIB 필요) 하나를 실행해달라고 요청하면 마스터노드의 api가 현재 리소스들의 대한 상태정보를 etcd에서 찾아서 스케줄러에게 스케줄하도록 요청한다. 그러나 워커노드에 요청한 파드의 하드웨어 요구 만큼의 여유가 없다면 스케줄러는 파드를 pending 상태에 머무르게 한다. 그리고 pending 상태로 있는 파드가 있는지를 cluster level autoscale(CA.. 2022. 11. 21. [따배쿠/멤버십] 16. Kubernetes DNS 이번에는 core DNS와 DNS 편집하는 방법을 알아보자 core DNS는 쿠버네티스 내부에서만 동작하는 DNS 서버 역할을 하고 파드 간에 통신을 할 때 service나 pod에 대해 ip가 아니라 네이밍 서비스를 하도록 지원한다. 즉, core DNS는 쿠버네티스 전용 DNS 서버이다. core DNS는 service의 이름과 service의 클러스터 ip를 등록하여 domain service를 지원해준다. kubectl get svc -A 로 모든 서비스들을 확인해보면 kube-dns가 실행 중이다. 만약 nginx 컨테이너 파드가 1개 있다고 하면 /etc/resolv.conf 라는 config 파일을 가지고 dns domain name에 해당하는 ip주소를 요청하게 된다. 컨테이너 안에 있는 .. 2022. 11. 20. [따배쿠/멤버십] 15. Kubernetes Network 이번에는 도커 컨테이너 네트워킹과 kube-proxy에 대해 알아보자 ip addr을 통해 실제 노드의 ip와 docker0 인터페이스의 ip주소를 볼 수 있다. docker0 인터페이스는 L2기반의 통신을 한다. docker0는 컨테이너가 늘어날때 마다 172.17.0.2, 172.17.0.3, 172.17.0.4 ... 처럼 순차적으로 ip주소가 늘어난다. 워드프레스라는 컨테이너는 외부로 통신하기 위해서 docker0 브릿지를 게이트웨이로 사용하고 docker0가 컨테이너의 ip를 노드의 ip인 172.27.20.50로 network interface translation(NAT) 해준다. 단일 호스트(노드) 환경에서는 네트워크에 전혀 문제 될것이 없다. 노드가 여러 개인 멀티 호스트 환경에서는 어떤.. 2022. 11. 20. [따배쿠/멤버십] 14-2. Persistent Volume & Persistent Volume Claim Persistent Volume(PV)와 Persistent Volume Claim(PVC)는 쿠버네티스 api 리소스이다. 쿠버네티스에서는 지원해주는 볼륨이 다양한데 각각의 볼륨들은 애플리케이션이 접근하여 사용하는 방법이 모두 다르다. 모든 볼륨의 사용 방법을 전부 알기는 힘들기에 Persistent Volume과 Persistent Volume Claim를 이용하면 좋다. https://kubernetes.io/docs/concepts/storage/persistent-volumes/ 예를 들어 1TB의 read write once한 파이버 채널 스토리지을 설정하고 1TB와 500GB의 read write once한 iscs2 스토리지를 설정하고 1TB, 500GB, 100GB의 read write .. 2022. 11. 20. 이전 1 ··· 14 15 16 17 18 19 20 ··· 66 다음 반응형