4.2. External DNS Operator について
OpenShift Container Platform への外部 DNS プロバイダーからのサービスおよびルートの名前解決を提供するには、External DNS Operator を使用します。この Operator は、外部プロバイダーとクラスターリソースを同期するために、ExternalDNS をデプロイおよび管理します。
4.2.1. External DNS Operator のドメイン名の制限 リンクのコピーリンクがクリップボードにコピーされました!
ExternalDNS リソースをデプロイする際の設定エラーを防ぐため、External DNS Operator によって適用されるドメイン名の制限事項を確認してください。これらの制約を理解することで、要求したホスト名とドメインが、基盤となる DNS プロバイダーと互換性があることが保証されます。
External DNS Operator は、TXT レコードのプレフィックスを追加する TXT レジストリーを使用します。これにより、TXT レコードのドメイン名の最大長が短くなります。DNS レコードは対応する TXT レコードなしでは存在できないため、DNS レコードのドメイン名は TXT レコードと同じ制限に従う必要があります。たとえば、DNS レコードが <domain_name_from_source> の場合、TXT レコードは external-dns-<record_type>-<domain_name_from_source> になります。
External DNS Operator によって生成される DNS レコードのドメイン名には、次の制限があります。
| レコードの種類 | 文字数 |
|---|---|
| CNAME | 44 |
| AzureDNS のワイルドカード CNAME レコード | 42 |
| A | 48 |
| AzureDNS のワイルドカード A レコード | 46 |
生成されたドメイン名がドメイン名の制限事項のいずれかを超えた場合、External DNS Operator のログに次のエラーが表示されます。
time="2022-09-02T08:53:57Z" level=error msg="Failure in zone test.example.io. [Id: /hostedzone/Z06988883Q0H0RL6UMXXX]"
time="2022-09-02T08:53:57Z" level=error msg="InvalidChangeBatch: [FATAL problem: DomainLabelTooLong (Domain label is too long) encountered with 'external-dns-a-hello-openshift-aaaaaaaaaa-bbbbbbbbbb-ccccccc']\n\tstatus code: 400, request id: e54dfd5a-06c6-47b0-bcb9-a4f7c3a4e0c6"