供应 IBM Analytics Engine 无服务器实例
您可以创建无服务器 IBM Analytics Engine 服务实例:
请注意,在供应无服务器实例时,您无法定义某些限制和配额设置。 这些值是预定义的。 请参阅 Analytics Engine 实例的限制和配额,以获取这些设置及其值的列表。
您必须有权访问 IBM Cloud® us-south (达拉斯) 或 eu-de (Frankurt) 区域。
从 IBM Cloud 控制台创建服务实例
您可以使用 IBM Cloud 控制台创建实例。 要了解 UI 中供应设置背后的概念,请参阅 无服务器实例中的体系结构和概念。
创建IBM Analytics Engine实例:
-
登录 IBM Cloud® 控制台。
-
单击 Sevices,然后选择类别 分析。
-
搜索
Analytics Engine,然后单击磁贴以打开服务实例创建页面。 -
选择要在其中部署服务实例的位置。 目前,us-south 和 eu-de 是唯一受支持的区域。
-
选择套餐。 目前,Standard Serverless for Apache Spark 是唯一受支持的无服务器套餐。
-
通过输入您选择的名称,选择资源组并添加标记来配置实例。
-
选择缺省 Spark 运行时。 默认值为 Spark3.4 缺省情况下,运行时预安装时空,数据跳过和 Paquet 模块化加密包。
-
从要用作
instance home以存储实例相关数据的帐户中选择 IBM Cloud Object Storage 实例。 -
添加 Spark 配置值以覆盖缺省 Apache Spark 设置。
-
单击 创建 以在后台供应服务实例。
新创建的服务在 IBM Cloud® 资源列表 中的 **服务*下列出。
使用 IBM Cloud 命令行界面创建服务实例
要使用 IBM Cloud® 命令行界面创建服务实例:
-
下载并配置 IBM Cloud® CLI。 遵循 IBM Cloud® CLI 入门 中的指示信息。
-
设置区域的 API 端点并登录:
ibmcloud api https://{DomainName} ibmcloud login -
获取帐户的资源组列表,并选择其中一个返回的资源组作为要在其中创建 IBM Analytics Engine 无服务器实例的目标资源组:
ibmcloud resource groups ibmcloud target -g <resource_group_name> -
创建服务实例:
ibmcloud resource service-instance-create <service_instance_name> ibmanalyticsengine <plan_name> <region> -p @<path_to JSON file with cluster parameters>例如,达拉斯地区:
ibmcloud resource service-instance-create MyServiceInstance ibmanalyticsengine standard-serverless-spark us-south -p @provision.json您可以为服务实例提供您选择的任何名称。 请注意,当前,standard-serverless-spark 是唯一受支持的无服务器套餐,us-south 和 eu-de 是唯一受支持的区域。
provision.json 文件包含要创建的实例的供应参数。
有效内容 JSON 文件中 IBM Cloud Object Storage 实例的端点应该是直接端点。 直接端点比公共端点提供更好的性能,而且不会产生任何传出或传入带宽费用。
这是 provision.json 文件的外观样本。 请参阅 无服务器实例中的体系结构和概念,以获取有效内容中供应参数的描述。
注意支持 Spark3.4。 如果在创建服务实例时没有指定默认的 Spark 运行时版本,则默认使用 Spark3.4。
{ "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" } }对 create instance 命令的 IBM Cloud® 响应:
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 operation记录输出中的实例标识。 当您调用实例管理或 Spark 应用程序管理 API 时,将需要实例标识。 请参阅 Spark 应用程序 REST API。
使用资源控制器 REST API 创建服务实例
IBM Analytics Engine 无服务器实例必须驻留在 IBM Cloud® 资源组中。 作为通过资源控制器 REST API 创建 IBM Analytics Engine 无服务器实例的第一步,您需要关闭资源组标识和无服务器计划标识。
要使用资源控制器 REST API 创建服务实例:
-
通过登录到 IBM Cloud® CLI 并运行以下命令来获取资源组标识:
ibmcloud resource groups样本结果:
Retrieving all resource groups under account <Account details..> OK Name ID Default Group State Default XXXXX true ACTIVE -
将以下资源计划标识用于 Standard Serverless for Apache Spark 计划:
8afde05e-5fd8-4359-a597-946d8432dd45 -
通过执行以下 步骤 来获取 IAM 令牌。
-
使用资源控制器 REST API 创建实例:
curl -X POST https://resource-controller.cloud.ibm.com/v2/resource_instances/ --header "Authorization: Bearer $token" -H 'Content-Type: application/json' -d @provision.jsonprovision.json 文件包含要创建的实例的供应参数。 请参阅 无服务器实例中的体系结构和概念,以获取有效内容中供应参数的描述。
注意支持 Spark3.4。 如果在创建服务实例时没有指定默认的 Spark 运行时版本,则默认使用 Spark 3。
这是 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" } } }
有关用于创建实例的资源控制器 REST API 的更多信息,请参阅 创建(供应)新的资源实例。
跟踪实例就绪情况
要在新创建的无服务器实例上运行应用程序,该实例必须处于 active 状态。
要跟踪实例就绪情况:
- 输入以下命令:
样本响应: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 } } } - 检查 "
"state"属性的值。 它必须是active,然后才能开始在实例中运行应用程序。
了解更多
供应无服务器实例时,请遵循建议的 最佳实践。