레플리카셋은 우리가 배웠던 레플리케이션을 대체할 새로운 요소다.
레플리케이션컨트롤러와 레플리카셋의 차이점은 다음과 같다.
1. 레플리카셋은 특정 레이블이 없는 파드를 매칭시킬 수 있다.
2. 레플리카셋은 특정 레이블의 키를 갖는 파드를 매칭시킬 수 있다. (key=*)
3. 두개의 레이블의 조합으로 파드를 매칭시킬 수 있다.
apiVersion: apps/v1
kind: ReplicaSet
metadata:
name: suk9-rc
spec:
replicas: 3
selector:
matchLabels:
app: suk9-rc
template:
metadata:
labels:
app: suk9-rc
spec:
containers:
- name: suk9-rc
image: seokkyulee/suk9
ports:
- containerPort: 8080
kubectl create -f rs.yaml
kubectl get rs
어떤가? 결과는 레플리케이션 컨트롤러와 완전히 동일하다.
레플리카셋만의 강점은 셀렉터에 있다.
...
selector:
matchExpressions:
- key: app
operator: In
values:
-
...
In : 레이블의 값이 지정된 값 중 하나와 일치해야 한다.
NotIn : 레이블의 값이 지정된 값과 일치하지 않아야 한다. (와우)
Exists : 지정된 키를 가진 레이블이 포함되어야 한다.
DoesNotExist : 지정된 키를 가진 레이블이 포함되어 있지 않아야 한다.
'개발 이야기 > 쿠버네티스' 카테고리의 다른 글
쿠버네티스 명령어 (0) | 2022.01.25 |
---|---|
쿠버네티스 - 잡과 스케줄러 - 19 (0) | 2021.10.22 |
쿠버네티스 - 레플리케이션컨트롤러 - 17 (0) | 2021.09.22 |
쿠버네티스 - 프로브 - 16 (2) | 2021.09.08 |
쿠버네티스 - 파드 중지/삭제 - 15 (0) | 2021.09.06 |