美文网首页
SKIL/工作流程/添加资源

SKIL/工作流程/添加资源

作者: hello风一样的男子 | 来源:发表于2019-04-20 21:34 被阅读0次

添加资源

运行作业需要先将外部资源添加到SKIL的系统中。在添加资源之前,你需要将相关的凭证文件存储在SKIL集群的一个节点中。

存储凭证

下面显示了存储每种受支持资源类型的凭据的格式。

注意

对于HDFS和YARN,不需要凭证,因为设置是在本地完成的。你必须配置SPARK_HOME环境变量,并将其指向YARN的spark root文件夹。

{
  "accessKey": "<access_key>",
  "secretKey": "<secret_key>"
}

image.gif

在哪里可以找到凭证?
请访问以下链接以根据你的资源需求获取安全凭据:

  1. AWS S3 and EMR
  2. Azure Storage and HDInsight
  3. Google Storage and Cloud DataProc - 将此信息保存在一个文件中,并给出serviceaccountfile键的路径,如上述代码段中所述。

添加资源
存储完资源凭据后,可以使用以下方法添加相应的资源:

  1. CLI
  2. REST端
  3. UI

1. CLI

skil resources命令通过CLI管理资源。以下代码段显示了如何添加每种类型的资源:

AWS S3

skil resources create-s3 --name <resource_name> --credentialUri <credentials_uri> --bucketId <bucket_id> --region <region>
image.gif

AWS EMR

skil resources create-emr --name <resource_name> --credentialUri <credentials_uri> --clusterId <cluster_id> --region <region>
image.gif

Google Storage

skil resources create-google-storage --name <resource_name> --credentialUri <credentials_uri> --projectId <project_id> --bucketName <bucket_name>
image.gif

Google Cloud DataProc

skil resources create-dataproc --name <resource_name> --credentialUri <credentials_uri> --projectId <project_id> --sparkClusterName <spark_cluster_name> --region <region>
image.gif

Azure Storage

skil resources create-azure-storage --name <resource_name> --credentialUri <credentials_uri> --containerName <container_name>
image.gif

Azure HDInsight

skil resources create-hdinsight --name <resource_name> --credentialUri <credentials_uri> --subscriptionId <subscription_id> --resourceGroupName <resource_group_name> --clusterName <cluster_name>
image.gif

HDFS

skil resources create-hdfs --name <resource_name> --credentialUri <credentials_uri> --nameNodeHost <name_node_host> --nameNodePort <name_node_port>
image.gif

YARN

skil resources create-yarn --name <resource_name> --credentialUri <credentials_uri> --localSparkHome <local_spark_home>
image.gif

2. REST 端

使用类似“curl”的工具,你可以通过向http://host:port/resource端点发送post请求来添加资源。通过REST端点添加资源的一般格式如下:

curl -d '<resource_request_data>' -H "Authorization: Bearer <auth_token>" -H "Content-Type: application/json" -X POST http://host:port/resource

image.gif

注意

你可以通过运行以下curl请求来获取<auth_token>:

curl -d '{"userId":"<userId>", "password":"<password>"}' -H "Content-Type: application/json" -X POST http://localhost:9008/login

image.gif

其中,<userid>和<password>是登录SKIL的凭据。
对于每种类型的资源,<resource_request_data>将具有以下格式:

AWS S3

{
  "resourceName":"<resource_name>",
  "resourceDetails": {
    "@class":"io.skymind.resource.model.subtypes.storage.AzureStorageResourceDetails",
    "containerName":"<container_name>"
  },
  "credentialUri":"<credentials_uri>", // 通常看起来像"file:///path/to/credentials.json
  "type":"STORAGE",
  "subType":"AzureStorage",
  "credentialId":<credentials_id> // 一个整数
}

//你只需要提供credentialsUri或credentialsId
image.gif

AWS EMR

{
  "resourceName":"<resource_name>",
  "resourceDetails": {
    "@class":"io.skymind.resource.model.subtypes.compute.EMRResourceDetails",
    "clusterId":"<cluster_id>",
    "region":"<region>"
  },
  "credentialUri":"<credentials_uri>", // 通常看起来像 "file:///path/to/credentials.json
  "type":"COMPUTE",
  "subType":"EMR",
  "credentialId":<credentials_id> // 一个整数
}

//你只需要提供credentialsUri或credentialsId
image.gif

Google Storage

{
  "resourceName":"<resource_name>",
  "resourceDetails": {
    "@class":"io.skymind.resource.model.subtypes.storage.GoogleStorageResourceDetails",
    "projectId":"<project_id>",
    "bucketName":"<bucket_name>"
  },
  "credentialUri":"<credentials_uri>", // 通常看起来像"file:///path/to/credentials.json
  "type":"STORAGE",
  "subType":"GoogleStorage",
  "credentialId":<credentials_id> // 一个整数
}

//你只需要提供credentialsUri或credentialsId
image.gif

Google Cloud DataProc

