본문 바로가기

공부 기록

(319)
[따배쿠] 5-1-2. 쿠버네티스 Pod - Pod 동작 flow https://youtu.be/nvBKnFfiy7M Pending -> Running -> Succeeded or Failed 동작 중인 파드 정보 보기 $ kubectl get pods $ kubectl get pods -o wide $ kubectl describe pod webserver $ kubectl get pods --all-namespaces 동작 중인 파드 수정 $ kubectl edit pod webserver 동작 중인 파드 삭제 $ kubectl delete pod webserver $ kubectl delete pod --all
[따배쿠] 5-1-1. 쿠버네티스 Pod - Container 정리와 Single / Multi Container Pod 생성 https://youtu.be/0rYt3PcggzA Pod - 컨테이너를 표현하는 쿠버네티스 API의 최소 단위 - Pod에는 하나 또는 여러 개의 컨테이너가 포함될 수 있음 Pod 생성하기 - kubectl run 명령(CLI)으로 생성 - pod yaml을 이용해 생성 watch 명령어 : 명령어를 2초마다 한 번씩 실행
[따배쿠] 4-3. 쿠버네티스 아키텍처 - yaml템플릿과 API https://youtu.be/9kk_C4nUmWc API version - alpha -> beta -> stable - 쿠버네티스 object 정의 시 apiVersion이 필요 - 쿠버네티스가 업데이트하는 API가 있으면 새로운 API가 생성됨 - API object의 종류 및 버전 - Deployment : apps/v1 - Pod : v1 - ReplicaSet : apps/v1 - ReplicationController : v1 - Service : v1 - PersistentVolume : v1 kubectl explain 오브젝트
[따배쿠] 4-2. 쿠버네티스 아키텍처 - namespace https://youtu.be/pfkx8KDAZyk 쿠버네티스 namespace (API 종류 중 하나) - namespace : 클러스터 하나를 여러 개의 논리적인 단위로 나눠서 사용 - 쿠버네티스 클러스터 하나를 여러 팀이나 사용자가 함께 공유 - 용도에 따라 실행해야 하는 앱을 구분할 때 사용 네임스페이스 사용하기 namespace 생성 CLI $ kubectl create namespace blue $ kubectl get namespaces yaml $ kubectl create namespace green --dry-run -o yaml > green-ns.yaml $ vim green-ns.yaml $ kubectl create -f green-ns.yaml namespace 관리 $ kub..
[따배쿠] 4-1. 쿠버네티스 아키텍처 - Kubernetes 동작원리 https://youtu.be/Iue9TC13vPQ 쿠버네티스 컴포넌트 마스터 컴포넌트(Control-plane) - etcd : key-value 타입의 저장소 - kube-apiserver : k8s API를 사용하도록 요청을 받고 요청이 유효한지 검사 - kube-scheduler : 파드를 실행할 노드 선택 - kube-controller-manager : 파드를 관찰하며 개수를 보장 워커 노드 컴포넌트 - kubelet : 모든 노드에서 실행되는 k8s 에이전트, 데몬 형태로 동작 - kube-proxy : k8s의 네트워크 동작을 관리, iptables rule을 구성 - 컨테이너 런타임 : 컨테이너를 실행하는 엔진(docker, containerd, runc ...) 애드온 - 네트워크 애드..
[따배쿠] 3-2. kubectl command / pod 생성하기 https://youtu.be/QGF7igBYSEI kubectl api-resources : 약어 정보 조회 kubectl (명령어) --help : 도움말 kubectl get nodes : 전체 노드 정보 조회 kubectl get nodes -o wide : 더 자세한 전체 노드 정보 조회 kubectl describe node 노드_이름 : 특정 노드의 자세한 정보 조회 kubectl run webserver --image=nginx:1.14 --port 80 : 1.14 버전의 nginx를 사용하고 80포트를 리슨하는 webserver 컨테이너(pod)를 실행 kubectl run webserver --image=nginx:1.14 --port 80 --dry-run -o yaml : 실행할 ..
[따배쿠] 3-1. kubectl 실습 / 실습환경 구성하기 https://youtu.be/3ChtEuiQ2Yg kubectl 명령어 사용하기 kubectl 명령어 기본 구조 kubectl [command] [TYPE] [NAME] [flags] command : 자원(object)에 실행할 명령(ex. create, get, delete, edit ...) TYPE : 자원의 종류(ex. node, pod, service ...) NAME : 자원의 이름 flags : 부가적으로 설정할 옵션(ex, --help, -o options ...) kubectl commands
[따배쿠] 2-2. 도커 쿠버네티스 설치 / PC에 직접 설치하기 https://youtu.be/lheclzO-G7k https://kubernetes.io/ Production-Grade Container Orchestration Production-Grade Container Orchestration kubernetes.io 쿠버네티스 클러스터를 직접 구성하는 도구 - kubeadm : 쿠버네티스에서 공식 제공하는 클러스터 생성/관리 도구 - kubespray : 쿠버네티스 클러스터를 배포하는 오픈소스 프로젝트, 다양한 형식으로 쿠버네티스 클러스터 구성 가능, 온프레미스에서 상용 서비스 클러스터 운영 시 유용, 다양한 CNI 제공 CNI(Container Network Interface) - 컨테이너 간 통신을 지원하는 VxLAN. Pod Network라고도 부름 ..