본문 바로가기

Tech

0/3 nodes are available: 1 node(s) had untolerated taint {node-role.kubernetes.io/control-plane: }, 2 node(s) didn't match Pod's node affinity/selector. preemption: 0/3 nodes are available: 3 Preemption is not helpful for scheduling. 요약노드 셀렉터로 특정 노드에 Pod 배포를 지정했는데, 해당 노드를 찾을 수 없어 발생한 문제 해결spec: nodeSelector: kubernetes.io/hostname: k8s-worker1 부분이 문제였다.적절한 호스트이름으로 변경해 주면 된다. (나의 경우, k8s-node1로 변경했다.)apiVersion: v1kind: Podmetadata: name: pod-1 labels: app: pod**spec: nodeSelector: kubernetes.io/hostname: k8s-worker1** containers: - name: container image: kubetm/app ports: - containerPort: 8080 더보기
Vagrant로 5분만에 Kubernetes 클러스터 V1.32 구성하기 (Arm64, Apple Silicon Chip) (2) - Vagrant 스크립트 설명 해당 게시물은 아래 글에서 사용된 코드에 대해 설명한다.https://iwantbaobab.tistory.com/590참고 : Vagrant 위주로 주석을 추가했으므로, 혹시나! 쉘 스크립트에 대해서 궁금하신 분이 있다면 댓글로 남겨주시길 바랍니다. 친절하고 자세하게 답글 달아드리겠습니다! Vagrant 파일 설명vagrant 파일은 크게 두 개의 영역으로 구분할 수 있다.Ruby 영역과 Shell Script 영역이다. Rubyvagrant는 기본적으로 루비를 지원하고, Shell Script를 호환하는 방식으로 사용된다.hosts_entries 변수는 Ruby에서 동적으로 생성되며, 이를 포함한 쉘 스크립트 문자열은 Vagrant가 런타임에 evaluate하여 프로비저닝 중 VM 내에 주입돼 실행된다.. 더보기
Terraform 실습을 위한 사전 준비와 기초 개념 이해 Terraform 기본테라폼의 주요 구성요소resource : 실제로 생성할 인프라 자원 → 예) LB, EC2, SG 등provider : Terraform으로 정의할 Infrastructure Provider → 예) AWS, NCP 등output : 인프라를 프로비저닝 한 후에 생성된 자원을 output 부분으로 추출, 이후 remote state에서 활용 가능backend : terraform의 상태를 저장할 공간을 지정하는 부분, backend를 사용하면 현재 배포된 최신 상태를 외부에 저장하기 때문에 다른 사람과의 협업 가능 → 예) S3module : 공통적으로 활용할 수 있는 인프라 코드를 한 곳으로 모아 모듈화 → 모듈을 활용해 변수만 바꿔 동일한 리소스를 손쉽게 생성 가능remote s.. 더보기