使用 Azure CLI 创建 HDInsight 群集

本文介绍了使用 Azure CLI 1.0 创建 HDInsight 3.5 群集的相关步骤。

Note

在 Azure 中国区,HDInsight Linux 仅支持 3.5 或更高版本。 在 Azure 中国区无法创建 HDInsight Linux 3.2、3.3 和 3.4。 但是,可以通过 HDInsight 模拟器使用这些版本。

Important

本主题介绍如何使用 Azure CLI 1.0 创建 HDInsight 群集。 此版本的 CLI 已弃用,并且对创建 HDInsight 群集的支持尚未添加到 Azure CLI 2.0。

也可以使用 Azure PowerShell 来创建和管理 HDInsight 群集。 有关详细信息,请参阅使用 Azure PowerShell 创建 HDInsight 群集文档。

先决条件

Warning

HDInsight 群集是基于分钟按比例收费,而不管用户是否正在使用它们。 请务必在使用完之后删除群集。 有关详细信息,请参阅如何删除 HDInsight 群集

  • 一个 Azure 订阅。 请参阅获取 Azure 试用版

  • Azure CLI。 本文档中的步骤最近已使用 Azure CLI 版本 0.10.14 进行测试。

    Important

    Azure CLI 1.0 已弃用,并且对创建 HDInsight 群集的支持尚未添加到 Azure CLI 2.0。

登录到 Azure 订阅

按照 从 Azure 命令行接口 (Azure CLI) 连接到 Azure 订阅 中所述的步骤,使用 登录 方法连接到订阅。

创建群集

应通过命令行(例如 PowerShell 或 Bash)执行以下步骤。

  1. 使用以下命令进行 Azure 订阅的身份验证:

     azure login -e AzureChinaCloud
    

    系统提示提供用户名与密码。 如果有多个 Azure 订阅,可以使用 azure account set <subscriptionname> 来设置 Azure CLI 命令要使用的订阅。

  2. 使用以下命令切换到 Azure Resource Manager 模式:

     azure config mode arm
    
  3. 创建资源组。 此资源组包含 HDInsight 群集和关联的存储帐户。

     azure group create groupname location
    
    • groupname 替换为组的唯一名称。

    • location 替换为要在其中创建该组的地理区域。

      有关有效位置的列表,请使用 azure location list 命令,并使用 Name 列中的位置之一。

  4. 创建存储帐户。 此存储帐户用作 HDInsight 群集的默认存储。

     azure storage account create -g groupname --sku-name RAGRS -l location --kind Storage storagename
    
    • groupname 替换为上一步中创建的组的名称。

    • location 替换为上一步骤中使用的同一个位置。

    • storagename 替换为存储帐户的唯一名称。

      Note

      有关此命令中使用参数的详细信息,请使用 azure storage account create -h 查看此命令的帮助。

  5. 检索用于访问存储帐户的密钥。

     azure storage account keys list -g groupname storagename
    
    • groupname 替换为资源组名称。
    • storagename 替换为存储帐户的名称。

      在返回的数据中,保存 key1key 值。

  6. 创建 HDInsight 群集。

     azure hdinsight cluster create -g groupname -l location -y Linux --clusterType Hadoop --defaultStorageAccountName storagename.blob.core.chinacloudapi.cn --defaultStorageAccountKey storagekey --defaultStorageContainer clustername --workerNodeCount 3 --userName admin --password httppassword --sshUserName sshuser --sshPassword sshuserpassword clustername
    
    • groupname 替换为资源组名称。

    • Hadoop 替换为要创建的群集类型。 例如,HadoopHBaseKafkaSparkStorm

      Important

      HDInsight 群集具有各种不同的类型,与该群集进行优化的工作负荷或技术相对应。 不支持在一个群集上创建合并了多个类型(如 Storm 和 HBase)的群集。

    • location 替换为前面步骤中使用的同一个位置。

    • storagename 替换为存储帐户名称。

    • storagekey 替换为上一步骤中获取的密钥。

    • 对于 --defaultStorageContainer 参数,请使用为群集使用的同一个名称。

    • adminhttppassword 替换为通过 HTTPS 访问群集时要使用的用户名和密码。

    • sshusersshuserpassword 替换为通过 SSH 访问群集时要使用的用户名和密码

      Important

      此示例创建一个具有两个辅助角色节点的群集。 还可以在创建群集后,通过执行缩放操作更改工作节点数。 如果计划使用 32 个以上的辅助角色节点,则必须选择至少具有 8 个核心和 14-GB RAM 的头节点大小。 在创建群集期间,可以使用 --headNodeSize 参数设置头节点大小。

      有关节点大小和相关费用的详细信息,请参阅 HDInsight 定价

      可能需要几分钟时间才能完成群集创建过程。 通常大约为 15 分钟。

故障排除

如果在创建 HDInsight 群集时遇到问题,请参阅访问控制要求

后续步骤

使用 Azure CLI 成功创建 HDInsight 群集后,请参考以下主题来了解如何使用群集:

Hadoop 群集

HBase 群集

Storm 群集