このプロジェクトについて
ExternalDNSは、公開されたKubernetes ServiceやIngressを外部DNSプロバイダーと同期するオープンソースのKubernetesコントローラーです。Kubernetesの内部DNS(KubeDNS)に触発されており、Kubernetes APIからリソースを取得して必要なDNSレコードを決定しますが、KubeDNSとは異なり、それ自体がDNSサーバーとして動作するわけではありません。代わりに、AWS Route 53、Google Cloud DNS、Cloudflare、Azure DNSなど多くの外部DNSプロバイダーを設定します。
主な機能は以下の通りです:
- プロバイダーに依存しないDNS管理:多数のインツリープロバイダー(AWS Route 53、Google Cloud DNS、Cloudflare、Azure DNS、Alibaba Cloud DNS、Oracle Cloud、OVHcloud、Scaleway、PowerDNS、CoreDNSなど)をサポートし、コアコードベースを変更せずに新しいプロバイダーを追加するためのWebhookシステムを提供します。
- 複数のリソースソース:Kubernetes Service、Ingress、Gateway API Route、Istio Gateway、Contour HTTPProxy、F5 VirtualServer、Ambassador Host、DNSEndpoint CRDなどから読み取ります。
- 安全な管理:TXTレコードと設定可能なオーナーIDを使用して、自分が管理するレコードを追跡し、空でないホストゾーンでの安全な運用を可能にします。変更をプレビューするためのdry-runモードもサポートしています。
- 柔軟な設定:ドメインフィルタリング、TTLカスタマイズ、内部ホスト名、外部IP、およびさまざまなポリシー(sync、upsert-only)をサポートします。
- デプロイメントの柔軟性:クラスタ内でコントローラーとして実行したり、テストのためにローカルで実行したりできます。
このプロジェクトはKubernetes SIGsエコシステムの一部であり、コミュニティによって維持されています。新しいプロバイダーはインツリーではなくWebhookシステムを通じて追加され、コアプロジェクトのメンテナンス負担を軽減しています。
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.