kubernetes의 시뮬레이션으로 Pod 복사!
7503 단어 초학자Kubernetesidea
개시하다
할머니를 물리치고 새로운 무대에 오르기 위해 드디어 도커 씨를 만나기로 했습니다.도커와 관계를 잘 맺어 컨테이너 시스템의 구조를 이해하고 이를 타도하는 조사를 진행한다.이번에kubernetes의 디자인 선언 제작과 선언에서 디자인 제작을 배웁니다.
개요
■ 프레젠테이션의 역할 확인
■ 프레젠테이션 제작 선언
한 번의 총결산!(^^)!
■ 프레젠테이션의 역할 확인
설계의 역할은 간단하게 말하면 주로 PORD의 업무 수량을 관리하는 것이다.
이것은 로드 밸런스가 처리 부하가 높을 때 서버의 대수를 늘리는 것과 대응하거나 고장난 서버가 사용할 수 없어도 처리할 수 있도록 가용성을 제공하는 것과 마찬가지로 depliant는Pod의 제어 역할을 맡는다.
또한 Pod의 버전은 애플리케이션 버전 업그레이드 시 자동으로 업그레이드됩니다.
스크롤 업데이트와 스크롤 등 디버깅 관리를 진행한다.
별도의 작업 없이 "복제품 세트"와 협업하여 PORD 수를 제어할 수 있도록 설계되었습니다.
복제품 세트는 선언된'replicas'의 값을 받아들여 Pod의 수량을 제어한다.
복제품 집합 PORD의 제어 특징은
• 수평 배율 조정
· 이상 종료 후 다시 시작
· 요청이 끝나지 않고 계속 대기
잠깐만요.
■ 프레젠테이션 제작 선언
이번에는 선언문을 최대한 간단하게 설정하기 위해 하나의 기록기로 넓은 범위를 만들었다.
설계 제작은 명령에서 kubectl create deployment를 사용합니다.
kubectl create 명령으로 지정할 수 있는 옵션은 kubectl run 명령에 비해 적기 때문에 옵션 지정도 파일을 편집해야 합니다.
이곳에서는 복제품집의 수량을 설정할 수 없기 때문에 간단한 큰 틀만 만든다.
여기서 Pord의nginx 용기를 3개 복사해 보려고 합니다.
커다란 테두리의 설정 웹-deploy.yaml 파일을 씁니다.
$ kubectl create deployment web-deploy --image=nginx --dry-run=client -o yaml > web-deploy.yaml
web-deploy.yaml↓web-deploy.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
creationTimestamp: null
labels:
app: web-deploy
name: web-deploy
spec:
replicas: 1
selector:
matchLabels:
app: web-deploy
strategy: {}
template:
metadata:
creationTimestamp: null
labels:
app: web-deploy
spec:
containers:
- image: nginx
name: nginx
resources: {}
status: {}
선언 파일의 필수 항목인 appiVersion,kind,metadata,spec 이외설계의 설정 항목을 확인하다.
설정 항목 데모
의향
replicas
templat을 시작할 Pod의 수를 설정합니다.이 숫자를 유지하는 걸 보여드릴게요.
selector
아날로그 제어에 설정된 복제품 집합 및 Poddo와 연결된 탭
template
프레젠테이션 시작 POD 설정 설명
strategy
Pod 교체 전략 지정
matchLabels
객체가 지정된 레이블과 일치합니다.
strategy
stratgy에는 Recreate와 RollingUpdate가 있습니다.기본값은 RollingUpdate입니다.
stratgy를 Recreate로 설정할 때 모든 Pod을 삭제한 후 새 Pod Template를 기반으로 Pod를 제작합니다.
stratgy를 Rolling Update로 설정하면 Pod의 수를 지정한 개수에 따라 증감하여 업데이트합니다.Pod가 중지되지 않도록 업데이트합니다.
아날로그 제어 하의 던전 집합을 연결하기 위해
디자인된 메타데이터 탭(app:web-deploy)과 템플릿의 메타데이터 탭(app:web-deploy)이 일치하지 않으면 응용 프로그램에서 오류가 발생하기 때문에 확인합니다.
"replicas:3"으로 변경하여 계획 선언을 적용합니다.
$ kubectl apply -f web-deploy.yaml
deployment.apps/web-deploy created
데모 확인$ kubectl get deploy
NAME READY UP-TO-DATE AVAILABLE AGE
web-deploy 3/3 3 3 65s
던전집을 확인한다.$ kubectl get rs
NAME DESIRED CURRENT READY AGE
web-deploy-d586595dc 3 3 3 2m2s
백덕을 확인한다.$ kubectl get po -o wide
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
web-deploy-d586595dc-cffd4 1/1 Running 0 3m21s 10.244.0.12 kind-control-plane <none> <none>
web-deploy-d586595dc-gwwpl 1/1 Running 0 3m21s 10.244.0.14 kind-control-plane <none> <none>
web-deploy-d586595dc-zq57g 1/1 Running 0 3m21s 10.244.0.13 kind-control-plane <none> <none>
세 개가 잘 복제됐어요.복사본 수를 변경합니다.
선언문건을vim 편집을 통해 5개 던전으로 변경
$ kubectl apply -f web-deploy.yaml
에서 변경을 수행한 후$ kubectl get deploy
NAME READY UP-TO-DATE AVAILABLE AGE
web-deploy 5/5 5 5 16m
$ kubectl get po -o wide
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
web-deploy-d586595dc-bjhzk 1/1 Running 0 19s 10.244.0.15 kind-control-plane <none> <none>
web-deploy-d586595dc-cffd4 1/1 Running 0 16m 10.244.0.12 kind-control-plane <none> <none>
web-deploy-d586595dc-fdtr9 1/1 Running 0 19s 10.244.0.16 kind-control-plane <none> <none>
web-deploy-d586595dc-gwwpl 1/1 Running 0 16m 10.244.0.14 kind-control-plane <none> <none>
web-deploy-d586595dc-zq57g 1/1 Running 0 16m 10.244.0.13 kind-control-plane <none> <none>
$ kubectl get rs
NAME DESIRED CURRENT READY AGE
web-deploy-d586595dc 5 5 5 16m
5종으로 변경 가능!(^^)!kubectl scale --replicas ...
변경합니다.
실행 비례자 상황에서 CPU와 메모리는 자원 부족을 피하기 위해 여분을 확인합니다.
총결산
선언문 쓰기가 힘들어서 열심히 공부하고 싶어요.
Reference
이 문제에 관하여(kubernetes의 시뮬레이션으로 Pod 복사!), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://zenn.dev/suiudou/articles/a187c21367b060텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)