본문 바로가기

Programming/Cloud

DAY 176. 쿠버네티스(Kubenetest) - Replica Set

 

Replica Set 

동일한 Pod를 여러 개 만들어 놓고 지정된 개수가 적절하게 유지될 수 있도록 만들어주는 객체이다.

주어진 시간에 실행되는 안정적인 복제 Pod 세트를 유지한다.

지정된 수의 동일한 Pod의 가용성을 보장하는데 사용된다.

실제 실무에서는 하나의 Pod만 가지고 서비스 하지 않는다.

운영 환경에서 Pod만 단독으로 사용하는 경우는 거의 없다.

Service 객체가 필요하다.

 

- 스케일 아웃

- 스케일 업

- 로드 밸런서

(cf. 로드 밸런서 (부하 분산) : 네트워크 로드 밸런서, 애플리케이션 로드 밸런서)

 

더보기

웹 서버가 하나의 Pod라고 생각했을 때,

스케일 아웃으로 증설한 Pod가 3개로 유지되도록 하는게 Replica Set이다.

에러가 발생해서 Pod가 정상적으로 구동되지 않으면, 새로운 Pod를 만들어서 항상 지정된 3개의 Pod가 유지되도록 한다.

앞에 로드 밸런서 역할을 하는 것 = 서비스 객체

 

 

▶ ReplicaSet API 확인

kubectl api-resources

 

보면

NAME이 replicasets인 것을 보고 참조해서 yaml 파일을 만들면 된다.

 

 

 ReplicaSet yaml 파일 작성

 

 

 ReplicaSet 생성

kubectl apply -f Yaml파일경로 [옵션]

예시 > kubectl apply -f .\kuweb_replicaset.yaml

 

 

 

yaml 파일에서 replicas 개수를 5개로 늘려도 마찬가지이다.

 

 

 

이제 각각 레플리카의 IP로 요청을 보내보자.

 

 

모두 응답을 잘한다.

 

 

 

 ReplicaSet 목록 확인

kubeset get replicasets [옵션]

▷ DESIRED : 원한거 

▷ CURRENT : 현재 값

▷ READY : 가용 가능한 개수

 

 

 ReplicaSet 상세 정보 확인

kubectl describe rs [옵션]

 

 

 ReplicaSet 삭제

yaml 파일 읽어서 해당하는 리소스가 존재하면 삭제한다.

ReplicaSet에 의해 생성된 Pod도 같이 삭제됨

kubectl delete rs rs명 |