본문 바로가기
728x90
반응형
SMALL

App Programming/Kubernetes17

[K8s] 크론잡 (CronJob) 크론잡 (CronJob)  크론잡은 일정한 기간마다 잡을 생성하여 수행하는 것으로 정기적이고 반복적인 작업을 만드는데 사용된다. 즉, 반복 일정에 따른 잡을 만든다. 파일 작성 vim job-cronjob02.ymlapiVersion: batch/v1kind: CronJobmetadata: name: cronjob-test02spec: schedule: "*/1 * * * *" jobTemplate: spec: template: spec: containers: - name: nginx-test02 image: nginx:1.25 command: - /bin/sh .. 2024. 6. 9.
[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] 인그레스 배포 파일 생성 vim ingress02-deploy.ymlapiVersion: apps/v1kind: Deploymentmetadata: name: ingress-deploy-test02spec: replicas: 3 selector: matchLabels: app: web-deploy02 template: metadata: labels: app: web-deploy02 spec: containers: - name: nginx image: nginx:1.25vim ingress02-service.ymlapiVersion: v1kind: Servicemetadata: name: ingress-service-test02spec.. 2024. 6. 9.
[K8s] nginx nginx Nginx는 경량 웹 서버이다. 클라이언트로부터 요청을 받았을 때 요청에 맞는 정적 파일을 응답해주는 HTTP Web Server로 활용되기도 하고, Reverse Proxy Server로 활용하여 WAS 서버의 부하를 줄일 수 있는 로드 밸런서로 활용되기도 한다. nginx 설치 sudo apt updatesudo apt install nginxsudo systemctl status nginx 서비스 접속을 위한 포트포워딩 방법 1 kubectl get all --namespace mynginx 루트로 접근하여 EXTERNAL-IP를 추가해준다.  sudo -i cd /etc/nginx/sites-enabled/ sudo vim defaultproxy_pass http://{EXTERNAL-.. 2024. 6. 9.
[K8s] 인그레스 (Ingress) 인그레스 (Ingress)  인그레스 개념은 쿠버네티스 API를 통해 정의한 규칙에 기반하여 트래픽을 다른 백엔드에 매핑할 수 있게 해준다. 클러스터 내의 서비스에 대한 외부 접근을 관리하는 API 오브젝트이며, 일반적으로 HTTP를 관리한다. 인그레스는 쿠버네티스 외부에서의 요청을 쿠버네티스 내부로 이어준다. 인그레스 생성 vim ingress01-deploy.ymlapiVersion: apps/v1kind: Deploymentmetadata: name: ingress-deploy-test01spec: replicas: 3 selector: matchLabels: app: web-deploy01 template: metadata: labels: app: .. 2024. 6. 9.
[K8s] metalLB metalLB  MetalLB는 Load Balancer가 없는 Bare-metal K8s cluster를 위해  표준 라우팅 프로토콜을 사용하여  소프트웨어적으로 Network Load Balancer를 기능을 구현 해주는 솔루션이다. metalLB 설치 kubectl get configmap kube-proxy -n kube-system -o yaml | grep strictARPkubectl get configmap kube-proxy -n kube-system -o yaml | \sed -e "s/strictARP: false/strictARP: true/" | \kubectl apply -f - -n kube-systemkubectl get configmap kube-proxy -n kube-s.. 2024. 6. 9.
[K8s] 헬름 (Helm) 헬름 (Helm)  쿠버네티스 어플리케이션 운영을 위해 yaml 파일 관리가 필요하다. 헬름 (helm)은 헬름 차트 (helm chart) 라고 불리는 쿠버네티스 패키지를 관리하는 도구이다. 헬름쿠버네티스 어플리케이션 관리를 도와주는 소프트웨어새로운 차트 생성쿠버네티스 클러스터 내부에 존재하는 차트 설치 및 삭제헬름 차트쿠버네티스 어플리케이션을 설치하거나 업그레이드가 용이 헬름 설치 curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3chmod 700 get_helm.sh./get_helm.shhelm version nginx-ingress-controller 설치 helm repo add.. 2024. 6. 9.
[K8s] 스테이트풀셋 스테이트풀셋  스테이트풀셋은 어플리케이션의 스테이트풀을 관리하는데 사용하는 워크로드 API 오브젝트이다. 파드 집합의 디플로이먼트와 스케일링을 관리하며, 파드들의 순서 및 고유성을 보장한다 . 디플로이먼트와 유사하게, 스테이트풀셋은 동일한 컨테이너 스펙을 기반으로 둔 파드들을 관리한다. 디플로이먼트와는 다르게, 스테이트풀셋은 각 파드의 독자성을 유지한다. 파드가 동일한 스펙으로 생성되었어도, 서로 교체는 불가능하다. 다시 말해, 각각은 재스케줄링 간에도 지속적으로 유지되는 식별자를 가진다. 헤드리스 서비스 생성 vim statefulset-service.ymlapiVersion: v1kind: Servicemetadata: name: sfs-service01spec: selector: app: .. 2024. 6. 9.
[K8s] 스토리지 볼륨 (Storage Volume) 스토리지 볼륨 (Storage Volume)  볼륨은 스토리지 어레이에서 스토리지 공간을 관리하고 구성하는 데이터 컨테이너이다. 볼륨은 스토리지 어레이에서 사용할 수 있는 스토리지 용량에서 생성되며 시스템 리소스를 쉽게 구성 및 사용할 수 있다. PersistentVolume PV는 관리자가 프로비저닝하거나, Storage class를 사용해서 동적으로 프로비저닝한 클러스터의 스토리지이다. sudo -icd /tmp/mkdir k8spvexit NFS (Network File System)은 네트워크로 연결된 다른 컴퓨터의 파일 시스템을 내 컴퓨터로 마운트해서 상대방의 파일 시스템 일부를 자시 자신의 디렉토리처럼 사용하는 프로토콜이다. 쉽게 말해, 저장 공간을 공유할 수 있도록 해주는 서비스이다. sud.. 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.
728x90
반응형
LIST