使用 CoreDNS sidecar 来优化 Kubernetes Pod dns 性能
生活随笔
收集整理的這篇文章主要介紹了
使用 CoreDNS sidecar 来优化 Kubernetes Pod dns 性能
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
簡介:介紹一種給業務 Pod 添加 dns cache sidecar 來增強 dns 性能的方法。
輸出 log 和 errors 信息到標準輸出。 將 dns 查詢請求轉發到 /etc/resolv.conf 配置的上游 dns 服務器中。 cache 所有請求 30s。(可以調整 cache 時間,配置 prefetch 策略。) 配置 reload ,當該配置文件有變動時,可以自動 reload 并應用新配置。
apiVersion: v1
kind: ConfigMap
data:Corefile: |.:53 {errorslogforward . /etc/resolv.confcache 30reload}
metadata:name: dns-cache
給 pod 配置 sidecar dns-cache。 通過 postStart 機制,調整業務容器的 dns 配置,把 sidecar 地址作為首選項。
apiVersion: extensions/v1beta1
kind: Deployment
metadata:name: ubuntulabels:app: ubuntu
spec:replicas: 1template:metadata:labels:app: ubuntuspec:containers:- name: ubuntuimage: ubuntu:latestcommand: ["sleep", "100000"]lifecycle:postStart:exec:command: ["/bin/sh", "-c", "echo \"$(sed \'1i nameserver 127.0.0.1\' /etc/resolv.conf)\" > /etc/resolv.conf"]- name: dns-cacheimage: registry.cn-hangzhou.aliyuncs.com/acs/coredns:1.6.2args: [ "-conf", "/etc/coredns/Corefile" ]volumeMounts:- mountPath: /etc/corednsname: config-volumereadOnly: truevolumes:- name: config-volumeconfigMap:name: dns-cacheitems:- key: Corefilepath: Corefile
kubernetes 集群內,應用可能會遇到 dns 性能問題。可以在 Pod 內增加 nscd 來增強性能,該方法需要重制鏡像;
下面介紹一種給業務 Pod 添加 dns cache sidecar 來增強 dns 性能的方法,雖然無需重制鏡像,但需要改動應用 YAML 配置。可以根據實際情況選擇合適優化方法。
部署 dns-cache 配置
將下列 dns-cache 的配置部署到應用的命名空間。該配置說明:
給業務 Pod 配置 dns sidecar
原文鏈接:https://developer.aliyun.com/article/780514?
版權聲明:本文內容由阿里云實名注冊用戶自發貢獻,版權歸原作者所有,阿里云開發者社區不擁有其著作權,亦不承擔相應法律責任。具體規則請查看《阿里云開發者社區用戶服務協議》和《阿里云開發者社區知識產權保護指引》。如果您發現本社區中有涉嫌抄襲的內容,填寫侵權投訴表單進行舉報,一經查實,本社區將立刻刪除涉嫌侵權內容。總結
以上是生活随笔為你收集整理的使用 CoreDNS sidecar 来优化 Kubernetes Pod dns 性能的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Android Native crash
- 下一篇: 宜泊科技阿里云,加速智慧停车产业数字化发