티스토리 뷰

 

 

▶ 레플리카셋

▷ 파드 집합의 실행을 안정적으로 유지하는 것

 

 

● 실습 진행

>> 이전의 쓰던 걸 모두 삭제할 때 사용한다

○ ns 꼭 확인하고 써야한다

kubectl delete all --all --namespace myns

 

 

○ 하지만 모두 지워진 건 아니다 >> 기본으로 쓰고 있는 것이 있다

[vagrant@ms work]$ kubectl get sa
NAME      SECRETS   AGE
default   0         111m

 

 

 

● replica.yml 파일 생성

>> kubectl api-resources 에서 참조하면서 yaml 파일 생성한다

 kubectl api-resources | grep ReplicaSet

 

 

>> template 은 pod 를 찍어낸다고 생각 >> pod 정보를 적는다
# apps 는 그룹명처럼 지정된다

더보기

apiVersion: apps/v1
kind: ReplicaSet
metadata:
  name: apache-replica
spec:
  replicas: 3
  selector:
    matchLabels:
      app: apache-replica-test
  template:
    metadata:
      labels:
        app: apache-replica-test
    spec:
      containers:
      - name: myweb-container2
        image: httpd:2.4
        ports:
        - containerPort: 80

 

 

▷ 생성 되었다

>> pod 이름이 지정이 안되었다 >> apache-replica 가 이름이 된다

[vagrant@ms work]$ kubectl create -f replica.yml
replicaset.apps/apache-replica created

 

# apache-replica-랜덤 지정

[vagrant@ms work]$ kubectl get pods
NAME                   READY   STATUS    RESTARTS   AGE
apache-replica-2fc6d   1/1     Running   0          107s
apache-replica-8qs4p   1/1     Running   0          107s
apache-replica-9wpvx   1/1     Running   0          107s

 

 

▷. apps 로 그룹명 처럼 다 묶여서 나온다

>> current 3개가 죽으면 ready 3개가 바로 올라온다 >> desired 가 3개로 지정되어있다

[vagrant@ms work]$ kubectl get replicasets.apps
NAME             DESIRED   CURRENT   READY   AGE
apache-replica   3         3         3       2m39s

 

# worker 1에 2개 woker 2에 1개

[vagrant@ms work]$ kubectl get pods -o wide
NAME                   READY   STATUS    RESTARTS   AGE    IP           NODE              NOMINATED NODE   READINESS GATES
apache-replica-2fc6d   1/1     Running   0          4m4s   10.244.1.7   wk1.example.com   <none>           <none>
apache-replica-8qs4p   1/1     Running   0          4m4s   10.244.2.5   wk2.example.com   <none>           <none>
apache-replica-9wpvx   1/1     Running   0          4m4s   10.244.1.6   wk1.example.com   <none>           <none>

 

 

 

▶ wokrer1 을 강제로 꺼버렸을 때

 

>> 아직 woker1 이 Running 중인데, 5분동안 기다리는걸로 설정되어있다

# Tolerations 에 300s 동안 살아있는 걸로 정해져있다

[vagrant@ms work]$ kubectl describe pod apache-replica-2fc6d | grep Toleration
Tolerations:                 node.kubernetes.io/not-ready:NoExecute op=Exists for 300s

 

 

 

 

 

https://kubernetes.io/ko/docs/concepts/workloads/controllers/replicaset/

 

레플리카셋

레플리카셋의 목적은 레플리카 파드 집합의 실행을 항상 안정적으로 유지하는 것이다. 이처럼 레플리카셋은 보통 명시된 동일 파드 개수에 대한 가용성을 보증하는데 사용한다. 레플리카셋의

kubernetes.io

 

 

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2025/02   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28
글 보관함