kubernetai

ソース ホーム

CoreDNS によって管理されています

許可する
kubernetai:github.com/coredns/kubernetai

kubernetai - サーバー内で複数の Kubernetes を提供します。

説明

Kubernetai (クベーネタイ) は、Kubernetes の複数形です。一言で言えば、Kubernetai は、複数の kubernetes プラグイン構成を保持する CoreDNS 用の外部プラグインです。CoreDNS サーバー 1 台で、一度に複数の Kubernetes サーバーに同時に接続できます。

kubernetai を使用すると、複数の kubernetes ブロックを Corefile に定義できます。すべてのオプションは組み込みの kubernetes プラグインとまったく同じですが、kubernetai という名前を kubernetes ではなく使用します。

構文

kubernetes と同じです。

たとえば、次の Corefile は、3 つの異なる 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

kubernetaiFallthrough は、次の kubernetai スタンザ (Corefile 内の順番) か、次のプラグイン (最後の kubernetai スタンザの場合) にフォールスルーします。

次に、単一の minikube インスタンスに 2 回接続する Corefile の例を示します。2 台のサーバーはどちらも実際には同じサーバーなので、同じゾーンを持ちます。つまり、cluster.local のクエリは常に最初のスタンザで最初に処理されます。最初のスタンザの fallthrough により、サービスが見つからない場合は、処理が次のスタンザに進むことができます。

. {
    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 スタンザは、default ネームスペースのみを公開します。default ネームスペースのサービスをクエリすると、最初のスタンザの kubernetes インスタンスが応答します。他のネームスペースのサービスをクエリすると、最初のスタンザは 2 番目のスタンザにフォールスルーし、2 回目の接続が応答します。