쿠버네티스5 쿠버네티스(Kubernetes) PVC(Persistent Volume Claim)란? 쿠버네티스 PVC( Persistent Volume Claim)란? PVC는 stateless한 Pod이 영구적으로 데이터를 보존하고 싶은 경우 사용하는 리소스이다. 도커의 볼륨과 유사한 역할을 한다. PV는 관리자가 생성한 실제 저장 공간의 정보를 담고 있고, PVC는 사용자가 요청한 저장 공간의 스펙에 대한 정보를 담고 있는 리소스이다. 즉, Pod 내부에서 작성한 데이터는 기본적으로 언제든지 사라질 수 있기에 보존하고 싶은 데이터가 있다면 Pod에 PVC를 mount해서 사용해야 한다. PVC를 실습해보자. 1. YAML 파일 생성 (pvc.yaml, pod-pvc.yaml) vi pvc.yaml pvc.yaml apiVersion: v1 kind: PersistentVolumeClaim metad.. 2024. 1. 12. 쿠버네티스(Kubernetes) 서비스란? 쿠버네티스 서비스란? 만들어진 Pod끼리 통신하기 위해서는 서비스가 필요하다. 서비스는 쿠버네티스에 배포한 애플리케이션(Pod)을 접근하기 쉽게 추상화한 리소스이다. Service를 실습해보자. 1. YAML 파일 생성 vi service.yaml service.yaml apiVersion: v1 kind: Service metadata: name: my-nginx labels: run: my-nginx spec: type: NodePort # Service 의 Type 을 명시하는 부분입니다. 자세한 설명은 추후 말씀드리겠습니다. ports: - port: 80 protocol: TCP selector: # 아래 label 을 가진 Pod 을 매핑하는 부분입니다. app: nginx 2. 적용 및 조회.. 2024. 1. 12. 쿠버네티스(Kubernetes) Deployment란? 쿠버네티스 Deployment란? Deployment란 Pod와 Relicaset에 대한 관리를 제공하는 단위이다. Deployment는 Pod를 감싼 개념이라 생각할 수 있다. Deployment 실습해보자. 1. YAML 파일 생성 vi deploy.yaml deploy.yaml (파드 3개 생성) apiVersion: apps/v1 # kubernetes resource 의 API Version kind: Deployment # kubernetes resource name metadata: # 메타데이터 : name, namespace, labels, annotations 등을 포함 name: nginx-deployment labels: app: nginx spec: # 메인 파트 : resourc.. 2024. 1. 12. 쿠버네티스(Kubernetes) 포트포워딩(PortForward), YAML/POD란? 생성 조회 및 삭제 먼저 포트포워딩부터 해보자. window powershell에서 실행한다. 1. 가상머신 실행 ssh Azure아이디@할당받은IP주소 2. 설치 curl -LO https://storage.googleapis.com/minikube/releases/v1.22.0/minikube-linux-amd64 sudo install minikube-linux-amd64 /usr/local/bin/minikube minikube --help curl -LO https://dl.k8s.io/release/v1.22.1/bin/linux/amd64/kubectl sudo install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl 1) 버전 확인해보기 minikube .. 2024. 1. 12. 쿠버네티스(Kubernetes, k8s)란? 등장배경, 도커, 컨테이너와의 관계 쿠버네티스(Kubernetes, k8s)란? 컨테이너 오케스트레이션을 위한 솔루션으로, 다수의 컨테이너를 관리하는데 사용된다. 오케스트레이션이란 여러 서버에 걸친 컨테이너 및 사용하는 환경 설정을 관리하는 행위이다. 쿠버네티스 등장배경 쿠버네티스의 탄생배경을 알기 위해서는 가상화 환경과 컨테이너 환경의 차이부터 알아야 한다. 우선 컨테이너 인프라 환경은 리눅스 운영 체제의 커널 하나에서 여러 개의 컨테이너가 격리된 상태로 실행되는 인프라 환경을 말한다. 다수의 관리자가 수백 또는 수천 대의 서버를 함께 관리하는 기업 환경에서 일관성을 유지하는 것이 중요하기 때문에 컨테이너 인프라 환경이 효과적인 것이다. 또한 가상화 환경에서는 각각의 가상 머신이 모두 독립적인 운영 체제 커널을 가지고 있어야 하기 때문에.. 2024. 1. 12. 이전 1 다음