Kubernetes21 Kubernetes Affinity / 쿠버네티스, Affinity, Node, Pod, Scheduling, values list Kubernetes Affinity Affinity란 간단하게 설명하자면 원하는 Node에 Pod를 배치해주는 기능이다. Affinity외에도 taint&toleration, cordon과 같은 기능으로 노드에 스케쥴링하는 것을 컨트롤 할 수 있다. Affinity는 원하는 노드에 설치하도록 하는 성향이 강하고, taint&toleration은 일부 Node에 특정 Pod만 스케쥴링하는 성격, cordon은 노드 점검과 같은 것이 필요할 때 전체 스케쥴링 제외를 하는 것으로 보면 된다. https://kubernetes.io/docs/tasks/configure-pod-container/assign-pods-nodes-using-node-affinity/ Assign Pods to Nodes using .. 2023. 1. 21. Kubernetes Cronjob / 쿠버네티스, 크론잡, container, k8s, 반복, 크론잡 Kubernetes Cronjob Kubenetes에서 제공하는 기능 중 하나이며 Linux의 service + timer의 기능과 비슷 말그대로 Cronjob을 제공 특정 시간에 script를 실행하도록 한다거나.. 가능 apiVersion: batch/v1beta1 kind: CronJob metadata: name: test spec: schedule: "* * * * *" jobTemplate: spec: template: spec: containers: - name: chicken-test image: {{이미지 주소}} imagePullPolicy: Always command: ["python", "main.py"] args: ["env", "test"] env: - name: "chicken.. 2023. 1. 16. User Namespace / Container 기초, 격리, 네임스페이스, 컨테이너, 간단정리, capabilities, 권한 User Namespace user ID와 group ID를 구분하여, container가 특정 user ID, group ID만 볼 수 있도록 구성 호스트에서는 권한이 없는 일반 유저를 container안에서는 root로 보여지도록 해주는 것 즉, 앞선 PID namespace와 같이 중첩된 권한을 갖게 된다는 뜻 보안적으로 host에 영향을 끼치지 않도록 도와줌 root@ubuntu1804:~# unshare -U nobody@ubuntu1804:~$ id -u 65534 nobody@ubuntu1804:~$ id -g 65534 nobody@ubuntu1804:~$ exit logout root@ubuntu1804:~# id -u 0 root@ubuntu1804:~# id -g 0 unshare -.. 2023. 1. 14. Container Image / 컨테이너 이미지, Kubernetes, Docker, Dockerfile Container Image 컨테이너 이미지는 root filesystem과 이미지 설정 정보로 저장 즉 이미지는 root filesystem에 복사되어 사용되는 것이고, Dockerfile과 같은 이미지 build관련 설정 명령어들로 이루어지는 것 - Dockerfile 이미지 build 관련 명령어들을 저장 아래 표에 간단하게 명령어들을 정리해봤다. 명령어 동작 FROM Base Image를 지정하는 것 FROM alpine:3.10과 같이 사용 ADD 파일을 이미지에 복사하여 추가 ADD test.zip / 보통 압축 해제할 때 사용 COPY ADD와 비슷한 기능을 함, 복사 COPY test.sh /copy-test.sh RUN shell 커맨드를 사용한다고 보면 됨 apt-get update 커.. 2023. 1. 11. Docker vs Containerd / Container runtime, 쿠버네티스, 도커, 차이점, 장단점 Container Runtime 때문에 문제가 생겼던 적이 있었다... Containerd와 Docker를 혼용하다가 생긴 문제였다. 다들 알다시피 Kubernetes version 1.24부터 Docker를 사용하지 못하게 됐다. 더보기 Dockershim Removed from kubelet After its deprecation in v1.20, the dockershim component has been removed from the kubelet in Kubernetes v1.24. From v1.24 onwards, you will need to either use one of the other supported runtimes (such as containerd or CRI-O) or use.. 2023. 1. 4. Kubernetes Components (Worker Node) / 쿠버네티스 컴포넌트, 워커 노드, 노드 컴포넌트 Kubernetes Node Components Control-plane component를 볼때 확인했던 Kubernetes component 구성요소이다. Worker node component로 해당되는 것들은 그림에 따로 빨간색으로 표시해둔 것들이다. - kubelet 각 노드에서 실행되는 agent 노드의 파드, 컨테이너들의 실행을 보장하도록 관리해주는 컴포넌트 파드의 상태(스케줄링, 모니터링, 종료 등)를 kube-apiserver에 지속적으로 전달 - kube-proxy 각 노드에서 실행되는 네트워크 프록시, 서비스의 구현부 네트워크 규칙을 관리, 클러스터 외부에서 파드와 통신이 가능하도록 함 원래는 userspace에서 proxy동작을 하기때문에 이름이 이렇게 붙여졌지만, kernelspa.. 2022. 12. 28. 이전 1 2 3 4 다음 반응형