728x90 반응형 SMALL POD7 [K8s] 잡 (Job) 잡 (Job) 잡은 하나 이상의 파드를 생성하고 지정된 수의 파드가 성공적으로 종료될 때까지 계속해서 파드의 실행을 재시도한다. 파일 생성 vim job-cronjob01.ymlapiVersion: batch/v1kind: Jobmetadata: name: job-test01spec: template: spec: containers: - name: nginx-test01 image: nginx:1.25 command: ["echo", "Hello, Kubernetes!"] restartPolicy: Never backoffLimit: 3 잡 실행 kubectl apply -f job-cronjob01.ymlkubectl get jobkube.. 2024. 6. 9. [K8s] 롤아웃 매니페스트 파일 작성 롤아웃은 배포를 변경하는 것이다. Kubernetes를 사용하면 롤아웃을 시작, 일시 중지, 재개 또는 롤백할 수 있다. cp deploy-test01.yml deploy-test03.ymlvim deploy-test03.ymlapiVersion: apps/v1kind: Deploymentmetadata: name: deploy-test01spec: replicas: 3 selector: matchLabels: app: web-deploy template: metadata: labels: app: web-deploy spec: containers: - name: nginx image: ngi.. 2024. 6. 8. [K8s] 매니페스트로 디플로이먼트 실행 매니페스트 파일 작성 kubectl delete deployment deploy-nginxapiVersion: apps/v1 # 해당 오브젝트를 생성하기 위해 사용하는 쿠버네티스 API 버전kind: Deployment # 생성하고 싶은 오브젝트 종류metadata: # 오브젝트를 유일하게 식별할 수 있는 데이터 name: deploy-test01 # 오브젝트 이름spec: # 생성하고자 하는 오브젝트의 스펙 replicas: 3 # 복제된 (replicated) 파드 3개를 생성하는 레플리카셋 생성 selector: # 레플리카셋이 어떤 파드를 관리할지 정의 matchLabels: # 파드 템플릿의 라벨 (label)을 통해 레플리카셋이 관리할 파드를 정의 app: we.. 2024. 6. 8. [K8s] 리플리카셋 조정 리플리카셋 조정 레플리카셋은 사용자가 지정한 개수만큼 복제 파드를 생성해주고 복제 컨트롤러를 이용해 해당 개수의 복제 파드가 정상 실행 중인지 항상 감시한다. kubectl create deployment deploy-nginx --image=nginx --replicas=3kubectl get deploy,rs,pokubectl get deploy,rs,po -o wide 파드 삭제 후 재생성 kubectl delete pod {파드 이름} 파드가 재생성되는 것을 확인할 수 있다. 2024. 6. 8. [K8s] 디플로이먼트 (Deployment) 디플로이먼트 (Deployment) 디플로이먼트는 파드 (pod)와 레플리카셋 (ReplicaSet)에 대한 선언적 업데이트를 제공한다 (ex: 파드 상태 업데이트, 스케일 업 등). 디플로이먼트를 활용해 새로운 레플리카셋을 생성하거나 기존에 존재하는 디플로이먼트를 제거하고 새로운 디플로이먼트를 선언할 수 있다. 레플리카셋을 직접적으로 관리하는 것은 안된다. 레플리카셋 (ReplicaSet) 레플리카셋은 여러 개의 파드를 항상 안정적으로 유지하는 것이 목적이다. 레플리카셋은 주로 특정 개수의 파드 실행을 보장하는데 사용한다. 예를 들어, 3개의 파드가 실행되어야 할 때, 3개 중 1개가 정지되면 새로운 파드를 생성해서 3개 파드의 개수를 맞춘다. 디플로이먼트는 레플리카셋보다 상위 개념이다. 디플로이.. 2024. 6. 8. [K8s] 매니페스트 (Manifest) 매니페스트 (Manifest) 매니페스트란 쿠버네티스 오브젝트를 생성하기 위한 메타 정보를 YAML로 기술한 파일이다. vim nginx-test01.ymlapiVersion: v1 # 해당 오브젝트를 생성하기 위해 사용하는 쿠버네티스 API 버전kind: Pod # 생성하고 싶은 오브젝트 종류metadata: # 오브젝트를 유일하게 식별할 수 있는 데이터 name: nginx01 # 오브젝트 이름spec: # 생성하고자 하는 오브젝트 스펙 containers: # 컨테이너 - name: nginx-test01 # 컨테이너 이름 image: nginx:latest # 컨테이너 생성을 위해 사용할 이미지kubectl apply -f {파일 이름}apply 명령어는 쿠버네티스 리소.. 2024. 6. 8. [K8s] 쿠버네티스 설치 (2) 쿠버네티스 마스터 노드 설정 kubeadm certs check-expirationkubeadm config images listkubeadm config images pull --cri-socket /run/containerd/containerd.sockkubeadm init --apiserver-advertise-address={프라이빗IP} --pod-network-cidr=192.168.0.0/16 --cri-socket /run/containerd/containerd.sock 다음 명령어로 root에서 빠져 나온다. kubeadm certs check-expirationexit calico 설치 mkdir -p $HOME/.kubesudo cp -i /etc/kubernetes/admin.con.. 2024. 6. 8. 이전 1 다음 728x90 반응형 LIST