{
  "resourceName":"<resource_name>",
  "resourceDetails": {
    "@class":"io.skymind.resource.model.subtypes.compute.DataProcResourceDetails",
    "projectId":"<project_id>",
    "region":"<region>",
    "sparkClusterName":"<spark_cluster_name>"
  },
  "credentialUri":"<credentials_uri>", // 通常看起来像 "file:///path/to/credentials.json
  "type":"COMPUTE",
  "subType":"DataProc",
  "credentialId":<credentials_id> // 一个整数
}

//你只需要提供credentialsUri或credentialsId
image.gif

Azure Storage

{
  "resourceName":"<resource_name>",
  "resourceDetails": {
    "@class":"io.skymind.resource.model.subtypes.storage.AzureStorageResourceDetails",
    "containerName":"<container_name>"
  },
  "credentialUri":"<credentials_uri>", // 通常看起来像 "file:///path/to/credentials.json
  "type":"STORAGE",
  "subType":"AzureStorage",
  "credentialId":<credentials_id> // 一个整数
}
  //你只需要提供credentialsUri或credentialsId
image.gif

Azure HDInsight

{
  "resourceName":"<resource_name>",
  "resourceDetails": {
    "@class":"io.skymind.resource.model.subtypes.compute.HDInsightResourceDetails",
    "subscriptionId":"<subscription_id>",
    "resourceGroupName":"<resource_group_name>",
    "clusterName":"<cluster_name>"
  },
  "credentialUri":"<credentials_uri>", // 通常看起来像"file:///path/to/credentials.json
  "type":"COMPUTE",
  "subType":"HDInsight",
  "credentialId":<credentials_id> //一个整数
}
//你只需要提供credentialsUri或credentialsId
image.gif

HDFS

{
  "resourceName":"<resource_name>",
  "resourceDetails": {
    "@class":"io.skymind.resource.model.subtypes.storage.HDFSResourceDetails",
    "nameNodeHost":"<name_node_host>",
    "nameNodePort":"<name_node_port>"
  },
  "credentialUri":"<credentials_uri>", // 通常看起来像 "file:///path/to/credentials.json
  "type":"STORAGE",
  "subType":"HDFS",
  "credentialId":<credentials_id> // 一个整数
}
//你只需要提供credentialsUri或credentialsId
image.gif

YARN

{
  "resourceName":"<resource_name>",
  "resourceDetails": {
    "@class":"io.skymind.resource.model.subtypes.compute.YARNResourceDetails",
    "localSparkHome":"<local_spark_home>"
  },
  "credentialUri":"<credentials_uri>", // 通常看起来像 "file:///path/to/credentials.json
  "type":"COMPUTE",
  "subType":"YARN",
  "credentialId":<credentials_id> // 一个整数
}
  //你只需要提供credentialsUri或credentialsId
image.gif

注意

如果你已被授予凭证,那么你可以在请求中省略credentialsId,反之亦然。

3. UI

你可以通过单击SKIL仪表盘右上角的“齿轮”图标,然后转到“资源(Resources)”来访问添加资源的用户界面:

image image.gif ​

单击 "添加资源(Add Resource)"来添加资源 :

image image.gif ​

选择要添加的资源类型:

image image.gif ​

现在,填写详细信息,最后单击“添加(Add)…”添加所需资源:

image image.gif ​

相关文章

  • SKIL/工作流程/添加资源

    添加资源 运行作业需要先将外部资源添加到SKIL的系统中。在添加资源之前,你需要将相关的凭证文件存储在SKIL集群...

  • SKIL/工作流程/资源

    资源 当今世界,我们收集越来越多的增长和复杂的数据集,这些数据集往往需要使用复杂的模型。更重要的是,大型和非结构化...

  • SKIL/工作流程/添加更多Zeppelin实例

    添加更多Zeppelin实例 当SKIL启动时,它将默认创建一个名为“Default Zeppelin”(在端口8...

  • Git工作流程

    Git 工作流程 一般工作流程如下: 克隆 Git 资源作为工作目录。 在克隆的资源上添加或修改文件。 如果其他人...

  • 工具:Git合作开发的艺术

    Git工作流程 一般工作流程如下: 克隆 Git 资源作为工作目录。 在克隆的资源上添加或修改文件。 如果其他人修...

  • SKIL/工作流程/嵌入式SKIL

    嵌入式SKIL 除了提供几乎所有用于创建高效机器学习管道的工具之外,SKIL还可以非常方便地作为嵌入式应用程序。这...

  • SKIL/工作流程/概述

    概述 SKIL减少了实验数据科学建模、关键测试和产品决策以及可扩展部署工程之间的冲突。它弥合了Python生态系统...

  • SKIL/工作流程/工作间

    工作间 工作间是一个功能集合,可以实现不同的任务,例如进行实验、训练模型和测试不同的数据集转换。工作间与部署不同,...

  • SKIL/工作流程/数据转换

    数据转换 在实践中,数据很少以方便神经网络使用的格式存在。它是字符串、类别、数字、不同格式的图像的混合体,而且大部...

  • SKIL/工作流程/定义模型

    定义模型 SKIL有一个强大的模型存储、服务和导入系统来支持主要的深度学习库。SKIL可以用于端到端的训练、配置和...

网友评论

      本文标题:SKIL/工作流程/添加资源

      本文链接:https://www.haomeiwen.com/subject/xmscgqtx.html