Provisioning di un'istanza senza server IBM Analytics Engine
Puoi creare un'istanza del servizio IBM Analytics Engine senza server:
- Utilizzo della console IBM Cloud
- Utilizzo della CLI IBM Cloud
- Utilizzo dell'API REST del controller risorse
Nota che non puoi definire alcune impostazioni di limitazione e quota durante il provisioning di un'istanza senza server. Questi valori sono predefiniti. Vedi Limiti e quote per le istanze Analytics Engine per un elenco di queste impostazioni e i loro valori.
Devi avere accesso alla IBM Cloud® us-south (Dallas) o alla regione eu-de (Frankurt).
Creazione di un'istanza del servizio dalla console IBM Cloud
Puoi creare una tua istanza utilizzando la console IBM Cloud. Per comprendere i concetti dietro le impostazioni di provisioning nell'IU, vedi Architettura e concetti nelle istanze senza server.
Per creare un'istanza IBM Analytics Engine:
-
Accedi alla consoleIBM Cloud®.
-
Fai clic su Sevices e seleziona la categoria Analytics.
-
Cerca
Analytics Enginee fai quindi clic sul tile per visualizzare la pagina di creazione dell'istanza del servizio. -
Scegliere l'ubicazione in cui si desidera distribuire l'istanza del servizio. Attualmente, us - south e eu - de sono le uniche regioni supportate.
-
Seleziona un piano. Attualmente, Standard Serverless for Apache Spark è l'unico piano senza server supportato.
-
Configurare l'istanza immettendo un nome a scelta, selezionando un gruppo di risorse e aggiungendo tag.
-
Selezionare il runtime Spark predefinito. Spark 3.4 è l'impostazione predefinita. Il runtime preinstalla i pacchetti di crittografia spaziotemporale, di data skipping e Paquet modulare per impostazione predefinita.
-
Selezionare l'istanza IBM Cloud Object Storage dall'account che si desidera utilizzare come
instance homeper memorizzare i dati correlati all'istanza. -
Aggiungere i valori di configurazione Spark per sovrascrivere le impostazioni predefinite di Apache Spark.
-
Fai clic su Crea per eseguire il provisioning dell'istanza del servizio in background.
Il servizio appena creato è elencato nell'elenco delle risorse IBM Cloud® in *Servizi.
Creazione di un'istanza del servizio utilizzando l'interfaccia riga di comando IBM Cloud
Per creare un'istanza del servizio utilizzando l'interfaccia riga di comando IBM Cloud®:
-
Scarica e configurare la CLI IBM Cloud®. Segui le istruzioni in Introduzione alla CLI IBM Cloud®.
-
Imposta l'endpoint API per la tua regione e accedi:
ibmcloud api https://{DomainName} ibmcloud login -
Ottieni l'elenco dei gruppi di risorse per il tuo account e seleziona uno dei gruppi di risorse restituiti come gruppo di risorse di destinazione in cui creare l'istanza senza server IBM Analytics Engine:
ibmcloud resource groups ibmcloud target -g <resource_group_name> -
Crea un'istanza del servizio:
ibmcloud resource service-instance-create <service_instance_name> ibmanalyticsengine <plan_name> <region> -p @<path_to JSON file with cluster parameters>Ad esempio, per la regione Dallas:
ibmcloud resource service-instance-create MyServiceInstance ibmanalyticsengine standard-serverless-spark us-south -p @provision.jsonPuoi fornire all'istanza del servizio qualsiasi nome tu scelga. Nota che attualmente, standard - serverless - spark è l'unico piano senza server supportato e us - south e eu - de le uniche regioni supportate.
Il file provision.json contiene i parametri di provisioning per l'istanza che vuoi creare.
L'endpoint per la tua istanza IBM Cloud Object Storage nel file JSON del payload deve essere l'endpoint diretto. Gli endpoint diretti offrono prestazioni migliori rispetto agli endpoint pubblici e non comportano costi per la larghezza di banda in uscita o in entrata.
Questo è un esempio di come può essere il file provision.json. Vedi Architettura e concetti nelle istanze senza server per una descrizione dei parametri di provisioning nel payload.
Si noti che Spark 3.4 è supportato. Se non si specifica una versione predefinita del runtime di Spark quando si crea un'istanza di servizio, Spark 3.4 viene preso per default.
{ "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 risposta IBM Cloud® al comando create 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 operationPrendere nota dell'ID istanza dall'output. Avrai bisogno dell'ID istanza quando richiami le API di gestione dell'istanza o di gestione dell'applicazione Spark. Vedi API REST dell'applicazione Spark.
Creazione di un'istanza del servizio utilizzando l'API REST del controller delle risorse
Un'istanza senza server IBM Analytics Engine deve risiedere in un gruppo di risorse IBM Cloud®. Come primo passo verso la creazione di un'istanza senza server IBM Analytics Engine tramite l'API REST del controller di risorse, devi avere l'ID gruppo di risorse e l'ID piano senza server a portata di mano.
Per creare un'istanza del servizio utilizzando l'API REST del controller delle risorse:
-
Ottieni un ID gruppo di risorse accedendo alla CLI IBM Cloud® ed eseguendo il seguente comando:
ibmcloud resource groupsRisultato di esempio:
Retrieving all resource groups under account <Account details..> OK Name ID Default Group State Default XXXXX true ACTIVE -
Utilizzare il seguente ID piano delle risorse per il piano Standard Serverless per Apache Spark:
8afde05e-5fd8-4359-a597-946d8432dd45 -
Ottieni il token IAM eseguendo i seguenti passi.
-
Crea un'istanza utilizzando l'API REST del controller di risorse:
curl -X POST https://resource-controller.cloud.ibm.com/v2/resource_instances/ --header "Authorization: Bearer $token" -H 'Content-Type: application/json' -d @provision.jsonIl file provision.json contiene i parametri di provisioning per l'istanza che vuoi creare. Vedi Architettura e concetti nelle istanze senza server per una descrizione dei parametri di provisioning nel payload.
Si noti che Spark 3.4 è supportato. Se non si specifica una versione predefinita del runtime di Spark quando si crea un'istanza di servizio, Spark 3. viene preso per impostazione predefinita.
Questo è un esempio di come può essere il file provision.json:
{ "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" } } }
Per ulteriori informazioni sull'API REST del controller delle risorse per creare un'istanza, vedi Create(provisioning)a new resource instance.
Traccia della disponibilità dell'istanza
Per eseguire le applicazioni su un'istanza senza server appena creata, l'istanza deve essere nello stato active.
Per tenere traccia della disponibilità dell'istanza:
- Immetti il seguente comando:
Risposta di esempio: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 } } } - Controllare il valore dell'attributo "
"state". Deve essereactiveprima di poter avviare l'esecuzione delle applicazioni nell'istanza.
Ulteriori informazioni
Quando esegui il provisioning di istanze senza server, segui le procedure ottimali consigliate.