분류 전체보기
-
[따배쿠] Controller - ReplicationController란?kubernetes 2024. 12. 4. 09:26
ControlllerPod의 개수 보장 (Scale Out 보장)Controller을 삭제하면 종속된 Pod도 삭제됨 종류Replication ControllerPod 개수 보장 컨트롤러 파드의 복제본 수를 관리하여 항상 지정된 수의 파드가 실행되도록 보장합니다.ReplicaSetReplication Controller + 풍부한 Label 지원쿠버네티스에서 파드의 복제본을 관리하는 중요한 역할을 하며, Deployment와 함께 사용되어 애플리케이션의 배포 및 업데이트를 효율적으로 관리합니다DeploymentReplicaSet을 제어 (Rolling Update / Roll back) 애플리케이션의 배포 및 업데이트를 관리합니다. 롤링 업데이트와 롤백 기능을 제공하여 애플리케이션의 가용성을 높입니다.D..
-
[따배쿠] Pod - Pod 환경변수 설정과 실행 패턴kubernetes 2024. 12. 3. 14:07
환경변수Pod 내의 컨테이너가 실행될 때 필요로 하는 변수컨테이너 제작 시 미리 정의NGINX Dockerfile의 예ENV NGINX_VERSION 1.19.2ENV NUS_VERSION 0.4.3Pod 실행 시, 미리 정의된 컨테이너 환경변수를 변경할 수 있다. 혹은 환경변수를 새롭게 지정할 수도 있다. 예시 # pod-nginx-env.yaml 파일 작성root@master:~/Getting-Start-Kubernetes/5# cat pod-nginx-env.yamlapiVersion: v1kind: Podmetadata: name: nginx-pod-envspec: containers: - name: nginx-container image: nginx:1.14 ports: -..
-
[따배쿠] Pod - Pod에 Resource 할당하기 (CPU/memory requests, limits)kubernetes 2024. 12. 3. 10:15
Pod Resource 요청 및 제한Resource Requests파드를 실행하기 위한 최소 리소스 양 요청Resource Limits파드가 사용할 수 있는 최대 리소스 양 제한 Memory limit을 초과해서 사용하는 파드는 종료(kill)되며 다시 스케줄링 된다.해당 기능을 통해 파드가 과도한 리소스를 사용하는 것을 방지컨테이너 별로 Resource 설정도 가능하다. 특징 리소스 관리요청과 제한을 설정함으로써, 쿠버네티스는 클러스터의 리소스를 효율적으로 관리할 수 있습니다. 요청이 설정된 리소스는 스케줄링 시 고려되며, 제한은 Pod가 과도한 리소스를 사용하지 않도록 합니다.안정성요청과 제한을 통해 클러스터의 안정성을 높일 수 있습니다. 예를 들어, 특정 Pod가 갑자기 많은 리소스를 소모할 경우,..
-
[따배쿠] Pod - static Pod(feat. kubelet daemon)kubernetes 2024. 12. 2. 15:43
static podAPI 서버의 도움 없이, 특정 노드에 있는 kubelet 데몬에 의해 직접 Pod 실행보통 pod 생성하기 위해 kubectl run ~ 명령어를 master node(control plane)의 REST API server에 전달하고, Master node의 REST API server가 Scheduler에게 어떤 노드에 컨테이너를 실행하면 좋을지 질문하고, 응답 받는다.REST API server은 scheduler로 부터 응답받은 최적 노드의 kubelet에게 요청을 전달한다. ex) 최적 노드가 node1일 경우 node1의 kubelet하지만 stactic pod는 이러한 과정을 거치지 않고, 특정 노드에 있는 kubelet 데몬에 의해 작동된다./etc/kubernetes/..
-
[Git] Git clone vs Git pull기타 2024. 12. 2. 14:34
Git clone목적: 원격 저장소의 전체 내용을 로컬로 복사합니다.사용 예: 다른 사람의 프로젝트를 가져오거나, 새로운 프로젝트를 시작할 때 사용합니다.기능:원격 저장소의 모든 파일, 커밋 기록, 브랜치 등을 포함하여 로컬 저장소를 생성합니다.예를 들어, git clone https://github.com/user/repo.git는 해당 원격 저장소를 로컬에 복제합니다.결과: 새로운 로컬 저장소가 생성되며, 원격 저장소와 연결됩니다.Git pull목적: 원격 저장소의 변경 사항을 로컬 저장소에 가져옵니다.사용 예: 이미 클론한 저장소에서 원격의 최신 변경 사항을 가져오고 싶을 때 사용합니다.기능:원격 저장소의 변경 사항을 가져와서 현재 체크아웃된 브랜치에 병합합니다.git pull은 기본적으로 git ..
-
따배쿠 학습 용도kubernetes 2024. 12. 1. 16:31
Youtubehttps://www.youtube.com/watch?v=Sj9Z6-w1VUE&list=PLApuRlvrZKohaBHvXAOhUD-RxD0uQ3z0c&index=2 Github 예제 코드https://github.com/237summit/Getting-Start-Kubernetes GitHub - 237summit/Getting-Start-Kubernetes: example yamlsexample yamls. Contribute to 237summit/Getting-Start-Kubernetes development by creating an account on GitHub.github.com k8s 공식 docshttps://kubernetes.io/ko/docs/concepts/work..
-
[따배쿠] Pod - init container & infra containerkubernetes 2024. 12. 1. 16:27
Init ContainerMain Container 실행 전에 미리 동작시킬 컨테이너본 Container가 실행되기 전에 사전 작업이 필요할 경우 사용즉, Init Container가 실행되어야, Main Container를 구동시킬 수 있다.예시 1. node.js 이미지로 만들어진 로그인 지원 application을 담당 main container가 있다고 가정한다. 해당 main container에서 로그인을 지원하기 위해서는 db에서 로그인 관련 정보를 가져와야한다. 여기서 db에 접속을 해서 데이터를 가져오는 컨테이너가 init container가 된다.이를 하나의 pod로 만들어 놓으면, init container에서 작업이 성공해야 main container를 동작시킬 수 있다init con..
-
[따배쿠] Pod - liveness Probe를 이용해서 Self-healing Pod 만들기kubernetes 2024. 12. 1. 11:58
Liveness ProbePod가 계속 실행할 수 있게 보장하는 기능쿠버네티스의 self-healing 기능 중 하나self-healing : container가 정상적으로 동작하지 않을 때, 자동으로 restart 보장Pod의 spec에 정의[예시] 해당 예시는, livenessProbe 기능 중 httpGet probe (웹 서비스 기능) 으로 컨테이너가 잘 작동하고 있는지 확인어떻게? 웹 서비스에 http(80포트)로 주기적으로 접속, path는 /(root)응답이 잘 나오면 컨테이너가 잘 작동하는 걸로 판단 Liveness Probe 매커니즘애플리케이션에 따라 liveness probe 방법이 다르다.1. httpGet : 지정한 IP주소, port, path에 HTTP Get 요청을 보내, 해당..