NetScaler Ingress Controller を使用して DNS レコードを追加する
DNSアドレスレコードは、ドメイン名をIPアドレスにマッピングしたものです。 NetScalerをDNSリゾルバーとして使用したい場合、NetScaler Ingress Controllerを使用してNetScalerにDNSレコードを追加できます。
NetScalerでのDNSレコードの作成に関する詳細については、NetScalerドキュメントを参照してください。
IngressリソースのDNSレコードを追加する
IngressリソースのDNSレコードを追加するには、NetScaler Ingress Controllerのデプロイ中に以下の環境変数を有効にする必要があります。
NS_CONFIG_DNS_REC: この変数は起動時に設定され、実行時に変更することはできません。可能な値はtrueまたはfalseです。デフォルト値はfalseであり、DNSサーバー設定を有効にするにはtrueに設定する必要があります。値をtrueに設定すると、NetScaler上にアドレスレコードが作成されます。
LoadBalancerタイプのサービスのDNSレコードを追加する
LoadBalancerタイプのサービスのDNSレコードを追加するには、以下のタスクを実行する必要があります。
-
LoadBalancerタイプのサービスのDNSレコードを追加するには、
NS_SVC_LB_DNS_REC環境変数の値をTrueに設定して有効にします。 -
service.citrix.com/dns-hostnameアノテーションを使用してDNSホスト名を指定します。
service.citrix.com/dns-hostnameアノテーションを持つLoadBalancerタイプのサービスを作成すると、NetScaler Ingress ControllerはNetScalerにDNSレコードを追加します。DNSレコードは、アノテーションで指定されたドメイン名と、サービスに割り当てられた外部IPアドレスを使用して構成されます。
service.citrix.com/dns-hostnameアノテーションを持つLoadBalancerタイプのサービスを削除すると、NetScaler Ingress ControllerはNetScalerからDNSレコードを削除します。 NetScaler Ingress Controllerは、サービスが利用できない場合、起動時にDNSレコードの古いエントリも削除します。
以下の例は、NetScalerにDNSレコードを追加するためのアノテーション設定を持つLoadBalancerタイプのサービスサンプルを示しています。
apiVersion: v1
kind: Service
metadata:
name: guestbook
annotations:
service.citrix.com/dns-hostname: "guestbook.com"
spec:
loadBalancerIP: "192.2.212.16"
type: LoadBalancer
ports:
- port: 9006
targetPort: 80
protocol: TCP
selector:
app: guestbook