Migrate to the new DNS client
このガイドでは、古いDNSクライアントから新しいクライアントへの移行について説明します。 新しい DNS クライアントは、サービスを構成する新しい標準化された方法を導入し、パフォーマンスの向上に役立ちます。
DNS クライアント設定を移行
レコードの種類
新しい DNS クライアントでは、異なるレコードタイプのサポートにいくつかの変更が導入されました。 問題を回避するには、移行前にSRVレコードの設定が新しいクライアントと互換性があることを確認してください。
SRV
SRV はデフォルトで resolver_family ディレクティブに含まれていますが、 クライアントはドメイン名が RFC 2782 の書式 (_
新しいDNSクライアントでSRVサポートを有効にする前に ドメイン名がサポートされている形式でDNSサービスプロバイダに登録されていることを確認してください。 この標準形式は古いDNSでも動作します。 SRV形式を変更すると、それは古いクライアントと引き続き動作します。移行中にダウンタイムはありません。
CNAME
新しい DNS クライアントでは、CNAME 逆参照は必要ありません。 このタスクは、業界標準と同様に、完全に DNS サーバーによって処理されます。
新しい DNS クライアントは、ドメインをクエリする際にレコードタイプの順序を考慮しません。 IPアドレス(AおよびAAAAレコード)またはSRVレコードのいずれかをクエリしますが、両方はクエリしません。
Custom directives
DNS RESOLVER の下にディレクティブのカスタム値がある場合。 onfでは、New DNS RESOLVER`の下の対応するディレクティブにこれらの値を手動で追加する必要があります。
Old DNS resolver directive | New DNS resolver directive | Comment |
---|---|---|
dns_resolver |
resolver_address |
Same behavior |
dns_hostsfile |
resolver_hostsfile |
Same behavior |
dns_order |
resolver_family |
新しいディレクティブはサポートされているクエリタイプを定義するためにのみ使用されます。特定の順序はありません。 |
dns_valid_ttl |
resolver_valid_ttl |
Same behavior |
dns_stale_ttl |
resolver_stale_ttl |
Same behavior |
dns_not_found_ttl and dns_error_ttl
|
resolver_error_ttl |
この二つのディレクティブは、新しいクライアントでは一つのディレクティブにまとめられます。 |
dns_cache_size |
resolver_lru_cache_size and resolver_mem_cache_size
|
古いディレクティブは二つの新しいディレクティブに分割されます: resolver_lru_cache_size はL1 LRUルーVMキャッシュのサイズを指定するために使用されます。 L2共有メモリキャッシュのサイズをresolver_mem_cache_sizeに指定します。 |
dns_no_sync |
N/A | このディレクティブはもう存在しません; リクエストは常に新しいクライアントで同期されます。 |
新しい DNS クライアントを有効にする
新しい DNS クライアントは、デフォルトで無効になっています。
-
/etc/kong/kong.conf
ファイル中のnew_dns_client
ディレクティブのコメントを外します。 - 値を
on
に設定します。