Architecture et concepts dans les instances sans serveur

Cette rubrique présente l'architecture des instances IBM Analytics Engine serverless et décrit certains concepts et définitions essentiels.

Architecture d'instance

Le service IBM Analytics Engine est géré à l'aide de IBM Cloud® Identity and Access Management (IAM). En tant que propriétaire de compte IBM Cloud, vous êtes affecté au rôle d'administrateur de compte.

Avec un compte IBM Cloud, vous pouvez fournir et gérer votre instance Analytics Engine sans serveur en utilisant ce qui suit :

  • Console IBM Cloud
  • Interface CLI
  • API REST

Les microservices Analytics Engine du plan de contrôle, accessibles via une passerelle d'API, gèrent la création d'instance, la mise à disposition de capacité, la personnalisation et la gestion de l'environnement d'exécution pendant que vos applications Spark s'exécutent dans des espaces de nom isolés dans le plan de données. Chaque application Spark que vous soumettez s'exécute dans son propre cluster Spark, qui est une combinaison de noeuds maître et exécuteur Spark. Voir Isolement et accès au réseau.

Chaque instance Analytics Engine est associée à une instance IBM Cloud Object Storage pour les données d'instance accessibles par toutes les applications qui s'exécutent dans l'instance. Actuellement, tous les événements Spark sont également stockés dans cette instance. Les journaux de l'application Spark sont agrégés sur un serveur de journalisation Log Analysis.

Montre l'architecture de l'instance sans serveur IBM Analytics Engine
Schéma de l'architecture d'IBM Analytics Engine

Concepts clés

Avec les instances IBM Analytics Engine sans serveur, vous pouvez créer des clusters Apache Spark en fonction des besoins et personnaliser les options de configuration Spark et Spark par défaut.

Les sections suivantes décrivent les concepts essentiels lors de la mise à disposition des instances sans serveur.

Instance de service IBM Analytics Engine

Un service IBM Cloud® est une extension du cloud qui fournit des fonctionnalités prêtes à l'emploi, telles qu'une base de données, une messagerie et un logiciel web pour l'exécution du code, ou des capacités de gestion ou de surveillance des applications. Généralement, les services ne requièrent ni installation ni maintenance et peuvent être combinés pour créer des applications. Une instance d'un service est une entité qui se compose de ressources réservées pour une application ou un service particulier.

Lorsque vous créez un IBM Analytics Engine à partir du catalogue, vous attribuez à l'instance de service le nom de votre choix, sélectionnez l'environnement d'exécution Spark par défaut que vous souhaitez associer à l'instance et indiquez la configuration Spark par défaut à utiliser avec l'instance. En outre, vous devez spécifier le Instance home, qui est le stockage connecté à l'instance pour les données liées à l'instance uniquement.

Remarque :

  • Lorsque vous créez une instance de service IBM Analytics Engine, aucun coût n'est encouru sauf si des applications Spark sont en cours d'exécution ou si le serveur d'historique Spark est accessible.
  • Des coûts sont encourus si IBM Cloud Object Storage est accessible via des noeuds finaux publics et lorsque vous activez le transfert des journaux IBM Analytics Engine vers IBM Log Analysis.
  • Il existe une limite par défaut sur le nombre d'instances de service autorisées par compte IBM Cloud® et sur la quantité d'UC et de mémoire pouvant être utilisée dans une instance de service IBM Analytics Engine donnée. Voir Limites et quotas pour les instances Analytics Engine. Si vous devez ajuster ces limites, ouvrez un ticket de demande de service IBM.
  • Le nombre d'applications Spark pouvant être exécutées dans une instance de service IBM Analytics Engine n'est pas limité.

Environnement d'exécution Spark par défaut

Au moment de la mise à disposition de l'instance, vous pouvez sélectionner la version Spark à utiliser. Spark 3.4. est la version par défaut.

L'environnement d'exécution inclut des fichiers binaires Spark open source et la configuration vous aide à créer rapidement l'instance et à exécuter des applications Spark dans l'instance. En plus des binaires Spark, le runtime inclut également les bibliothèques géospatiales, de saut de données et de cryptage modulaire Parquet.

Dans toutes les versions d'exécution Spark, vous pouvez soumettre des applications Spark écrites dans les langues suivantes:

  • Scala
  • Python
  • R

Le tableau suivant présente la version de l'environnement d'exécution Spark et la version du langage d'exécution.

