GitHub

https://github.com/Choidongjun0830

2024/12/30 2

Cluster High Availability

마스터 노드가 사라져도 워커 노드는 동작한다. 사용자는 실패할 때까지 앱에 접속할 수 있다.컨테이너나 포드가 고장나면컨테이너나 포드가 ReplicaSet의 일부라면 ReplicaSetController가 새 포드를 로드하라고 지시해야 한다. 하지만, 마스터의 컨트롤러는 사용이 불가능하다. 그래서 컨테이너나 포드를 로드하라고 지시할 수 있는 것과 스케줄링할 수 있 것이 없다. kube-apiserver도 없기 때문에, kubectl도 사용 불가능하다. 그래서 여러개의 마스터 노드를 사용하는 것을 고려해야 한다.  High Availability란 단일 실패 지점을 피하기 위해 모든 구성 요소가 여러개가 있는 것여러개의 마스터 노드가 있는데, 각각의 마스터 노드에 동일한 요청이 가면 안된다. 그래서 로드 밸..

클라우드 2024.12.30

Ingress

k8s에는 기본적으로 Ingress Controller가 없다. 그래서 배포해야하는데, 종류로는 GCE, Nginx, Contour, HAPROXY 등이 있다. Ingress Controller는 Load Balancer가 아니다. 예를 들어 Nginx를 사용하면 새로운 정의나 새로운 Ingress 리소스를 위한 쿠버네티스 클러스터를 모니터링하고 그에 따라 Nginx 서버를 구성한다. 이것을 위해서는 Service Account가 필요하다.Nginx Controller는 쿠버네티스에서 또 다른 Deployment로서 배포된다. 그래서 nginx 이미지를 사용하여 Deployment를 배포하는 것으로 시작한다. err-log-path, keep-alive, ssl-protocols를 ConfigMap에 설..

클라우드 2024.12.30
728x90