Kubernetes의 CronJob을 특정 노드에 배포할 때, nodeSelector와 nodeAffinity를 조합하여 더욱 세밀한 노드 선택을 할 수 있습니다.이번 글에서는 기존 nodeSelector를 유지하면서 nodeAffinity를 추가하여 특정 조건을 만족하는 노드에서만 Pod가 실행되도록 설정하는 방법을 소개합니다. 기존 설정 (nodeSelector만 사용) 아래와 같은 CronJob 설정이 있다고 가정합니다.이 설정은 group=batch 라벨이 있는 노드에서만 실행됩니다. apiVersion: batch/v1kind: CronJobmetadata: 더 읽기
kubenetes
Kubernetes CronJob suspend 후 즉시 실행되는 원인과 해결 방법 & 노드 라벨 확인 방법
Kubernetes에서 CronJob을 suspend: true로 설정했다가 다시 suspend: false로 변경하면, 스케줄 시간이 아닌데도 즉시 실행되는 경우가 있습니다. 이 현상의 주요 원인과 해결 방법을 정리하겠습니다. 또한, Kubernetes 노드(Node)의 라벨(Label) 확인 방법도 함께 소개합니다. Kubernetes 노드 라벨 확인 방법 Kubernetes에서는 노드(Label)를 활용하여 워크로드를 특정 노드에 할당하거나, 스케줄링 정책을 적용할 수 있습니다. 노드의 라벨을 더 읽기
Kafka 컨슈머를 EKS에서 운영할 때 발생하는 문제와 해결 방법
1. 개요 Kafka 컨슈머를 Amazon EKS 환경에서 운영할 때, Pod가 생성 및 삭제되면서 중복 소비, 메시지 누락, Rebalance 지연 등의 문제가 발생할 수 있습니다. 이 글에서는 Kafka 컨슈머의 동작 방식과 안정적인 운영 방법을 정리합니다. 2. Kafka 컨슈머와 EKS의 배포 방식 EKS에서는 Rolling Update 방식으로 새로운 버전의 Pod를 배포하면 기존 Pod가 더 읽기