Une configuration matérielle adaptée et une conception appropriée de l'environnement réseau sont essentielles pour garantir les performances, la rentabilité et la fiabilité d'un cluster Alibaba Cloud EMR. Cette rubrique explique comment sélectionner les services haute disponibilité, les spécifications des nœuds et les solutions de configuration réseau en fonction des exigences de traitement du Big Data.
Sélection du service haute disponibilité
Activez ou non la fonctionnalité haute disponibilité selon vos scénarios métier et vos besoins réels. Lorsqu'elle est activée, le cluster utilise un mode multi-nœud maître pour éliminer les risques de défaillance liés à un nœud unique et assurer la continuité du service grâce à des mécanismes distribués et de basculement.
Critère | Cluster à nœud maître unique | Cluster à nœuds maîtres multiples |
Scénarios |
|
|
Fonctionnalités principales | Architecture à nœud unique, déploiement simple. Risques de défaillance liés au nœud unique. |
|
Basculement arrière (Failback) | Aucune récupération automatique : Nécessite une intervention manuelle pour le dépannage et le redémarrage. | Basculement arrière automatique : Le service EMR remplace automatiquement le nœud maître défaillant. Il configure le même environnement et les mêmes actions d'amorçage que le nœud d'origine. |
Coût | Coût réduit : Configuration d'un seul nœud maître. | Coût plus élevé : Configuration de trois nœuds maîtres. Ils mettent en œuvre des mécanismes de décision majoritaire via des algorithmes de consensus dans les systèmes distribués, répondent aux exigences de forte cohérence des composants open source (tels que ZooKeeper et HDFS), tolèrent les pannes de nœuds uniques et évitent le phénomène de split-brain. |
Sélection des spécifications des nœuds
Le processus de configuration du cluster est le suivant :
Déterminer le scénario métier : Effectuez la sélection (par exemple : lac de données, analyse de données, flux de données en temps réel, service de données ou scénario de cluster personnalisé) en fonction des scénarios.
Sélectionner l'architecture de stockage : Déterminez s'il faut choisir une architecture couplant stockage et calcul (HDFS) ou découplant stockage et calcul (OSS-HDFS/OSS) en fonction des scénarios.
-
Configurez les spécifications des nœuds et la taille des disques :
Configurer les spécifications des nœuds : Sélectionnez les types d'instance ECS appropriés (à usage général, optimisés pour le calcul, optimisés pour la mémoire, Big Data, etc.) pour les différents types de nœuds (tels que Master, Core, Task) en fonction de l'architecture de stockage sélectionnée, de l'échelle du cluster, des caractéristiques métier et d'autres facteurs.
Configurez la taille des disques : Calculez la capacité de stockage et configurez la taille de disque appropriée en fonction du volume de données et des prévisions de croissance.
Scénario de lac de données
Stockage et calcul couplés (HDFS)
Type de nœud | Spécification recommandée |
Master Gère le cluster et coordonne les tâches. Services déployés : NameNode, ResourceManager, HiveServer, HiveMetastore, SparkHistoryServer. |
|
Core Fournit la puissance de calcul et les ressources de stockage. Services déployés : DataNode, NodeManager. | Les spécifications des instances de nœud Core dépendent des besoins en ressources.
|
Task Fournit uniquement de la puissance de calcul, ne stocke pas de données. Principalement utilisé pour compléter les besoins en CPU et en mémoire des nœuds Core. Services déployés : NodeManager. | Recommandations pour les scénarios à variation de charge :
|
Stockage et calcul découplés (OSS-HDFS/OSS)
Type de nœud | Spécification recommandée |
Master Gère le cluster et coordonne les tâches. Services déployés : ResourceManager, HiveServer, HiveMetastore, SparkHistoryServer. |
|
Core Fonction similaire aux nœuds Task, ne stocke pas de données. Services déployés : NodeManager. | Les nœuds Core ne prennent pas en charge la mise à l'échelle élastique. Nous vous recommandons d'utiliser uniquement des nœuds Task et de ne pas configurer de nœuds Core. |
Task Fournit de la puissance de calcul. Services déployés : NodeManager. |
|
Scénario d'analyse de données
Stockage et calcul couplés
Type de nœud | Spécifications recommandées |
Master Gère le cluster et coordonne les tâches. Services déployés : StarRocks FE, Doris FE, Zookeeper. |
|
Core Fournit la puissance de calcul et les ressources de stockage. Services déployés : StarRocks BE, Doris BE, ClickhouseKeeper, ClickhouseServer. | Les spécifications des instances de nœud Core dépendent des besoins de calcul métier et du volume de stockage des données.
|
Task Fournit de la puissance de calcul. Services déployés : StarRocks CN. | Seul le nœud de calcul StarRocks prend en charge le déploiement sur des nœuds Task. Si vous n'utilisez pas les composants StarRocks, vous n'avez pas besoin d'utiliser de nœuds Task. Recommandations pour les scénarios à variation de charge :
|
Stockage et calcul découplés
Seule la version StarRocks 3.x prend en charge le découplage du stockage et du calcul.
Type de nœud | Spécifications recommandées |
Master Gère le cluster et coordonne les tâches. Services déployés : StarRocks FE, Zookeeper. |
|
Task Fournit de la puissance de calcul. Services déployés : StarRocks CN. | Dans l'architecture de stockage et de calcul découplés de StarRocks, il n'y a pas de nœuds Core, uniquement des nœuds Task.
Les spécifications des instances doivent être évaluées en fonction des besoins de calcul métier réels, en sélectionnant généralement ≥ 16 cœurs et 64 GiB. Le nombre de nœuds peut être mis à l'échelle de manière élastique selon les besoins métier. |
Scénario de flux de données en temps réel
Stockage et calcul couplés (HDFS)
Type de nœud | Spécifications recommandées |
Master Gère le cluster et coordonne les tâches. Services déployés : NameNode, ResourceManager, FlinkHistoryServer, Zookeeper. |
|
Core Fournit la puissance de calcul et les ressources de stockage. Services déployés : DataNode, NodeManager. | Les spécifications des instances de nœud Core dépendent du type de métier et des besoins en ressources.
|
Task Fournit uniquement de la puissance de calcul, ne stocke pas de données, principalement utilisé pour compléter les besoins en CPU et en mémoire des nœuds Core. Services déployés : NodeManager. | Recommandations pour les variations de charge :
|
Stockage et calcul découplés (OSS-HDFS/OSS)
Type de nœud | Spécifications recommandées |
Master Gère le cluster et coordonne les tâches. Services déployés : ResourceManager, FlinkHistoryServer, Zookeeper. |
|
Core Fonction similaire aux nœuds Task, ne stocke pas de données. Services déployés : NodeManager. | Les nœuds Core ne prennent pas en charge la mise à l'échelle élastique. Il est recommandé d'utiliser uniquement des nœuds Task et de ne pas configurer de nœuds Core. |
Task Fournit de la puissance de calcul. Services déployés : NodeManager. |
|
Scénario de service de données
Stockage et calcul couplés (HDFS)
Type de nœud | Spécifications recommandées |
Master Gère le cluster et coordonne les tâches. Services déployés : NameNode, HMaster, Zookeeper. |
|
Core Fournit la puissance de calcul et les ressources de stockage. Services déployés : DataNode, HRegionServer. |
Les spécifications des instances de nœud Core dépendent du volume de requêtes métier et du volume de stockage.
|
Task Fournit uniquement de la puissance de calcul, ne stocke pas de données, principalement utilisé pour compléter les besoins en CPU et en mémoire des nœuds Core. Services déployés : HRegionServer. | Dans les services de données, comme les données sont stockées sur les nœuds Core, les nœuds Task ne sont généralement pas recommandés afin de garantir la localité des données. |
Stockage et calcul découplés (OSS-HDFS/OSS)
Type de nœud | Spécifications recommandées |
Master Gère le cluster et coordonne les tâches. Services déployés : NameNode, HMaster, Zookeeper. |
|
Core Fournit la puissance de calcul et les ressources de stockage. Services déployés : DataNode, HRegionServer. |
L'utilisation d'OSS-HDFS/OSS pour stocker les journaux HBase HLog a un impact significatif sur les performances d'écriture. Il est recommandé d'enregistrer les journaux HBase HLog sur HDFS. Les spécifications des instances de nœud Core dépendent du volume de requêtes métier. Les instances à usage général sont recommandées, avec un espace disque ≥ 500 GiB.
|
Task Fournit de la puissance de calcul. Services déployés : HRegionServer. | Recommandations pour les scénarios à variation de charge :
|
Scénario de cluster personnalisé
Lorsque le métier implique plusieurs scénarios mixtes tels que l'ETL hors ligne, l'ETL en temps réel, l'analyse d'agrégation complexe et les services de requête à haute concurrence :
Approche recommandée : Solution combinant plusieurs types de clusters. En déployant indépendamment des clusters aux caractéristiques différentes (tels que des clusters de traitement par lots hors ligne, des clusters de traitement de flux en temps réel, des clusters analytiques et des clusters d'accélération des requêtes), vous pouvez réaliser l'isolation des ressources et l'adaptation aux scénarios. Cela garantit les performances et la stabilité des diverses tâches.
Si l'échelle de votre activité est réduite et qu'il n'y a pas de conflits de ressources entre les scénarios, optez pour un cluster personnalisé : Réduisez la complexité du déploiement et améliorez l'utilisation des ressources grâce à une configuration flexible.
Stockage et calcul couplés (HDFS)
Type de nœud | Spécifications recommandées |
Master Responsable de la gestion du cluster et de la coordination des tâches. |
|
Core Fournit la puissance de calcul et les ressources de stockage. | Les spécifications des instances de nœud Core dépendent du type de métier et des besoins en ressources.
|
Task Fournit uniquement de la puissance de calcul, ne stocke pas de données, principalement utilisé pour compléter les besoins en CPU et en mémoire des nœuds Core. | Recommandations pour les scénarios à variation de charge :
|
Stockage et calcul découplés (OSS-HDFS/OSS)
Type de nœud | Spécifications recommandées |
Master Gère le cluster et coordonne les tâches. | Petits clusters (≤ 8 instances) : Instances à usage général 8 cœurs et 32 GiB, sélectionnez des disques cloud. |
Core Fonction similaire aux nœuds Task, ne stocke pas de données. |
|
Task Fournit de la puissance de calcul. | Lorsque seuls des nœuds Task sont configurés :
Lorsque des nœuds Core et des nœuds Task sont tous deux configurés, les scénarios à variation de charge doivent être pris en compte :
|
Recommandations de configuration réseau
Critère clé | Recommandations de configuration |
Configuration du réseau VPC |
|
Configuration du groupe de sécurité |
|
Configuration de la connectivité réseau |
|
Annexe : Types d'instance ECS
Consultez Familles d'instances pour afficher les caractéristiques, les spécifications et les scénarios applicables des familles d'instances ECS disponibles. Cela fournit une référence pour la configuration des spécifications des instances de nœud dans la console EMR.
|**Type d'instance**
|
**Caractéristiques**
| | --- | --- | |
À usage général
|
vCPU:Mémoire=1:4. Abrégé en série g.
| |
Optimisé pour le calcul
|
vCPU:Mémoire=1:2, fournit davantage de ressources de calcul. Abrégé en série c.
| |
Optimisé pour la mémoire
|
vCPU:Mémoire=1:8, fournit davantage de ressources mémoire. Abrégé en série r.
| |
SSD local
|
vCPU:Mémoire=1:4, utilise des disques SSD locaux, offre des capacités élevées d'IOPS aléatoires et de débit, mais présente un risque de perte de données. Ce type d'instance n'est pas disponible pour les nœuds maîtres. Abrégé en série i.
| |
Big Data
|
vCPU:Mémoire=1:4, utilise des disques SATA locaux, offre un excellent rapport coût/efficacité pour le stockage, type d'instance recommandé pour les scénarios de volume de données important (volume de données de l'ordre du To). Abrégé en série d.
| |
Partagé
|
Type d'instance avec CPU partagé, pas assez stable pour les charges de calcul importantes, convient uniquement à l'apprentissage de niveau débutant. Non recommandé pour les clients entreprise. Ce type d'instance est disponible uniquement pour les nœuds Task.
|