Chapitre 2. Opérateurs de réseautage


2.1. L’opérateur DNS dans OpenShift dédié

Dans OpenShift Dedicated, l’opérateur DNS déploie et gère une instance CoreDNS pour fournir un service de résolution de noms aux pods à l’intérieur du cluster, permet la découverte de Kubernetes Service basé sur DNS et résout les noms internes cluster.local.

2.1.1. Contrôle de l’état de l’opérateur DNS

L’opérateur DNS implémente l’API dns du groupe d’API operator.openshift.io. L’opérateur déploie CoreDNS à l’aide d’un jeu de démons, crée un service pour l’ensemble de démons et configure le kubelet pour demander aux pods d’utiliser l’adresse IP du service CoreDNS pour la résolution de nom.

Procédure

L’opérateur DNS est déployé lors de l’installation avec un objet de déploiement.

  1. La commande oc get permet d’afficher l’état du déploiement:

    $ oc get -n openshift-dns-operator deployment/dns-operator
    Copy to Clipboard Toggle word wrap

    Exemple de sortie

    NAME           READY     UP-TO-DATE   AVAILABLE   AGE
    dns-operator   1/1       1            1           23h
    Copy to Clipboard Toggle word wrap

  2. La commande oc get permet d’afficher l’état de l’opérateur DNS:

    $ oc get clusteroperator/dns
    Copy to Clipboard Toggle word wrap

    Exemple de sortie

    NAME      VERSION     AVAILABLE   PROGRESSING   DEGRADED   SINCE   MESSAGE
    dns       4.1.15-0.11  True        False         False      92m
    Copy to Clipboard Toggle word wrap

    AVAILABLE, PROGRESSING et DEGRADED fournissent des informations sur le statut de l’Opérateur. AVAILABLE est vrai quand au moins 1 pod du jeu de démon CoreDNS signale une condition d’état disponible, et le service DNS a une adresse IP en cluster.

2.1.2. Afficher le DNS par défaut

Chaque nouvelle installation OpenShift Dedicated a un dns.operator nommé par défaut.

Procédure

  1. La commande oc described permet d’afficher les dns par défaut:

    $ oc describe dns.operator/default
    Copy to Clipboard Toggle word wrap

    Exemple de sortie

    Name:         default
    Namespace:
    Labels:       <none>
    Annotations:  <none>
    API Version:  operator.openshift.io/v1
    Kind:         DNS
    ...
    Status:
      Cluster Domain:  cluster.local 
    1
    
      Cluster IP:      172.30.0.10 
    2
    
    ...
    Copy to Clipboard Toggle word wrap

    1
    Le champ Domaine Cluster est le domaine DNS de base utilisé pour construire des noms de domaine entièrement qualifiés et de service.
    2
    Le cluster IP est la requête pods d’adresse pour la résolution de nom. L’IP est définie comme la 10ème adresse dans la gamme de service CIDR.

2.1.3. En utilisant le transfert DNS

Le transfert DNS vous permet de remplacer la configuration de transfert par défaut dans le fichier /etc/resolv.conf de la manière suivante:

  • Indiquez les serveurs de noms (spec.servers) pour chaque zone. Lorsque la zone transférée est le domaine d’entrée géré par OpenShift Dedicated, le serveur de noms en amont doit être autorisé pour le domaine.

    Important

    Il faut spécifier au moins une zone. Dans le cas contraire, votre cluster peut perdre des fonctionnalités.

  • Fournir une liste de serveurs DNS en amont (spec.upstreamResolvers).
  • Changez la stratégie de transfert par défaut.
Note

La configuration de transfert DNS pour le domaine par défaut peut avoir à la fois les serveurs par défaut spécifiés dans le fichier /etc/resolv.conf et les serveurs DNS en amont.

Procédure

  1. La modification de l’objet DNS Operator nommé par défaut:

    $ oc edit dns.operator/default
    Copy to Clipboard Toggle word wrap

    Après avoir émis la commande précédente, l’opérateur crée et met à jour la carte de configuration nommée dns-default avec des blocs de configuration de serveur supplémentaires basés sur spec.servers.

    Important

    Lorsque vous spécifiez des valeurs pour le paramètre zones, assurez-vous que vous ne transmettez que des zones spécifiques, telles que votre intranet. Il faut spécifier au moins une zone. Dans le cas contraire, votre cluster peut perdre des fonctionnalités.

    Dans le cas où aucun des serveurs n’a une zone correspondant à la requête, la résolution de nom revient aux serveurs DNS en amont.

    Configuration du transfert DNS

    apiVersion: operator.openshift.io/v1
    kind: DNS
    metadata:
      name: default
    spec:
      cache:
        negativeTTL: 0s
        positiveTTL: 0s
      logLevel: Normal
      nodePlacement: {}
      operatorLogLevel: Normal
      servers:
      - name: example-server 
    1
    
        zones:
        - example.com 
    2
    
        forwardPlugin:
          policy: Random 
    3
    
          upstreams: 
    4
    
          - 1.1.1.1
          - 2.2.2.2:5353
      upstreamResolvers: 
    5
    
        policy: Random 
    6
    
        protocolStrategy: ""  
    7
    
        transportConfig: {}  
    8
    
        upstreams:
        - type: SystemResolvConf 
    9
    
        - type: Network
          address: 1.2.3.4 
    10
    
          port: 53 
    11
    
        status:
          clusterDomain: cluster.local
          clusterIP: x.y.z.10
          conditions:
       ...
    Copy to Clipboard Toggle word wrap

    1
    Doit se conformer à la syntaxe du nom de service rfc6335.
    2
    Doit être conforme à la définition d’un sous-domaine dans la syntaxe du nom de service rfc1123. Le domaine cluster, cluster.local, est un sous-domaine invalide pour le champ zones.
    3
    Définit la stratégie pour sélectionner les résolveurs en amont listés dans le forwardPlugin. La valeur par défaut est aléatoire. Il est également possible d’utiliser les valeurs RoundRobin et Sequential.
    4
    Au maximum 15 amonts sont permis par forwardPlugin.
    5
    Il est possible d’utiliser upstreamResolvers pour remplacer la stratégie de transfert par défaut et transférer la résolution DNS vers les résolveurs DNS spécifiés (résolutionurs en amont) pour le domaine par défaut. Dans le cas où vous ne fournissez pas de résolveurs en amont, les requêtes de nom DNS vont aux serveurs déclarés dans /etc/resolv.conf.
    6
    Détermine l’ordre dans lequel les serveurs en amont listés en amont sont sélectionnés pour la requête. Il est possible de spécifier l’une de ces valeurs : aléatoire, RoundRobin ou séquentiel. La valeur par défaut est séquentielle.
    7
    Lorsqu’elle est omise, la plate-forme choisit un défaut, normalement le protocole de la demande du client d’origine. Définissez sur TCP pour spécifier que la plate-forme doit utiliser TCP pour toutes les requêtes DNS en amont, même si la demande client utilise UDP.
    8
    Il est utilisé pour configurer le type de transport, le nom du serveur et le paquet CA personnalisé optionnel à utiliser lors du transfert de requêtes DNS à un résolveur en amont.
    9
    Il est possible de spécifier deux types d’amont : SystemResolvConf ou Network. Le SystemResolvConf configure l’amont pour utiliser /etc/resolv.conf et Network définit un Networkresolver. Il est possible d’en spécifier un ou les deux.
    10
    Dans le cas où le type spécifié est Network, vous devez fournir une adresse IP. Le champ d’adresse doit être une adresse IPv4 ou IPv6 valide.
    11
    Dans le cas où le type spécifié est Network, vous pouvez éventuellement fournir un port. Le champ port doit avoir une valeur comprise entre 1 et 65535. Dans le cas où vous ne spécifiez pas un port pour l’amont, le port par défaut est 853.

2.1.4. Contrôle de l’état de l’opérateur DNS

Il est possible d’inspecter l’état et d’afficher les détails de l’opérateur DNS à l’aide de la commande oc described.

Procédure

  • Afficher l’état de l’opérateur DNS:

    $ oc describe clusteroperators/dns
    Copy to Clipboard Toggle word wrap

    Bien que les messages et l’orthographe puissent varier dans une version spécifique, la sortie d’état attendue ressemble à:

    Status:
      Conditions:
        Last Transition Time:  <date>
        Message:               DNS "default" is available.
        Reason:                AsExpected
        Status:                True
        Type:                  Available
        Last Transition Time:  <date>
        Message:               Desired and current number of DNSes are equal
        Reason:                AsExpected
        Status:                False
        Type:                  Progressing
        Last Transition Time:  <date>
        Reason:                DNSNotDegraded
        Status:                False
        Type:                  Degraded
        Last Transition Time:  <date>
        Message:               DNS default is upgradeable: DNS Operator can be upgraded
        Reason:                DNSUpgradeable
        Status:                True
        Type:                  Upgradeable
    Copy to Clipboard Toggle word wrap

2.1.5. Affichage des journaux de l’opérateur DNS

En utilisant la commande oc logs, vous pouvez afficher les journaux DNS Operator.

Procédure

  • Consultez les journaux de l’opérateur DNS:

    $ oc logs -n openshift-dns-operator deployment/dns-operator -c dns-operator
    Copy to Clipboard Toggle word wrap

2.1.6. Définition du niveau de journal CoreDNS

Les niveaux de log pour CoreDNS et l’opérateur CoreDNS sont définis en utilisant différentes méthodes. Il est possible de configurer le niveau de journal CoreDNS pour déterminer la quantité de détails dans les messages d’erreur enregistrés. Les valeurs valides pour le niveau de journal CoreDNS sont Normal, Debug et Trace. Le logLevel par défaut est normal.

Note

Le niveau de journal des erreurs CoreDNS est toujours activé. Les paramètres de niveau de journal suivants rapportent différentes réponses d’erreur:

  • LogLevel: Normal active la classe "erreurs": log . { erreur de classe }.
  • LogLevel: Debug active la classe "denial": log . { erreur de déni de classe }.
  • LogLevel: Trace permet la classe "all": log . {classe tout }.

Procédure

  • Afin de définir logLevel sur Debug, entrez la commande suivante:

    $ oc patch dnses.operator.openshift.io/default -p '{"spec":{"logLevel":"Debug"}}' --type=merge
    Copy to Clipboard Toggle word wrap
  • Afin de définir logLevel sur Trace, entrez la commande suivante:

    $ oc patch dnses.operator.openshift.io/default -p '{"spec":{"logLevel":"Trace"}}' --type=merge
    Copy to Clipboard Toggle word wrap

La vérification

  • Afin de s’assurer que le niveau de journal souhaité a été défini, vérifiez la carte de configuration:

    $ oc get configmap/dns-default -n openshift-dns -o yaml
    Copy to Clipboard Toggle word wrap

    À titre d’exemple, après avoir configuré le logLevel sur Trace, vous devriez voir cette strophe dans chaque bloc de serveur:

    errors
    log . {
        class all
    }
    Copy to Clipboard Toggle word wrap

Les niveaux de log pour CoreDNS et CoreDNS Operator sont définis en utilisant différentes méthodes. Les administrateurs de clusters peuvent configurer le niveau de journal de l’opérateur pour suivre plus rapidement les problèmes DNS OpenShift. Les valeurs valides pour operatorLogLevel sont Normal, Debug et Trace. La trace a les informations les plus détaillées. L’opérateurloglogLevel par défaut est normal. Il y a sept niveaux de journalisation pour les problèmes d’opérateur: Trace, Debug, Info, Avertissement, Erreur, Fatal et Panic. Après que le niveau de journalisation est défini, les entrées de journal avec cette sévérité ou quoi que ce soit au-dessus, il sera enregistré.

  • OperatorLogLevel: "Normal" set logrus.SetLogLevel("Info").
  • OperatorLogLevel: "Debug" définit logrus.SetLogLevel("Debug").
  • OperatorLogLevel: "Trace" définit logrus.SetLogLevel("Trace").

Procédure

  • Afin de définir operatorLogLevel sur Debug, entrez la commande suivante:

    $ oc patch dnses.operator.openshift.io/default -p '{"spec":{"operatorLogLevel":"Debug"}}' --type=merge
    Copy to Clipboard Toggle word wrap
  • Afin de définir operatorLogLevel sur Trace, entrez la commande suivante:

    $ oc patch dnses.operator.openshift.io/default -p '{"spec":{"operatorLogLevel":"Trace"}}' --type=merge
    Copy to Clipboard Toggle word wrap

La vérification

  1. Afin d’examiner le changement qui en résulte, entrez la commande suivante:

    $ oc get dnses.operator -A -oyaml
    Copy to Clipboard Toggle word wrap

    Il faut voir deux entrées de niveau de journal. L’opérateur operatorLogLevel s’applique aux problèmes d’opérateur DNS OpenShift, et le logLevel s’applique au daemonset des pods CoreDNS:

     logLevel: Trace
     operatorLogLevel: Debug
    Copy to Clipboard Toggle word wrap
  2. Afin d’examiner les journaux du daemonset, entrez la commande suivante:

    $ oc logs -n openshift-dns ds/dns-default
    Copy to Clipboard Toggle word wrap

2.1.8. Réglage du cache CoreDNS

Dans le cas de CoreDNS, vous pouvez configurer la durée maximale de mise en cache réussie ou infructueuse, également connue respectivement sous le nom de mise en cache positive ou négative. Le réglage de la durée du cache des réponses de requête DNS peut réduire la charge pour tous les résolveurs DNS en amont.

Avertissement

La définition des champs TTL à des valeurs basses pourrait entraîner une charge accrue sur le cluster, tous les résolveurs en amont, ou les deux.

Procédure

  1. Éditez l’objet DNS Operator nommé par défaut en exécutant la commande suivante:

    $ oc edit dns.operator.openshift.io/default
    Copy to Clipboard Toggle word wrap
  2. De modifier les valeurs de mise en cache en temps-à-vie (TTL):

    Configuration de la mise en cache DNS

    apiVersion: operator.openshift.io/v1
    kind: DNS
    metadata:
      name: default
    spec:
      cache:
        positiveTTL: 1h 
    1
    
        negativeTTL: 0.5h10m 
    2
    Copy to Clipboard Toggle word wrap

    1
    La valeur de la chaîne 1h est convertie en son nombre respectif de secondes par CoreDNS. En cas d’omission de ce champ, la valeur est supposée être 0s et le cluster utilise la valeur par défaut interne de 900s comme repli.
    2
    La valeur de la chaîne peut être une combinaison d’unités telles que 0.5h10m et est convertie en son nombre respectif de secondes par CoreDNS. En cas d’omission de ce champ, la valeur est supposée être 0s et le cluster utilise la valeur par défaut interne de 30s comme un repli.

La vérification

  1. Afin d’examiner la modification, regardez à nouveau la carte de configuration en exécutant la commande suivante:

    oc get configmap/dns-default -n openshift-dns -o yaml
    Copy to Clipboard Toggle word wrap
  2. Assurez-vous que vous voyez des entrées qui ressemblent à l’exemple suivant:

           cache 3600 {
                denial 9984 2400
            }
    Copy to Clipboard Toggle word wrap

2.1.9. Des tâches avancées

2.1.9.1. Changer l’état de gestion de l’opérateur DNS

L’opérateur DNS gère le composant CoreDNS pour fournir un service de résolution de noms pour les pods et les services dans le cluster. L’état de gestion de l’opérateur DNS est défini sur Gestion par défaut, ce qui signifie que l’opérateur DNS gère activement ses ressources. Il est possible de le changer en Ungaged, ce qui signifie que l’opérateur DNS ne gère pas ses ressources.

Les cas suivants sont des cas d’utilisation pour changer l’état de gestion de l’opérateur DNS:

  • Il s’agit d’un développeur et vous souhaitez tester une modification de configuration pour voir s’il corrige un problème dans CoreDNS. Il est possible d’empêcher l’opérateur DNS d’écraser la modification de configuration en définissant l’état de gestion sur Ungaged.
  • Il s’agit d’un administrateur de cluster et vous avez signalé un problème avec CoreDNS, mais vous devez appliquer une solution de contournement jusqu’à ce que le problème soit résolu. Le champ État de gestion de l’opérateur DNS peut être défini sur Ungaged pour appliquer la solution de contournement.

Procédure

  1. Change managementState to Ungaged dans l’opérateur DNS:

    oc patch dns.operator.openshift.io default --type merge --patch '{"spec":{"managementState":"Unmanaged"}}'
    Copy to Clipboard Toggle word wrap
  2. État de l’opérateur DNS utilisant la ligne de commande jsonpath JSON parser:

    $ oc get dns.operator.openshift.io default -ojsonpath='{.spec.managementState}'
    Copy to Clipboard Toggle word wrap

    Exemple de sortie

    "Unmanaged"
    Copy to Clipboard Toggle word wrap

Note

Il n’est pas possible de mettre à niveau l’état de gestion sur Ungaged.

2.1.9.2. Contrôle du positionnement des pod DNS

L’opérateur DNS a deux ensembles de démons: un pour CoreDNS appelé dns-default et un pour la gestion du fichier /etc/hosts appelé node-resolver.

Les pods CoreDNS peuvent être attribués et exécutés sur des nœuds spécifiés. Ainsi, si l’administrateur du cluster a configuré des stratégies de sécurité qui interdisent la communication entre paires de nœuds, vous pouvez configurer des pods CoreDNS pour s’exécuter sur un ensemble restreint de nœuds.

Le service DNS est disponible pour tous les pods si les circonstances suivantes sont vraies:

  • Les gousses DNS s’exécutent sur certains nœuds dans le cluster.
  • Les nœuds sur lesquels les pods DNS ne s’exécutent pas ont une connectivité réseau aux nœuds sur lesquels les pod DNS s’exécutent,

Le jeu de démons de résolution de nœuds doit s’exécuter sur chaque hôte de nœuds, car il ajoute une entrée pour le registre d’images de cluster pour prendre en charge les images en tirant. Les pods node-resolver n’ont qu’un seul travail : rechercher l’adresse IP du cluster du service image-registry.openshift-image-registry.svc et l’ajouter à /etc/hosts sur l’hôte du nœud afin que le temps d’exécution du conteneur puisse résoudre le nom du service.

En tant qu’administrateur de cluster, vous pouvez utiliser un sélecteur de nœuds personnalisé pour configurer le jeu de démon pour que CoreDNS s’exécute ou ne s’exécute pas sur certains nœuds.

Conditions préalables

  • C’est toi qui as installé le CLI.
  • En tant qu’utilisateur, vous êtes connecté au cluster avec des privilèges cluster-admin.
  • L’état de gestion de votre opérateur DNS est configuré sur Managed.

Procédure

  • Afin de permettre au jeu de démon pour CoreDNS de s’exécuter sur certains nœuds, configurez une tainte et une tolérance:

    1. Définissez une tainte sur les nœuds que vous souhaitez contrôler le placement des pod DNS en entrant la commande suivante:

      $ oc adm taint nodes <node_name> dns-only=abc:NoExecute 
      1
      Copy to Clipboard Toggle word wrap
      1
      &lt;node_name&gt; par le nom réel du nœud.
    2. De modifier l’objet DNS Operator nommé par défaut pour inclure la tolérance correspondante en entrant la commande suivante:

      $ oc edit dns.operator/default
      Copy to Clipboard Toggle word wrap
    3. Indiquez une touche tainte et une tolérance pour la tainte. La tolérance suivante correspond à la tainte définie sur les nœuds.

       spec:
         nodePlacement:
           tolerations:
           - effect: NoExecute
             key: "dns-only" 
      1
      
             operator: Equal
             value: abc
             tolerationSeconds: 3600 
      2
      Copy to Clipboard Toggle word wrap
      1
      Lorsque le champ clé est réglé sur dns-seulement, il peut être toléré indéfiniment.
      2
      Le champ de toléranceSeconds est facultatif.
    4. Facultatif: Pour spécifier le placement des nœuds à l’aide d’un sélecteur de nœuds, modifiez l’opérateur DNS par défaut:

      1. Éditer l’objet DNS Operator nommé par défaut pour inclure un sélecteur de nœuds:

         spec:
           nodePlacement:
             nodeSelector:    
        1
        
               node-role.kubernetes.io/control-plane: ""
        Copy to Clipboard Toggle word wrap
        1
        Ce sélecteur de nœuds garantit que les gousses CoreDNS s’exécutent uniquement sur les nœuds de plan de contrôle.

2.1.9.3. Configuration du transfert DNS avec TLS

Lorsque vous travaillez dans un environnement hautement réglementé, vous pourriez avoir besoin de la possibilité de sécuriser le trafic DNS lorsque vous transmettez des demandes à des résolveurs en amont afin que vous puissiez assurer un trafic DNS supplémentaire et la confidentialité des données.

Gardez à l’esprit que CoreDNS met en cache les connexions transférées pendant 10 secondes. CoreDNS tiendra une connexion TCP ouverte pendant ces 10 secondes si aucune demande n’est émise. Avec de grands clusters, assurez-vous que votre serveur DNS est conscient qu’il pourrait obtenir de nombreuses nouvelles connexions à tenir ouvert parce que vous pouvez lancer une connexion par nœud. Configurez votre hiérarchie DNS en conséquence pour éviter les problèmes de performance.

Important

Lorsque vous spécifiez des valeurs pour le paramètre zones, assurez-vous que vous ne transmettez que des zones spécifiques, telles que votre intranet. Il faut spécifier au moins une zone. Dans le cas contraire, votre cluster peut perdre des fonctionnalités.

Procédure

  1. La modification de l’objet DNS Operator nommé par défaut:

    $ oc edit dns.operator/default
    Copy to Clipboard Toggle word wrap

    Les administrateurs de clusters peuvent configurer la sécurité des couches de transport (TLS) pour les requêtes DNS transmises.

    Configuration du transfert DNS avec TLS

    apiVersion: operator.openshift.io/v1
    kind: DNS
    metadata:
      name: default
    spec:
      servers:
      - name: example-server 
    1
    
        zones:
        - example.com 
    2
    
        forwardPlugin:
          transportConfig:
            transport: TLS 
    3
    
            tls:
              caBundle:
                name: mycacert
              serverName: dnstls.example.com  
    4
    
          policy: Random 
    5
    
          upstreams: 
    6
    
          - 1.1.1.1
          - 2.2.2.2:5353
      upstreamResolvers: 
    7
    
        transportConfig:
          transport: TLS
          tls:
            caBundle:
              name: mycacert
            serverName: dnstls.example.com
        upstreams:
        - type: Network 
    8
    
          address: 1.2.3.4 
    9
    
          port: 53 
    10
    Copy to Clipboard Toggle word wrap

    1
    Doit se conformer à la syntaxe du nom de service rfc6335.
    2
    Doit être conforme à la définition d’un sous-domaine dans la syntaxe du nom de service rfc1123. Le domaine cluster, cluster.local, est un sous-domaine invalide pour le champ zones. Le domaine cluster, cluster.local, est un sous-domaine invalide pour les zones.
    3
    Lorsque vous configurez TLS pour les requêtes DNS transmises, définissez le champ de transport pour avoir la valeur TLS.
    4
    Lors de la configuration de TLS pour les requêtes DNS transmises, il s’agit d’un nom de serveur obligatoire utilisé dans le cadre de l’indication de nom de serveur (SNI) pour valider le certificat de serveur TLS en amont.
    5
    Définit la stratégie pour sélectionner les résolveurs en amont. La valeur par défaut est aléatoire. Il est également possible d’utiliser les valeurs RoundRobin et Sequential.
    6
    C’est nécessaire. L’utiliser pour fournir des résolveurs en amont. Au maximum 15 entrées en amont sont autorisées par entrée forwardPlugin.
    7
    En option. Il peut être utilisé pour remplacer la stratégie par défaut et transférer la résolution DNS vers les résolveurs DNS spécifiés (résolutionurs en amont) pour le domaine par défaut. Dans le cas où vous ne fournissez pas de résolveurs en amont, les requêtes de nom DNS vont aux serveurs de /etc/resolv.conf.
    8
    Le type réseau est uniquement autorisé lors de l’utilisation de TLS et vous devez fournir une adresse IP. Le type de réseau indique que ce résolveur en amont doit gérer les demandes transmises séparément des résolveurs en amont listés dans /etc/resolv.conf.
    9
    Le champ d’adresse doit être une adresse IPv4 ou IPv6 valide.
    10
    En option, vous pouvez fournir un port. Le port doit avoir une valeur comprise entre 1 et 65535. Dans le cas où vous ne spécifiez pas un port pour l’amont, le port par défaut est 853.
    Note

    Lorsque les serveurs sont indéfinis ou invalides, la carte de configuration ne contient que le serveur par défaut.

La vérification

  1. Afficher la carte de configuration:

    $ oc get configmap/dns-default -n openshift-dns -o yaml
    Copy to Clipboard Toggle word wrap

    Exemple de DNS ConfigMap basé sur l’exemple de transfert TLS

    apiVersion: v1
    data:
      Corefile: |
        example.com:5353 {
            forward . 1.1.1.1 2.2.2.2:5353
        }
        bar.com:5353 example.com:5353 {
            forward . 3.3.3.3 4.4.4.4:5454 
    1
    
        }
        .:5353 {
            errors
            health
            kubernetes cluster.local in-addr.arpa ip6.arpa {
                pods insecure
                upstream
                fallthrough in-addr.arpa ip6.arpa
            }
            prometheus :9153
            forward . /etc/resolv.conf 1.2.3.4:53 {
                policy Random
            }
            cache 30
            reload
        }
    kind: ConfigMap
    metadata:
      labels:
        dns.operator.openshift.io/owning-dns: default
      name: dns-default
      namespace: openshift-dns
    Copy to Clipboard Toggle word wrap

    1
    Les modifications apportées à forwardPlugin déclenchent une mise à jour continue du jeu de démon CoreDNS.
Retour au début
Red Hat logoGithubredditYoutubeTwitter

Apprendre

Essayez, achetez et vendez

Communautés

À propos de la documentation Red Hat

Nous aidons les utilisateurs de Red Hat à innover et à atteindre leurs objectifs grâce à nos produits et services avec un contenu auquel ils peuvent faire confiance. Découvrez nos récentes mises à jour.

Rendre l’open source plus inclusif

Red Hat s'engage à remplacer le langage problématique dans notre code, notre documentation et nos propriétés Web. Pour plus de détails, consultez le Blog Red Hat.

À propos de Red Hat

Nous proposons des solutions renforcées qui facilitent le travail des entreprises sur plusieurs plates-formes et environnements, du centre de données central à la périphérie du réseau.

Theme

© 2025 Red Hat