Mise à disposition d'une instance sans serveur IBM Analytics Engine
Vous pouvez créer une instance de service IBM Analytics Engine sans serveur :
- Utilisation de la console IBM Cloud
- En utilisant l'interface de ligne de commande d'IBM Cloud
- En utilisant l'API REST du contrôleur de ressources
Notez que vous ne pouvez pas définir certains paramètres de limitation et de quota lors de la mise à disposition d'une instance sans serveur. Ces valeurs sont prédéfinies. Voir Limites et quotas des instances Analytics Engine pour obtenir la liste de ces paramètres et de leurs valeurs.
Vous devez avoir accès à IBM Cloud® us-south (Dallas) ou à la région eu-de (Frankurt).
Création d'une instance de service dans la console d'IBM Cloud
Vous pouvez créer une instance à l'aide de la console IBM Cloud. Pour comprendre les concepts de la mise à disposition dans l'IU, voir Architecture et concepts dans les instances sans serveur.
Pour créer une instance IBM Analytics Engine :
-
Connectez-vous à la consoleIBM Cloud®.
-
Cliquez sur Sevices et sélectionnez la catégorie Analyse.
-
Recherchez
Analytics Engine, puis cliquez sur la mosaïque pour ouvrir la page de création de l'instance de service. -
Choisissez l'emplacement dans lequel vous souhaitez que l'instance de service soit déployée. Actuellement, us-south et eu-de sont les seules régions prises en charge.
-
Sélectionnez un plan. Actuellement, Standard Serverless pour Apache Spark est le seul forfait sans serveur pris en charge.
-
Configurez l'instance en entrant un nom de votre choix, en sélectionnant un groupe de ressources et en ajoutant des étiquettes.
-
Sélectionnez l'environnement d'exécution Spark par défaut. Spark 3.4 est la version par défaut. Par défaut, l'environnement d'exécution préinstalle les packages spatio-temporel, d'exclusion de données et de chiffrement modulaire Paquet.
-
Dans votre compte, sélectionnez l'instance IBM Cloud Object Storage à utiliser comme
instance homepour stocker des données liées à l'instance. -
Ajoutez des valeurs de configuration Spark pour remplacer les paramètres Apache Spark par défaut.
-
Cliquez sur Créer pour fournir l'instance de service en arrière-plan.
Le service nouvellement créé est listé dans votre liste de ressourcesIBM Cloud® sous *Services.
Création d'une instance de service avec l'interface de ligne de commande d'IBM Cloud
Pour créer une instance de service avec l'interface de ligne de commande d'IBM Cloud® :
-
Téléchargez et configurez l'interface de ligne de commande d'IBM Cloud®. Suivez les instructions dans Initiation à la CLI IBM Cloud®.
-
Fixez le point d'extrémité d'API pour votre région et connectez-vous :
ibmcloud api https://{DomainName} ibmcloud login -
Obtenez la liste des groupes de ressources de votre compte et sélectionnez l'un des groupes de ressources renvoyés en tant que groupe de ressources cible dans lequel vous voulez créer l'instance IBM Analytics Engine sans serveur :
ibmcloud resource groups ibmcloud target -g <resource_group_name> -
Créez une instance de service :
ibmcloud resource service-instance-create <service_instance_name> ibmanalyticsengine <plan_name> <region> -p @<path_to JSON file with cluster parameters>Par exemple, pour la région de Dallas :
ibmcloud resource service-instance-create MyServiceInstance ibmanalyticsengine standard-serverless-spark us-south -p @provision.jsonVous pouvez donner à l'instance de service le nom de votre choix. Notez qu'actuellement, standard-serverless-spark est le seul plan serverless supporté et us-south et eu-de les seules régions supportées.
Le fichier provision.json contient les paramètres de mis à disposition de l'instance que vous souhaitez créer.
Le point d'accès à votre instance IBM Cloud Object Storage dans le fichier JSON de la charge utile doit être le point d'accès direct. Les points d'extrémité directs offrent de meilleures performances que les points d'extrémité publics et n'entraînent pas de frais pour la largeur de bande sortante ou entrante.
Le fichier provision.json peut se présenter comme suit. Voir Architecture et concepts dans les instances sans serveur pour la description des paramètres d'application des accès dans le contenu.
Notez que Spark 3.4 est pris en charge. Si vous ne spécifiez pas de version d'exécution Spark par défaut lorsque vous créez une instance de service, Spark 3.4 est utilisé par défaut.
{ "default_runtime": { "spark_version": "3.4" }, "instance_home": { "region": "us-south", "endpoint": "https://s3.direct.us-south.cloud-object-storage.appdomain.cloud", "hmac_access_key": "<your-hmac-access-key", "hmac_secret_key": "<your-hmac-secret-key" }, "default_config": { "key1": "value1", "key2": "value2" } }La réponse IBM Cloud® à la commande de création d'instance :
Creating service instance MyServiceInstance in resource group Default of account <your account name> as <your user name>... OK Service instance MyServiceInstance was created. Name: MyServiceInstance ID: crn:v1:staging:public:ibmanalyticsengine:us-south:a/d628eae2cc7e4373bb0c9d2229f2ece5:1e32e***-afd9-483a-b1**-724ba5cf4***:: GUID: 1e32e***-afd9-483a-b1**-724ba5cf4*** Location: us-south State: provisioning Type: service_instance Sub Type: Service Endpoints: public Allow Cleanup: false Locked: false Created at: 2021-11-29T07:20:40Z Updated at: 2021-11-29T07:20:42Z Last Operation: Status create in progress Message Started create instance operationNotez l'ID instance dans la sortie. Vous aurez besoin de l'ID instance lorsque vous appellerez la gestion des instances ou les API de gestion d'application Spark. Voir API REST de l'application Spark.
Création d'une instance de service avec l'API REST du contrôleur de ressources
Une instance IBM Analytics Engine sans serveur doit résider dans un groupe de ressources IBM Cloud®. Pour commencer à créer une instance sans serveur IBM Analytics Engine via l'API REST du contrôleur de ressources, vous devez avoir à portée de main l'ID du groupe de ressources et l'ID du forfait sans serveur.
Pour créer une instance de service à l'aide de l'API REST du contrôleur de ressources :
-
Obtenez l'ID de groupe de ressources en vous connectant à la CLI lIBM Cloud® et en exécutant la commande suivante :
ibmcloud resource groupsExemple de résultat :
Retrieving all resource groups under account <Account details..> OK Name ID Default Group State Default XXXXX true ACTIVE -
Utilisez l'ID de forfait de ressources suivant pour le forfait Standard Serverless for Apache Spark :
8afde05e-5fd8-4359-a597-946d8432dd45 -
Récupérez le jeton IAM en procédant comme suit.
-
Créez une instance à l'aide de l'API REST Resource Controller :
curl -X POST https://resource-controller.cloud.ibm.com/v2/resource_instances/ --header "Authorization: Bearer $token" -H 'Content-Type: application/json' -d @provision.jsonLe fichier provision.json contient les paramètres de mis à disposition de l'instance que vous souhaitez créer. Voir Architecture et concepts dans les instances sans serveur pour la description des paramètres d'application des accès dans le contenu.
Notez que Spark 3.4 est pris en charge. Si vous ne spécifiez pas de version d'exécution Spark par défaut lorsque vous créez une instance de service, Spark 3. est utilisé par défaut.
Le fichier provision.json peut se présenter comme suit :
{ "name": "your-service-instance-name", "resource_plan_id": "8afde05e-5fd8-4359-a597-946d8432dd45", "resource_group": "resource-group-id", "target": "us-south", "parameters": { "default_runtime": { "spark_version": "3.4" }, "instance_home": { "region": "us-south", "endpoint": "s3.direct.us-south.cloud-object-storage.appdomain.cloud", "hmac_access_key": "your-access-key", "hmac_secret_key": "your-secret-key" } } }
Pour plus d'informations sur l'API REST Resource Controller pour la création d'une instance, voir Créer (mettre à disposition) une nouvelle instance de ressource.
Suivi de l'état de préparation d'une instance.
Pour exécuter des applications sur une instance sans serveur nouvellement créée, l'instance doit avoir l'état active.
Pour suivre l'état de préparation de l'instance :
- Entrez la commande suivante :
Exemple de réponse :curl -X GET https://api.us-south.ae.cloud.ibm.com/v3/analytics_engines/{instance_id} -H "Authorization: Bearer $token"{ "id": "dc0e****-eab2-4t9e-9441-56620949****", "state": "created", "state_change_time": "2021-04-21T04:24:01Z", "default_runtime": { "spark_version": "3.4", "instance_home": { "provider": "ibm-cos", "type": "objectstore", "region": "us-south", "endpoint": "https://s3.direct.us-south.cloud-object-storage.appdomain.cloud", "bucket": "ae-bucket-do-not-delete-dc0e****-eab2-4t**-9441-566209499546", "hmac_access_key": "eH****g=", "hmac_secret_key": "4d********76" }, "default_config": { "spark.driver.memory": "4g", "spark.driver.cores": 1 } } } - Vérifiez la valeur de l'attribut
"state". Elle doit êtreactivepour pouvoir démarrer des applications dans l'instance.
En savoir plus
Lors de la mise à disposition d'instances sans serveur, suivez les meilleures pratiques recommandées.