kubenodes

ソース ホームページ

使用可能に
kubenodes:github.com/infobloxopen/kubenodes

kubenodes - Kubernetesノードのレコードを作成します。

説明

kubenodes はKubernetes APIを監視し、ノードアドレスに対してA、AAAA、PTRのレコードを合成します。

このプラグインを使用するには…

  • Kubernetes APIとの接続を作成するには、kubeapiプラグインが必要です。(http://github.com/coredns/kubeapi
  • ノードAPIに対するリスト/監視の権限が必要です。

このプラグインは、サーバーブロックあたり1回のみ使用できます。

構文

kubenodes [ZONES...] {
    external
    ttl TTL
    fallthrough [ZONES...]
}
  • external はノードの外部アドレスを使用してレコードを構築します。省略すると、kubenodes はノードの内部アドレスを使用してレコードを構築します。
  • ttl により、応答に対してカスタムTTLを設定できます。既定では5秒です。許可される最小TTLは0秒で、最大は3600秒です。TTLを0に設定すると、レコードはキャッシュされません。エンドポイントのクエリとヘッドレスサービスのクエリはすべてNXDOMAINになります。
  • fallthrough [ZONES…] プラグインが権威のあるゾーンに対するレコードのクエリがNXDOMAINとなった場合、通常はそれが応答になります。ただし、このオプションを指定すると、クエリは代わりにプラグインチェーンに渡され、クエリを処理する別のプラグインを含めることができます。[ZONES…] が省略された場合、fallthroughはプラグインが権威のあるすべてのゾーンに対して行われます。特定のゾーンがリストされている場合(例:in-addr.arpaip6.arpa)、それらのゾーンに対するクエリのみがフォールスルーの対象となります。

外部プラグイン

このプラグインを使用するには、plugin.cfg に追加されたこのプラグインを使用してCoreDNSをコンパイルします。kubernetes と同じゾーンまたはsuperzoneを使用している場合は、kubernetesプラグインの前に配置する必要があります。このプラグインにはkubeapiプラグインも必要です。これはplugin.cfgの末尾に追加する必要があります。

準備完了

このプラグインは、Kubernetes APIからノードの完全なリストを受信したら、readyプラグインに対して準備完了であることを報告します。

ゾーン node.cluster.local. 内の正引きと逆引き検索に応答するために、ノードの内部アドレスを使用します。ノードの内部IPアドレスのいずれにも一致しない逆引き検索の場合、次のプラグインにフォールスルーします。

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

ゾーン example. 内の正引きと逆引き検索に応答するために、ノードの外部アドレスを使用します。ノードの外部IPアドレスのいずれにも一致しない逆引き検索の場合、次のプラグインにフォールスルーします。

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