web-dev-qa-db-ja.com

変更後、Kubernetes CoreDNSに構成マップを強制的に再読み込みさせるにはどうすればよいですか?

Kubernetes 1.11を実行していて、まずローカルネームサーバーをチェックするようにKubernetesクラスターを構成しようとしています。 CoreDNSをカスタマイズするためのKubernetesサイトの説明を読み、ダッシュボードを使用してCoreDNSのシステムConfigMapを編集しました。結果のコアファイル値は次のとおりです。

.:53 {
    errors
    health
    kubernetes cluster.local in-addr.arpa ip6.arpa {
       pods insecure
       upstream    192.168.1.3 209.18.47.61
       fallthrough in-addr.arpa ip6.arpa
    }
    prometheus :9153
    proxy . /etc/resolv.conf
    cache 30
    reload
}

ローカルアドレスを最初のアップストリームネームサーバーとして表示できます。私の問題は、これが影響を与えていないようだということです。 pingとnslookupで実行しているコンテナがありますが、どちらもローカルネームサーバーの名前を解決しません。

当面は、ネームサーバーの構成を必要とするいくつかのポッド仕様でネームサーバー構成を指定することで問題を回避しましたが、この回避策は好きではありません。

変更されたConfigMapに基づいてCoreDNSを強制的に更新するにはどうすればよいですか? kube-system名前空間でのデプロイメントであることがわかりますが、それをリロードしたり、変更された構成に応答したりする方法に関するドキュメントは見つかりませんでした。

4
E. Wittle

コマンドラインで編集できます:

kubectl edit cm coredns -n kube-system

保存して終了すると、リロードされます。

それがリロードしない場合は、Emruz Hossainがcorednsを削除するようにアドバイスしたように:

kubectl get pods -n kube-system -oname |grep coredns |xargs kubectl delete -n kube-system

6
Crou