Version du moteur d'exécution Spark et version du langage d'exécution
basée sur Yarn Edition Apache Spark statut Langues prises en charge
3.1 3.1.2 Retiré (non pris en charge) Java 8, Scala 2.12, Python 3.10 et R 4.2
3.3 3.3.2 Retiré (non pris en charge) Java 11, Scala 2.12, Python 3.10 et R 4.2
3.4 3.4.1 Le plus récent Java 11, Scala 2.12, Python 3.10 et R 4.2

Les versions de langage sont mises à niveau périodiquement pour que l'environnement d'exécution ne soit pas vulnérable aux vulnérabilités en matière de sécurité. Vous pouvez toujours remplacer la version d'exécution Spark lorsque vous soumettez une application. Pour plus de détails sur les éléments à ajouter au contenu, voir Transmission de la version d'exécution de Spark lors de la soumission d'une application.

Dossier de base de l'instance

Le répertoire de base d'instance est le stockage associée à l'instance pour les données relatives à l'instance uniquement, telles que les bibliothèques d'applications personnalisées et les événements d'historique de Spark. Actuellement, seul IBM Cloud Object Storage est accepté comme répertoire d'instance. Cette instance peut être une instance de votre compte IBM Cloud® ou une instance d'un autre compte.

Lorsque vous mettez à disposition une instance à l'aide de la console IBM Cloud, les instances IBM Cloud Object Storage de votre compte IBM Cloud® sont automatiquement reconnues automatiquement et s'affichent dans une liste dans laquelle vous pouvez les sélectionner. Si aucune instance IBM Cloud Object Storage n'est trouvée dans votre compte, vous pouvez utiliser les API REST pour mettre à jour le répertoire de base d'instance après la création de l'instance.

Vous ne pouvez pas changer le domicile de l'instance après la création de l'instance. Vous pouvez uniquement modifier les clés d'accès.

Configuration Spark par défaut

Vous pouvez spécifier des configurations Spark par défaut lors de la mise à disposition d'une instance Analytics Engine (voir Mise à disposition d'une instance sans serveur IBM Analytics Engine). Les configurations sont automatiquement appliquées aux applications Spark soumises sur l'instance. Vous pouvez également mettre à jour les configurations après avoir créé l'instance. Vous pouvez éditer la configuration à partir de la section Configuration de la page Analytics Engine Détails de l'instance, Analytics Engine API REST ou interface de ligne de commande IAE. Les valeurs spécifiées comme valeurs par défaut du niveau d'instance peuvent être remplacées au moment de la soumission des applications Spark.

Pour en savoir plus sur les différentes configurations Apache Spark, voir Spark Configuration.

Fonctions d'instance et méthodes d'exécution sans serveur

Le tableau suivant présente les fonctions d'instance sans serveur prises en charge par le rôle d'accès et les méthodes d'exécution.

Tableau 2 Fonctions d'instance sans serveur prises en charge par le rôle d'accès et les méthodes d'exécution
Opération Rôles d'accès Console IBM API Interface CLI
Mettre à disposition des instances Administrateur l'icône de confirmation l'icône de confirmation l'icône de confirmation
Supprimer des instances Administrateur l'icône de confirmation l'icône de confirmation l'icône de confirmation
Octroi d'autorisation aux utilisateurs Administrateur l'icône de confirmation l'icône de confirmation l'icône de confirmation
Gestion de l'espace de stockage du répertoire de base de l'instance Administrateur l'icône de confirmation l'icône de confirmation l'icône de confirmation
Configurer la journalisation Administrateur
Développeur
Devops
l'icône de confirmation l'icône de confirmation Non disponible
Soumettre les applications Spark Administrateur
Developpeur
Non disponible l'icône de confirmation l'icône de confirmation
Afficher la liste des applications Spark soumises Administrateur
Développeur
DevOps
Non disponible l'icône de confirmation l'icône de confirmation
Arrêt des applications Spark soumises Administrateur
Développeur
DevOps
Non disponible l'icône de confirmation l'icône de confirmation
Personnaliser les bibliothèques Administrateur
Developpeur
Non disponible l'icône de confirmation Non disponible
Accès aux journaux des travaux Administrateur
Développeur
DevOps
l'icône de confirmation de la console Log Analysis Non applicable Non applicable
Afficher les détails de l'instance ; les détails affichés peuvent varier en fonction du rôle d'accès Administrateur
Développeur
DevOps
l'icône de confirmation l'icône de confirmation l'icône de confirmation
Gérer le serveur d'historique Spark Administrateur
Developpeur
l'icône de confirmation l'icône de confirmation l'icône de confirmation
Accéder à l'historique Spark Administrateur
Développeur
DevOps
l'icône de confirmation l'icône de confirmation l'icône de confirmation