เช เชฎเซ เชคเชพเชเซเชคเชฐเชฎเชพเช Kops เชจเซ เชเชชเชฏเซเช เชเชฐเซเชจเซ AWS เชชเชฐ Kubernetes 1.9 เชฒเซเชจเซเช เชเชฐเซเชฏเซเช เชเซ. เชเชเชเชพเชฒเซ, เช เชฎเชพเชฐเชพ เชเซเชฌเชฐเชจเซเชเซเชธ เชเซเชฒเชธเซเชเชฐเซเชฎเชพเชเชจเชพ เชธเซเชฅเซ เชฎเซเชเชพเชฎเชพเช เชจเชตเชพ เชเซเชฐเชพเชซเชฟเชเชจเซ เชธเชฐเชณเชคเชพเชฅเซ เชฐเซเชฒเชเชเช เชเชฐเชคเซ เชตเชเชคเซ, เชฎเซเช เช เชฎเชพเชฐเซ เชเชชเซเชฒเชฟเชเซเชถเชจ เชฆเซเชตเชพเชฐเชพ เชฒเซเช เชเชฐเชพเชฏเซเชฒเซ เช เชธเชพเชฎเชพเชจเซเชฏ DNS เชจเชพเชฎ เชฐเชฟเชเซเชฒเซเชฏเซเชถเชจ เชญเซเชฒเซ เชงเซเชฏเชพเชจเชฎเชพเช เชฒเซเชตเชพเชจเซเช เชถเชฐเซ เชเชฐเซเชฏเซเช.
GitHub เชชเชฐ เช เชตเชฟเชถเซ เชเชฃเซเช เชฌเชงเซเช เชเซ kube-dns
ะธ dnsmasq
. เชฎเชพเชฐเชพ เชฎเชพเชเซ เชธเซเชฅเซ เชฐเชธเชชเซเชฐเชฆ เช
เชจเซ เชจเชตเซ เชตเชธเซเชคเซ DNS เชตเชฟเชจเชเชคเซ เชเซเชฐเชพเชซเชฟเชเชฎเชพเช เชจเซเชเชงเชชเชพเชคเซเชฐ เชตเชงเชพเชฐเซ เชฅเชตเชพเชจเซเช เชเซเชฌ เช เชเชพเชฐเชฃ เชนเชคเซเช. เชฎเชพเชฐเซ เชชเซเชธเซเช เช เชตเชฟเชถเซ เชเซ เช
เชจเซ เชคเซเชจเชพ เชตเชฟเชถเซ เชถเซเช เชเชฐเชตเซเช.
เชเชจเซเชเซเชจเชฐเชจเซ เช
เชเชฆเชฐ DNS เชฐเชฟเชเซเชฒเซเชฏเซเชถเชจ - เชเซเชเชชเชฃ Linux เชธเชฟเชธเซเชเชฎเชจเซ เชเซเชฎ - เชฐเซเชชเชฐเซเชเชพเชเชเชจ เชซเชพเชเชฒ เชฆเซเชตเชพเชฐเชพ เชจเชเซเชเซ เชเชฐเชตเชพเชฎเชพเช เชเชตเซ เชเซ /etc/resolv.conf
. เชกเชฟเชซเซเชฒเซเช เชเซเชฌเชฐเชจเซเชเซเชธ dnsPolicy
เชคเซ ClusterFirst
, เชเซเชจเซ เช
เชฐเซเชฅ เชเซ เชเซ เชเซเชเชชเชฃ DNS เชตเชฟเชจเชเชคเซเชจเซ เชซเซเชฐเชตเชฐเซเชก เชเชฐเชตเชพเชฎเชพเช เชเชตเชถเซ dnsmasq
, เชชเซเชกเชฎเชพเช เชเชพเชฒเซ เชฐเชนเซเชฏเซเช เชเซ kube-dns
เชเซเชฒเชธเซเชเชฐเชจเซ เช
เชเชฆเชฐ, เชเซ เชฌเชฆเชฒเชพเชฎเชพเช เช
เชฐเชเซเชจเซ เชตเชฟเชจเชเชคเซเชจเซ เชซเซเชฐเชตเชฐเซเชก เชเชฐเชถเซ kube-dns
, เชเซ เชจเชพเชฎ เชเซเชฒเชธเซเชเชฐ เชชเซเชฐเชคเซเชฏเชฏ เชธเชพเชฅเซ เชธเชฎเชพเชชเซเชค เชฅเชพเชฏ เชเซ, เช
เชฅเชตเชพ, เช
เชจเซเชฏเชฅเชพ, เชเชเซเช เชธเซเชคเชฐเชจเชพ DNS เชธเชฐเซเชตเชฐ เชชเชฐ.
เชซเชพเชเชฒ /etc/resolv.conf
เชฆเชฐเซเช เชเชจเซเชเซเชจเชฐเชจเซ เช
เชเชฆเชฐ เชกเชฟเชซเซเชฒเซเช เชเชจเชพ เชเซเชตเซ เชฆเซเชเชพเชถเซ:
nameserver 100.64.0.10
search namespace.svc.cluster.local svc.cluster.local cluster.local
eu-west-1.compute.internal
options ndots:5
เชเซเชฎ เชคเชฎเซ เชเซเช เชถเชเซ เชเซ, เชคเซเชฏเชพเช เชคเซเชฐเชฃ เชจเชฟเชฐเซเชฆเซเชถเซ เชเซ:
- เชจเซเชฎ เชธเชฐเซเชตเชฐ เช เชธเซเชตเชพเชจเซ IP เชเซ
kube-dns
- 4 เชธเซเชฅเชพเชจเชฟเช เชถเซเชง เชกเซเชฎเซเชจเซเชธ เชเชฒเซเชฒเซเชเชฟเชค
search
- เชเช เชตเชฟเชเชฒเซเชช เชเซ
ndots:5
เช เชฐเซเชชเชฐเซเชเชพเชเชเชจเชจเซ เชฐเชธเชชเซเชฐเชฆ เชญเชพเช เช เชเซ เชเซ เชเซเชตเซ เชฐเซเชคเซ เชธเซเชฅเชพเชจเชฟเช เชถเซเชง เชกเซเชฎเซเชจเซเชธ เช
เชจเซ เชธเซเชเชฟเชเชเซเชธ ndots:5
เชธเชพเชฅเซ เชฎเซเชณเชตเซ. เช เชธเชฎเชเชตเชพ เชฎเชพเชเซ, เชคเชฎเชพเชฐเซ เช
เชฏเซเชเซเชฏ เชจเชพเชฎเซ เชฎเชพเชเซ DNS เชฐเชฟเชเซเชฒเซเชฏเซเชถเชจ เชเซเชตเซ เชฐเซเชคเซ เชเชพเชฐเซเชฏ เชเชฐเซ เชเซ เชคเซ เชธเชฎเชเชตเชพเชจเซ เชเชฐเซเชฐ เชเซ.
เชเชเซเช เชจเชพเชฎ เชถเซเช เชเซ?
เชธเชเชชเซเชฐเซเชฃ เชฒเชพเชฏเช เชจเชพเชฎ เช เชเช เชจเชพเชฎ เชเซ เชเซเชจเชพ เชฎเชพเชเซ เชเซเช เชธเซเชฅเชพเชจเชฟเช เชฒเซเชเช
เชช เชเชฐเชตเชพเชฎเชพเช เชเชตเชถเซ เชจเชนเซเช เช
เชจเซ เชจเชพเชฎ เชฐเชฟเชเซเชฒเซเชฏเซเชถเชจ เชฆเชฐเชฎเชฟเชฏเชพเชจ เชจเชพเชฎ เชธเชเชชเซเชฐเซเชฃ เชฎเชพเชจเชตเชพเชฎเชพเช เชเชตเชถเซ. เชธเชเชฎเซเชฒเชจ เชฆเซเชตเชพเชฐเชพ, DNS เชธเซเชซเซเชเชตเซเชฐ เชจเชพเชฎเชจเซ เชธเชเชชเซเชฐเซเชฃ เชฒเชพเชฏเช เชเชฃเซ เชเซ เชเซ เชคเซ เชกเซเช (.) เชธเชพเชฅเซ เชธเชฎเชพเชชเซเชค เชฅเชพเชฏ เชเซ, เช
เชจเซ เช
เชจเซเชฏเชฅเชพ เชธเชเชชเซเชฐเซเชฃ เชฒเชพเชฏเชเชพเชค เชงเชฐเชพเชตเชคเซเช เชจเชฅเซ. เชคเซ เช google.com.
เชธเชเชชเซเชฐเซเชฃเชชเชฃเซ เชตเซเชฏเชพเชเซเชฏเชพเชฏเชฟเชค เช
เชจเซ google.com
- เชจเชพ.
เช เชฏเซเชเซเชฏ เชจเชพเชฎ เชเซเชตเซ เชฐเซเชคเซ เชนเซเชจเซเชกเชฒ เชเชฐเชตเชพเชฎเชพเช เชเชตเซ เชเซ?
เชเซเชฏเชพเชฐเซ เชเชชเซเชฒเชฟเชเซเชถเชจ เชจเชพเชฎเชฎเชพเช เชเชฒเซเชฒเซเชเชฟเชค เชฐเชฟเชฎเซเช เชนเซเชธเซเช เชธเชพเชฅเซ เชเซเชกเชพเชฏ เชเซ, เชคเซเชฏเชพเชฐเซ DNS เชจเชพเชฎ เชฐเชฟเชเซเชฒเซเชฏเซเชถเชจ เชธเชพเชฎเชพเชจเซเชฏ เชฐเซเชคเซ เชธเชฟเชธเซเชเชฎ เชเซเชฒเชจเซ เชเชชเชฏเซเช เชเชฐเซเชจเซ เชเชฐเชตเชพเชฎเชพเช เชเชตเซ เชเซ, เชฆเชพ.เชค. getaddrinfo()
. เชชเชฐเชเชคเซ เชเซ เชจเชพเชฎ เช
เชฏเซเชเซเชฏ เชเซ (. เชธเชพเชฅเซ เชธเชฎเชพเชชเซเชค เชฅเชคเซเช เชจเชฅเซ), เชคเซ เชฎเชจเซ เชเชถเซเชเชฐเซเชฏ เชฅเชพเชฏ เชเซ เชเซ เชถเซเช เชธเชฟเชธเซเชเชฎ เชเซเชฒ เชชเซเชฐเชฅเชฎ เชจเชพเชฎเชจเซ เชธเชเชชเซเชฐเซเชฃ เชจเชพเชฎ เชคเชฐเซเชเซ เชเชเซเชฒเชตเชพเชจเซ เชชเซเชฐเชฏเชพเชธ เชเชฐเชถเซ, เช
เชฅเชตเชพ เชธเซเชฅเชพเชจเชฟเช เชถเซเชง เชกเซเชฎเซเชจเซเชธเชฎเชพเชเชฅเซ เชชเซเชฐเชฅเชฎ เชชเชธเชพเชฐ เชฅเชถเซ? เชคเซ เชตเชฟเชเชฒเซเชช เชชเชฐ เชเชงเชพเชฐ เชฐเชพเชเซ เชเซ ndots
.
เชฎเซเชจเซเชฏเซเช
เชฒเชฎเชพเชเชฅเซ resolv.conf
:
ndots:n
ัััะฐะฝะฐะฒะปะธะฒะฐะตั ะฟะพัะพะณ ะดะปั ะบะพะปะธัะตััะฒะฐ ัะพัะตะบ, ะบะพัะพััะต ะดะพะปะถะฝั ะฟะพัะฒะธัััั ะฒ ะธะผะตะฝะธ, ะฟัะตะถะดะต ัะตะผ ะฑัะดะตั ัะดะตะปะฐะฝ ะฝะฐัะฐะปัะฝัะน ะฐะฑัะพะปััะฝัะน ะทะฐะฟัะพั. ะะฝะฐัะตะฝะธะต ะฟะพ ัะผะพะปัะฐะฝะธั ะดะปั n ัะฐะฒะฝะพ 1, ััะพ ะพะทะฝะฐัะฐะตั, ััะพ ะตัะปะธ ะฒ ะธะผะตะฝะธ ะตััั ะบะฐะบะธะต-ะปะธะฑะพ ัะพัะบะธ, ะธะผั ะฑัะดะตั ัะฝะฐัะฐะปะฐ ะพะฟัะพะฑะพะฒะฐะฝะพ ะบะฐะบ ะฐะฑัะพะปััะฝะพะต ะธะผั, ะฟัะตะถะดะต ัะตะผ ะบ ะฝะตะผั ะฑัะดัั ะดะพะฑะฐะฒะปะตะฝั ะบะฐะบะธะต-ะปะธะฑะพ ัะปะตะผะตะฝัั ัะฟะธัะบะฐ ะฟะพะธัะบะฐ.
เชเชจเซ เช
เชฐเซเชฅ เช เชเซ เชเซ เชเซ เชฎเชพเชเซ ndots
5 เชจเซเช เชฎเซเชฒเซเชฏ เชเชชเชตเชพเชฎเชพเช เชเชตเซเชฏเซเช เชเซ เช
เชจเซ เชจเชพเชฎเชฎเชพเช 5 เชเชฐเชคเชพ เชเชเชพ เชฌเชฟเชเชฆเซเช เชเซ, เชธเชฟเชธเซเชเชฎ เชเซเชฒ เชคเซเชจเซ เชเซเชฐเชฎเชฟเช เชฐเซเชคเซ เชเชเซเชฒเชตเชพเชจเซ เชชเซเชฐเชฏเชพเชธ เชเชฐเชถเซ, เชชเซเชฐเชฅเชฎ เชคเชฎเชพเชฎ เชธเซเชฅเชพเชจเชฟเช เชถเซเชง เชกเซเชฎเซเชจเซเชธเชฎเชพเชเชฅเซ เชชเชธเชพเชฐ เชฅเชถเซ, เช
เชจเซ, เชเซ เช
เชธเชซเชณ เชนเซเชฏ, เชคเซ เชเชเชฐเซ เชคเซเชจเซ เชธเชเชชเซเชฐเซเชฃ เชจเชพเชฎ เชคเชฐเซเชเซ เชเชเซเชฒเชถเซ.
เชคเซ เชชเชเซ เชเซเชฎ ndots:5
เชถเซเช เชคเซ เชเชชเซเชฒเชฟเชเซเชถเชจ เชชเซเชฐเชญเชพเชตเชจเซ เชจเชเชพเชฐเชพเชคเซเชฎเช เช
เชธเชฐ เชเชฐเซ เชถเชเซ เชเซ?
เชเซเชฎ เชคเชฎเซ เชเชฒเซเชชเชจเชพ เชเชฐเซ เชถเชเซ เชเซ, เชเซ เชคเชฎเชพเชฐเซ เชเชชเซเชฒเชฟเชเซเชถเชจ เชเชฃเชพ เชฌเชงเชพ เชฌเชพเชนเซเชฏ เชเซเชฐเชพเชซเชฟเชเชจเซ เชเชชเชฏเซเช เชเชฐเซ เชเซ, เชคเซ เชฆเชฐเซเช TCP เชเชจเซเชเซเชถเชจ เชธเซเชฅเชพเชชเชฟเชค เชเชฐเชตเชพ เชฎเชพเชเซ (เช เชฅเชตเชพ เชตเชงเซ เชธเชเซเช เชฐเซเชคเซ, เชฆเชฐเซเช เชจเชพเชฎ เชเชเซเชฒเชตเชพ เชฎเชพเชเซ), เชคเซ เชจเชพเชฎ เชฏเซเชเซเชฏ เชฐเซเชคเซ เชเชเซเชฒเชพเชฏ เชคเซ เชชเชนเซเชฒเชพเช 5 DNS เชเซเชตเซเชฐเซเช เชฐเชเซ เชเชฐเชถเซ, เชเชพเชฐเชฃ เชเซ เชคเซ เชชเซเชฐเชฅเชฎ เชชเชธเชพเชฐ เชฅเชถเซ. 4 เชธเซเชฅเชพเชจเชฟเช เชถเซเชง เชกเซเชฎเซเชจ, เช เชจเซ เช เชเชคเซ เชเช เชธเชเชชเซเชฐเซเชฃ เชจเชพเชฎ เชฐเชฟเชเซเชฒเซเชฏเซเชถเชจ เชตเชฟเชจเชเชคเซ เชเชพเชฐเซ เชเชฐเชถเซ.
เชจเซเชเซเชจเซ เชเชพเชฐเซเช เช เชฎเชพเชฐเชพ 3 kube-dns เชฎเซเชกเซเชฏเซเชฒเซ เชชเชฐเชจเซ เชเซเชฒ เชเซเชฐเชพเชซเชฟเช เชฌเชคเชพเชตเซ เชเซ เชเซ เช เชฎเซ เช เชฎเชพเชฐเซ เชเชชเซเชฒเชฟเชเซเชถเชจเชฎเชพเช เชเซเช เชตเซเชฒเชพ เชฅเซเชกเชพ เชนเซเชธเซเชเชจเชพเชฎเซเชจเซ เชธเชเชชเซเชฐเซเชฃ เชฒเชพเชฏเชเชพเชค เชงเชฐเชพเชตเชคเชพ เชฒเซเชเซ เชฎเชพเชเซ เชธเซเชตเชฟเช เชเชฐเซเชฏเชพ เชชเชนเซเชฒเชพ เช เชจเซ เชชเชเซ.
เชจเซเชเซเชจเซ เชเชเซเชคเชฟ เชเชชเซเชฒเซเชเซเชถเชจ เชฒเซเชเชจเซเชธเซ เชฌเชคเชพเชตเซ เชเซ เชเซ เช เชฎเซ เช เชฎเชพเชฐเซ เชเชชเซเชฒเชฟเชเซเชถเชจเชฎเชพเช เชเซเช เชตเซเชฒเชพ เชเชฃเชพ เชนเซเชธเซเชเชจเชพเชฎเซเชจเซ เชธเชเชชเซเชฐเซเชฃ เชจเชพเชฎเซ เชชเชฐ เชธเซเชตเชฟเช เชเชฐเซเชฏเชพ เชชเชนเซเชฒเชพ เช เชจเซ เชชเชเซ (เชเชญเซ เชตเชพเชฆเชณเซ เชฐเซเชเชพ เช เชเชฎเชพเชตเช เชเซ):
เชเชเซเชฒ #1 - เชธเชเชชเซเชฐเซเชฃ เชฒเชพเชฏเชเชพเชค เชงเชฐเชพเชตเชคเชพ เชจเชพเชฎเซเชจเซ เชเชชเชฏเซเช เชเชฐเซ
เชเซ เชคเชฎเชพเชฐเซ เชชเชพเชธเซ เชฅเซเชกเชพ เชธเซเชฅเชฟเชฐ เชฌเชพเชนเซเชฏ เชจเชพเชฎเซ เชเซ (เชเชเชฒเซ โโโโเชเซ เชเชชเซเชฒเชฟเชเซเชถเชจ เชฐเซเชชเชฐเซเชเชพเชเชเชจเชฎเชพเช เชตเซเชฏเชพเชเซเชฏเชพเชฏเชฟเชค) เชเซ เชเซเชจเชพ เชฎเชพเชเซ เชคเชฎเซ เชฎเซเชเซ เชธเชเชเซเชฏเชพเชฎเชพเช เชเซเชกเชพเชฃเซ เชฌเชจเชพเชตเซ เชเซ, เชคเซ เชเชฆเชพเช เชธเชฐเชณ เชเชเซเชฒ เช เชเซ เชเซ เชคเซเชฎเชจเซ เชซเชเซเชค เชเซเชกเซเชจเซ เชธเชเชชเซเชฐเซเชฃ เชฒเชพเชฏเชเชพเชค เชงเชฐเชพเชตเชคเชพ เชจเชพเชฎเซ เชชเชฐ เชธเซเชตเชฟเช เชเชฐเชตเซเช. เช เชเชคเชฎเชพเช.
เช เชเซเช เช เชเชคเชฟเชฎ เชเชเซเชฒ เชจเชฅเซ, เชชเชฐเชเชคเซ เชคเซ เชชเชฐเชฟเชธเซเชฅเชฟเชคเชฟเชจเซ เชธเซเชงเชพเชฐเชตเชพเชฎเชพเช เชเชกเชชเชฅเซ เชฎเชฆเชฆ เชเชฐเซ เชเซ. เช เชฎเซ เช เชฎเชพเชฐเซ เชธเชฎเชธเซเชฏเชพเชจเซ เชเชเซเชฒเชตเชพ เชฎเชพเชเซ เช เชชเซเช เชฒเชพเชเซ เชเชฐเซเชฏเซ เชเซ, เชเซเชจเชพ เชชเชฐเชฟเชฃเชพเชฎเซ เชเชชเชฐเชจเชพ เชธเซเชเซเชฐเซเชจเชถเซเชเซเชธเชฎเชพเช เชฌเชคเชพเชตเชตเชพเชฎเชพเช เชเชตเซเชฏเชพ เชเซ.
เชเชเซเชฒ #2 - เชเชธเซเชเชฎเชพเชเชเซเชถเชจ ndots
ะฒ dnsConfig
Kubernetes 1.9 เชฎเชพเช, เชเชพเชฐเซเชฏเชเซเชทเชฎเชคเชพ เชเชฒเซเชซเชพ เชฎเซเชก (เชฌเซเชเชพ เชธเชเชธเซเชเชฐเชฃ v1.10) เชฎเชพเช เชฆเซเชเชพเชฏ เชเซ, เชเซ เชคเชฎเชจเซ เชชเซเชก เชชเซเชฐเซเชชเชฐเซเชเซ เชฆเซเชตเชพเชฐเชพ DNS เชชเซเชฐเชพเชฎเซเชเชฐเซเชธเชจเซ เชตเชงเซ เชธเชพเชฐเซ เชฐเซเชคเซ เชจเชฟเชฏเชเชคเซเชฐเชฟเชค เชเชฐเชตเชพเชจเซ เชฎเชเชเซเชฐเซ เชเชชเซ เชเซ. dnsConfig
. เช
เชจเซเชฏ เชตเชธเซเชคเซเชเชฎเชพเช, เชคเซ เชคเชฎเชจเซ เชฎเซเชฒเซเชฏเชจเซ เชเซเช เชตเชตเชพเชจเซ เชฎเชเชเซเชฐเซ เชเชชเซ เชเซ ndots
เชเซเชเซเชเชธ เชชเซเชก เชฎเชพเชเซ, เชเชเชฒเซ เชเซ.
apiVersion: v1
kind: Pod
metadata:
namespace: default
name: dns-example
spec:
containers:
- name: test
image: nginx
dnsConfig:
options:
- name: ndots
value: "1"
เชธเซเชคเซเชฐเซเชคเซ
DNS เชจเชพเชฎเชจเซ เชฒเชพเชฏเชเชพเชค เชถเซเช เชเซ Kubernetes: เชธเซเชตเชพเช เช เชจเซ เชถเซเชเชเซ เชฎเชพเชเซ DNS
เช เชฎเชพเชฐเชพ เชฌเซเชฒเซเช เชชเชฐ เช เชจเซเชฏ เชฒเซเชเซ เชชเชฃ เชตเชพเชเชเซ:
เชเซเชฒเชพเชเชเชฎเชพเช เชธเชเชฆเชฐเซเชญ เชชเซเชเซเชเชจเซ เชธเชฎเชเชตเซเช เชกเซเชเชฐ เชเชฌเซเชเชจเซ เชธเชเชเซเชเชตเชพเชจเซ เชคเซเชฐเชฃ เชธเชฐเชณ เชฏเซเชเซเชคเชฟเช Kubernetes เชฎเชพเช เชธเซเชเซเชเชซเซเชฒ เชฌเซเชเช เชช เชฎเซเชเซ เชธเชเชเซเชฏเชพเชฎเชพเช เชตเชฟเชเชพเชคเซเชฏ เชตเซเชฌ เชชเซเชฐเซเชเซเชเซเชเซเชธเชจเซ เชฌเซเชเช เชช เชฐเซเชกเชฎเชพเชเชจ เชฎเชพเชเซ เชเซเชฒเชฟเชเซเชฐเชพเชฎ เชฌเซเช. เชคเชฎเชพเชฐเชพ เช เชจเซ เช เชจเซเชฏ เชฒเซเชเซ เชฎเชพเชเซ เชเซเชตเชจ เชเซเชตเซ เชฐเซเชคเซ เชธเชฐเชณ เชฌเชจเชพเชตเชตเซเช
เชธเซเชฐเซเชธ: www.habr.com