일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- kubernetes
- grafana
- jvm
- aws s3
- tcp
- Spring
- Operating System
- docker
- CSV
- kubectl
- Trino
- ip
- kubeadm
- PostgreSQL
- Network
- log
- Vision
- JavaScript
- CVAT
- EC2
- Python
- zookeeper
- OS
- airflow
- MAC address
- AWS
- Packet
- helm
- Kafka
- java
Archives
- Today
- Total
JUST WRITE
CoreDNS 설정 - Host 강제로 넣기 본문
CoreDNS 설정
Bare Metal Server에서 Kubernetes Cluster를 구축하는 프로젝트에 참여하고 있습니다.
DNS NameServer 역시 Private 환경에서 따로 구성하고 있었다.
보통 Public Network 환경이라면 ISP(Internet Service Provider)가 제공해 주거나
구글에서 제공하는 Name Server인 8.8.8.8을 사용한다.
Kubernetes Cluster를 구성하면서 DNS 세팅 관련해서 작업한 것을 정리해보려 한다.
Host 강제로 넣기
어떠한 방법으로 Pod에서 해당 DNS로 가지를 못했다.
그러다가 찾게 된 방법이 CoreDNS 설정에 Hostname를 강제로 박을 수 있었다.
실낱같은 희망으로 해당 방법으로 작업을 진행해 보았다.
kube-system Namespace에 coredns라는 configmap이 존재한다.
해당 configmap을 수정하였다.
$ kubectl edit cm coredns -n kube-system
apiVersion: v1
kind: ConfigMap
metadata:
creationTimestamp: "2023-01-09T05:14:26Z"
name: coredns
namespace: kube-system
resourceVersion: "*****"
data:
Corefile: |
.:53 {
errors
health {
lameduck 5s
}
ready
kubernetes cluster.local in-addr.arpa ip6.arpa {
pods insecure
fallthrough in-addr.arpa ip6.arpa
ttl 30
}
prometheus :9153
forward . /etc/resolv.conf {
max_concurrent 1000
}
cache 30
loop
reload
loadbalance
hosts {
***.***.***.*** ${host명} # 강제로 넣은 부분
fallthrough
}
}
configmap에서 hosts라는 부분에 원하는 Host와 IP를 직접 넣어준다.
수정한 후에 coredns와 flannel Pod를 재시작해주었다.
$ kubectl rollout restart coredns -n kube-system
$ kubectl rollout restart flannel -n kube-system
728x90
반응형
'MLOps > Kubernetes' 카테고리의 다른 글
특정 Node에 Pod 스케줄링 (0) | 2023.02.26 |
---|---|
Kubernets Cluster에 Worker Node 추가 (0) | 2023.02.18 |
Master Node HA 구성(2) - HAProxy 세팅 (0) | 2023.02.02 |
Master Node HA 구성(1) - keepalived 세팅 (0) | 2023.02.01 |
Control Plane Components (0) | 2023.01.21 |
Comments