在 HDInsight 中使用空边缘节点

了解如何将空边缘节点添加到基于 Linux 的 HDInsight 群集。 空边缘节点是安装并配置了与头节点中相同的客户端工具,但未运行 hadoop 服务的 Linux 虚拟机。 可以使用该边缘节点来访问群集、测试客户端应用程序和托管客户端应用程序。

可以将空边缘节点添加到现有 HDInsight 群集,或者在创建群集时将此类节点添加到新群集。 添加空边缘节点的操作是使用 Azure Resource Manager 模板完成的。 以下示例演示如何使用模板执行此操作:

"resources": [
    {
        "name": "[concat(parameters('clusterName'),'/', variables('applicationName'))]",
        "type": "Microsoft.HDInsight/clusters/applications",
        "apiVersion": "2015-03-01-preview",
        "dependsOn": [ "[concat('Microsoft.HDInsight/clusters/',parameters('clusterName'))]" ],
        "properties": {
            "marketPlaceIdentifier": "EmptyNode",
            "computeProfile": {
                "roles": [{
                    "name": "edgenode",
                    "targetInstanceCount": 1,
                    "hardwareProfile": {
                        "vmSize": "Standard_D3"
                    }
                }]
            },
            "installScriptActions": [{
                "name": "[concat('emptynode','-' ,uniquestring(variables('applicationName')))]",
                "uri": "[parameters('installScriptAction')]",
                "roles": ["edgenode"]
            }],
            "uninstallScriptActions": [],
            "httpsEndpoints": [],
            "applicationType": "CustomApplication"
        }
    }
],

如示例中所示,可以选择性地调用脚本操作来执行其他配置,例如,在边缘节点中安装 Apache Hue。 脚本操作脚本必须可在 Web 上公开访问。 例如,如果该脚本存储在 Azure 存储中,请使用公共容器或公共 blob。

边缘节点虚拟机大小必须满足 HDInsight 群集工作节点 vm 的大小要求。 有关建议的工作节点 vm 的大小信息,请参阅在 HDInsight 中创建 Hadoop 群集

创建边缘节点后,可以使用 SSH 连接到该节点,运行客户端工具访问 HDInsight 中的 Hadoop 群集。

将边缘节点添加到现有群集

本部分介绍如何使用 Resource Manager 模板将边缘节点添加到现有 HDInsight 群集。 可以在 GitHub 中找到 Resource Manager 模板。 Resource Manager 模板调用位于 https://raw.githubusercontent.com/hdinsight/Iaas-Applications/master/EmptyNode/scripts/EmptyNodeSetup.sh 的脚本操作脚本。 该脚本不执行任何操作。 它只是演示如何从 Resource Manager 模板调用脚本操作。

将空边缘节点添加到现有群集

  1. 创建一个 HDInsight 群集(如果没有)。 请参阅 Hadoop 教程:开始使用 HDInsight 中基于 Linux 的 Hadoop
  2. 单击以下图像登录到 Azure,然后在 Azure 门户中打开 Azure Resource Manager 模板。

    Deploy to Azure

  3. 配置以下属性:

    • 订阅:选择用于创建此群集的 Azure 订阅。
    • 资源组:选择现有 HDInsight 群集所用的资源组。
    • 位置:选择现有 HDInsight 群集的位置。
    • 群集名称:输入现有 HDInsight 群集的名称。
    • 边缘节点大小:选择一个 VM 大小。 VM 大小必须满足工作节点 VM 大小要求。 有关建议的工作节点 vm 的大小信息,请参阅在 HDInsight 中创建 Hadoop 群集
    • 边缘节点前缀:默认值为 new。 如果使用默认值,边缘节点的名称为 new-edgenode。 可以通过门户自定义前缀。 也可以通过模板自定义完整名称。
  4. 单击“法律条款”,然后单击“购买”。 确认已选中“固定到仪表板”复选框,然后单击“创建”。

创建群集时添加边缘节点

本部分介绍如何使用 Resource Manager 模板创建包含边缘节点的 HDInsight 群集。 可以在 Azure 快速启动模板库中找到 Resource Manager 模板。 Resource Manager 模板调用位于 https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/101-hdinsight-linux-with-edge-node/scripts/EmptyNodeSetup.sh 的脚本操作脚本。 该脚本不执行任何操作。 它只是演示如何从 Resource Manager 模板调用脚本操作。

将空边缘节点添加到现有群集

  1. 创建一个 HDInsight 群集(如果没有)。 请参阅 Hadoop 教程:开始使用 HDInsight 中基于 Linux 的 Hadoop
  2. 单击以下图像登录到 Azure,然后在 Azure 门户中打开 Azure Resource Manager 模板。

    Deploy to Azure

    Note

    必须修改从 GitHub 存储库“azure-quickstart-templates”下载的模板,以适应 Azure 中国云环境。 例如,将一些终结点 -“blob.core.windows.net”替换为“blob.core.chinacloudapi.cn”,将“cloudapp.azure.com”替换为“chinacloudapp.cn”;将允许的位置更改为“China North”和“China East”;将 HDInsight Linux 版本更改为 Azure 中国区支持的版本 3.5。

  3. 配置以下属性:

    • 订阅:选择用于创建此群集的 Azure 订阅。
    • 资源组:创建用于群集的新资源组。
    • 位置:选择资源组的位置。
    • 群集名称:输入要创建的新群集的名称。
    • 群集登录用户名:输入 Hadoop HTTP 用户名。 默认名称为 admin
    • 群集登录密码:输入 Hadoop HTTP 用户密码。
    • SSH 用户名:输入 SSH 用户名。 默认名称为 sshuser
    • SSH 密码:输入 SSH 用户密码。
    • 安装脚本操作:保留本教程自始至终使用的默认值。

      模板中已硬编码某些属性:群集类型、群集辅助角色节点计数、边缘节点大小和边缘节点名称。

  4. 单击“法律条款”,然后单击“购买”。 确认已选中“固定到仪表板”复选框,然后单击“创建”。

访问边缘节点

边缘节点 ssh 终结点为 <边缘节点名称>.<群集名称>-ssh.azurehdinsight.cn:22。 例如,new-edgenode.myedgenode0914-ssh.azurehdinsight.cn:22。

在 Azure 门户中,边缘节点显示为应用程序。 门户中提供了使用 SSH 访问边缘节点时所需的信息。

验证边缘节点 SSH 终结点

  1. 登录到 Azure 门户
  2. 打开包含边缘节点的 HDInsight 群集。
  3. 在群集边栏选项卡中单击“应用程序”。 此时将显示该边缘节点。 默认名称为 new-edgenode
  4. 单击该边缘节点。 此时将显示 SSH 终结点。

在边缘节点上使用 Hive

  1. 使用 SSH 连接到边缘节点。 有关信息,请参阅将 SSH 与 HDInsight 配合使用

  2. 使用 SSH 连接到边缘节点后,使用以下命令打开 Hive 控制台:

     hive
    
  3. 运行以下命令显示群集中的 Hive 表:

     show tables;
    

删除边缘节点

可以在 Azure 门户中删除边缘节点。

访问边缘节点

  1. 登录到 Azure 门户
  2. 打开包含边缘节点的 HDInsight 群集。
  3. 在群集边栏选项卡中单击“应用程序”。 此时将显示边缘节点的列表。
  4. 右键单击要删除的边缘节点,然后单击“删除”。
  5. 单击“是”确认。

后续步骤

本文介绍了如何添加边缘节点以及如何访问边缘节点。 若要了解更多信息,请参阅下列文章: