Aller au contenu principal
Version: 1.3.1.0

Prérequis réseau

Un réseau bien configuré est essentiel pour la stabilité et les performances d'un cluster ODP. Cette page couvre les prérequis en matière de DNS, NTP, pare-feu et connectivité au KDC Kerberos.

Prérequis DNS

Résolution DNS directe et inverse

Tous les nœuds d'un cluster ODP doivent disposer d'une résolution DNS directe (nom d'hôte vers IP) et DNS inverse (IP vers nom d'hôte) valide. C'est une exigence impérative pour :

  • La liaison des principals Kerberos (les principals de service sont liés aux noms de domaine pleinement qualifiés)
  • La communication NameNode vers DataNode dans HDFS
  • La communication ResourceManager vers NodeManager dans YARN
  • L'enregistrement des agents Ambari

Vérifier la résolution DNS sur chaque nœud :

# Résolution directe
host $(hostname -f)

# Résolution inverse
host $(hostname -i)

Les deux résolutions doivent retourner des résultats cohérents. Le nom d'hôte retourné par hostname -f doit correspondre à l'entrée DNS inverse de l'adresse IP du nœud.

Recommandation : utiliser un serveur DNS (pas /etc/hosts)

Pour les clusters de plus de quelques nœuds, gérez le DNS via un serveur DNS approprié (par exemple, FreeIPA/BIND, Microsoft Active Directory DNS). L'utilisation de /etc/hosts n'est acceptable que pour les environnements de laboratoire ou de test et ne passe pas à l'échelle.

Exigences sur les noms d'hôtes

  • Utilisez des noms de domaine pleinement qualifiés (FQDN) tels que master01.cluster.example.com
  • N'utilisez pas de noms d'hôtes à étiquette unique (par exemple, master01 seul)
  • Évitez les noms d'hôtes contenant des underscores (_) ; utilisez plutôt des tirets (-) — certains composants (Kerberos, Java SSL) rejettent les underscores dans les noms d'hôtes

Prérequis NTP

Tous les nœuds du cluster doivent avoir leurs horloges synchronisées via NTP. Un décalage d'horloge supérieur à 5 minutes provoquera l'échec de la validation des tickets Kerberos, entraînant des erreurs d'authentification sur tous les services Kerbérisés.

Configuration NTP recommandée :

  • Utilisez chrony (recommandé sur RHEL 9) ou ntpd
  • Pointez tous les nœuds du cluster vers la même source NTP ou un serveur NTP interne
  • Vérifiez la synchronisation : chronyc tracking ou ntpstat
# Installer et activer chrony (RHEL 9 / Rocky Linux 9)
dnf install -y chrony
systemctl enable --now chronyd
chronyc tracking

Référence des ports pour le pare-feu

Le tableau suivant liste les ports clés requis pour les services ODP. Configurez votre pare-feu (firewalld, iptables ou groupes de sécurité) pour autoriser ces ports entre les types de nœuds concernés.

Infrastructure de base

ServicePortProtocoleDirection
Interface web Ambari Server8080TCPClient → Ambari Server
Interface web Ambari Server (HTTPS)8442TCPClient → Ambari Server
Agent Ambari8670TCPAmbari Server → Tous les nœuds
Client ZooKeeper2181TCPTous les nœuds → Nœuds ZooKeeper
Pairs ZooKeeper2888, 3888TCPZooKeeper → ZooKeeper

HDFS

ServicePortProtocoleDirection
RPC NameNode8020TCPTous les nœuds / clients → NameNode
Interface web HTTP NameNode9870TCPAdmin → NameNode
Interface web HTTPS NameNode9871TCPAdmin → NameNode
Transfert de données DataNode9866TCPNameNode / clients → DataNode
Interface web HTTP DataNode9864TCPAdmin → DataNode
JournalNode8485TCPNameNode → JournalNode
remarque

Le port 50070 (HTTP NameNode historique) et 50010 (DataNode historique) ont été remplacés dans Hadoop 3.x par 9870 et 9866 respectivement.

YARN

ServicePortProtocoleDirection
Interface web ResourceManager8088TCPClient → ResourceManager
Planificateur ResourceManager8030TCPNodeManager → ResourceManager
NodeManager8042TCPClient / RM → NodeManager
Job History Server19888TCPClient → History Server
Timeline Server8188TCPClient → ATS

Hive

ServicePortProtocoleDirection
HiveServer2 (JDBC/ODBC)10000TCPClient → HiveServer2
HiveServer2 (HTTP)10001TCPClient → HiveServer2
Hive Metastore9083TCPHiveServer2 / Spark → Metastore

HBase

ServicePortProtocoleDirection
HBase Master16000TCPRegionServer → Master
Interface web HBase Master16010TCPAdmin → HBase Master
RegionServer16020TCPClient → RegionServer
Interface web RegionServer16030TCPAdmin → RegionServer

Services de sécurité

ServicePortProtocoleDirection
Interface web Ranger Admin6080TCPClient → Ranger
Interface web Ranger Admin (HTTPS)6182TCPClient → Ranger
Passerelle Knox (HTTPS)8443TCPClient externe → Knox
Interface web Atlas (HTTP)21000TCPClient → Atlas
Interface web Atlas (HTTPS)21443TCPClient → Atlas

Kafka

ServicePortProtocoleDirection
Broker Kafka6667TCPProducteur / Consommateur → Broker
Broker Kafka (SSL)6668TCPProducteur / Consommateur → Broker

NiFi

ServicePortProtocoleDirection
Interface web NiFi (HTTPS)9090TCPClient → NiFi
NiFi Site-to-Site10000TCPNiFi → NiFi (si clusterisé)

Catalogue REST Polaris

ServicePortProtocoleDirection
API REST Polaris8181TCPSpark / Trino → Polaris

Kudu

ServicePortProtocoleDirection
RPC Kudu Master7051TCPClient / TabletServer → Master
Interface web Kudu Master8051TCPAdmin → Kudu Master
RPC Kudu TabletServer7050TCPClient → TabletServer
Interface web Kudu TabletServer8050TCPAdmin → TabletServer

Connectivité au KDC Kerberos

Dans un cluster ODP sécurisé par Kerberos, tous les nœuds doivent pouvoir atteindre le Centre de Distribution de Clés (KDC) Kerberos. ODP prend en charge MIT Kerberos et FreeIPA (qui intègre MIT Kerberos).

ServicePortProtocoleDirection
KDC Kerberos88TCP + UDPTous les nœuds → KDC
Administration Kerberos749TCPAmbari Server → Admin KDC
LDAP FreeIPA389TCPAmbari / Ranger → FreeIPA
LDAPS FreeIPA636TCPAmbari / Ranger → FreeIPA

Exigences :

  • Tous les nœuds du cluster doivent pouvoir résoudre le nom d'hôte du KDC et atteindre le port 88 (TCP et UDP)
  • Ambari Server doit pouvoir atteindre le port d'administration du KDC (749) pour créer les principals de service lors de l'assistant d'activation Kerberos
  • Si FreeIPA est utilisé, Ranger UserSync doit pouvoir atteindre le port LDAP (389 ou 636) pour la synchronisation des utilisateurs et des groupes

Décalage d'horloge

Kerberos est très sensible au décalage d'horloge. Le décalage maximum autorisé entre un client et le KDC est de 300 secondes (5 minutes) par défaut. Assurez-vous que la synchronisation NTP est en place sur tous les nœuds avant d'activer Kerberos (voir Prérequis NTP ci-dessus).