kubenodes

原始碼 首頁

啟用方式
kubenodes:github.com/infobloxopen/kubenodes

kubenodes - 為 Kubernetes 節點建立記錄。

描述

kubenodes 監看 Kubernetes API 並為節點位址合成 A、AAAA 和 PTR 記錄。

此外掛程式需要…

每個伺服器區塊只能使用一次此外掛程式。

語法

kubenodes [ZONES...] {
    external
    ttl TTL
    fallthrough [ZONES...]
}
  • external 將使用節點的外部位址建立記錄。如果省略,kubenodes 將使用節點的內部位址建立記錄。
  • ttl 允許您為回應設定自訂 TTL。預設值為 5 秒。允許的最小 TTL 為 0 秒,最大值限制為 3600 秒。將 TTL 設定為 0 將阻止記錄被快取。所有端點查詢和無頭服務查詢將導致 NXDOMAIN。
  • fallthrough [ZONE…] 如果對此外掛程式具有權威性的區域中記錄的查詢導致 NXDOMAIN,通常回應將是這樣。但是,如果您指定此選項,查詢將會傳遞到外掛程式鏈的下方,其中可能包含另一個外掛程式來處理查詢。如果省略 [ZONE…],則此行為會發生於此外掛程式具有權威性的所有區域。如果列出特定區域 (例如 in-addr.arpaip6.arpa),則只有針對這些區域的查詢才會受到 fallthrough 的影響。

外部外掛程式

若要使用此外掛程式,請將此外掛程式新增至 plugin.cfg 來編譯 CoreDNS。如果 kubenode 使用與 kubernetes 相同的區域或 kubernetes 的超區域,則它應該位於 kubernetes 外掛程式之前。此外掛程式也需要 kubeapi 外掛程式,該外掛程式應新增至 plugin.cfg 的結尾。

就緒

此外掛程式會在從 Kubernetes API 接收到完整的節點清單後,向 ready 外掛程式回報它已就緒。

範例

使用節點的內部位址來回答區域 node.cluster.local. 中的正向和反向查詢。對於不符合任何節點內部 IP 位址的反向查詢,則 fallthrough 到下一個外掛程式。

kubeapi
kubenodes node.cluster.local in-addr.arpa ip6.arpa {
  fallthrough in-addr.arpa ip6.arpa
}

使用節點的外部位址來回答區域 example. 中的正向和反向查詢。對於不符合任何節點外部 IP 位址的反向查詢,則 fallthrough 到下一個外掛程式。

kubeapi
kubenodes example in-addr.arpa ip6.arpa {
  external
  fallthrough in-addr.arpa ip6.arpa
}