System Engineering/Kubernetes

System Engineering/Kubernetes

Kubernetes x509 SAN (Golang 1.15 or later)

Openstack 인프라에 VM으로 K8s를 1.23버전으로 새로 배포하는 도중, Cinder와 연결되는 CSI plugin과 openstack-cloud-contoller-manager가 아래와 같은 이유로 Error가 발생하였습니다. # kubectl get pod -A NAMESPACE NAME READY STATUS RESTARTS AGE …. kube-system openstack-cloud-controller-manager-8zd7x 0/1 Error 1 (11s ago) 14s kube-system openstack-cloud-controller-manager-hg28f 0/1 Error 1 (11s ago) 14s kube-system openstack-cloud-controller-man..

System Engineering/Kubernetes

Node Problem Detector and Draino

1. 개요 Kubernetes에서는 kube-node-lease를 통해 Host(Worker)의 단순한 Health Check만 할 수 있으며, 아래처럼 다양한 문제를 감지할 수 없습니다. CPU, Memory, Disk 등의 하드웨어 문제 Kernel과 File System의 문제 Docker 또는 Container Runtime 문제 2. Node Problem Detector Problem Deamon : Node-Problem-Detector의 서브 데몬으로 아래 4가지 타입이 있으며, 타겟에 따라 로그나 데몬을 감시하고 설정된 predefined rule의 정의에 따라 kube-apiserver로 보고하여 Remedy System(Draino)에서 node cordon과 같은 조치를 시도하거나 ..

System Engineering/Kubernetes

Kubernetes Authentication

쿠버네티스는 기본적으로 계정관리 기능을 제공하지 않으며, Certificate 인증을 통해 K8s Cluster REST API 통신을 합니다. 1. PKI(Public Key Infrastructure) 구조 PKI는 공개키(*.crt)와 비밀키(*.key)가 하나의 Pair로써, 데이터가 하나의 키로 암호화되면 쌍이 되는 다른 키로 복호화가 가능한 비대칭키 방식과 하나의 키로 암호화와 복호화가 모두 가능한 대칭키 방식을 모두 사용합니다. PKI 구조에서 키교환이 이루어지는 방식은 아래 그림과 같습니다. 모든 Browser에는 COMODO나 Symanetc과 같은 인증된 보안업체들이 발급한 Root 인증서(CA)의 공개키를 가지고 있으며, 서비스 호스팅 등을 위한 Server는 CA로의 CSR을 통해 ..

System Engineering/Kubernetes

Kubernetes Lease (Node Heartbeat)

1. Lease 목적 : Node Heartbeat에 대한 ETCD의 성능을 개선하기 위해 고안. Mechanism - Kubelet이 10초마다 NodeStatus 연산. - Node에서 Meaningful Chnage가 감지되면 NodeStatus를 Update. - Kubelet이 Lease Object를 생성하고 10초마다 ETCD로 Update하며, 이후 40초(Default)까지 Update 주기를 낮춤. - 이후 특이사항이 없으면 분당 1회 이상 주기적으로 Update 빈도 감소. - LeaseDurationSeconds(Default 5m)에 해당하는 시간 안에 Lease가 Accquire 되지 않으면 Unreachable Node로 간주 . - Master의 ControllerManage..

Hopulence
'System Engineering/Kubernetes' 카테고리의 글 목록