描述
Kubernetai (koo-ber-NET-eye) 是 Kubernetes 的複數形式。簡而言之,Kubernetai 是 CoreDNS 的一個外部外掛程式,它持有多個 kubernetes 外掛程式的設定。它允許一個 CoreDNS 伺服器同時連線到多個 Kubernetes 伺服器。
使用 kubernetai,您可以在您的 Corefile 中定義多個 kubernetes 區塊。所有選項與內建的 kubernetes 外掛程式完全相同,您只需將它們命名為 kubernetai
而不是 kubernetes
。
語法
與 kubernetes 相同。
範例
例如,以下 Corefile 將連線到三個不同的 Kubernetes 叢集。
. {
errors
log
kubernetai cluster.local {
endpoint http://192.168.99.100
}
kubernetai assemblage.local {
endpoint http://192.168.99.101
}
kubernetai conglomeration.local {
endpoint http://192.168.99.102
}
}
fallthrough
Fallthrough 在 kubernetai 中會依序落到下一個 kubernetai stanza (依照它們在 Corefile 中的順序),或者下一個外掛程式(如果它是最後一個 kubernetai stanza)。
這是一個 Corefile 範例,它建立了到單個 minikube 實例的兩個連線。因為兩個伺服器實際上是同一個伺服器,它們都具有相同的區域,這表示對 cluster.local
的查詢將始終首先由第一個 stanza 處理。第一個 stanza 中的 fallthrough 允許在找不到服務時將處理轉到下一個 stanza。
. {
errors
log
kubernetai cluster.local {
endpoint http://192.168.99.100:8080
namespaces default
fallthrough
}
kubernetai cluster.local {
endpoint http://192.168.99.100:8080
}
}
第一個 kubernetai stanza 只公開 default
命名空間。當我們查詢 default
命名空間中的服務時,第一個 stanza 中的 kubernetes 實例會回應。當我們查詢任何其他命名空間中的服務時,第一個 stanza 會落到第二個 stanza,而第二個連線會回應。