Note

Azure 具有用于创建和处理资源的两个不同的部署模型:Resource Manager 和经典。 这篇文章介绍了如何使用这两种模型,但 Azure 建议大多数最新部署使用 Resource Manager 模型。

配置本地客户端计算机,将作业提交到 Azure 中的 Microsoft HPC Pack 群集。本文介绍如何使用客户端工具设置本地计算机,以通过 HTTPS 将作业提交到 Azure 中的群集。这样,多个群集用户就可以将作业提交到基于云的 HPC Pack 群集中,而无需直接连接到头节点 VM 或访问 Azure 订阅。

先决条件

  • Azure VM 中部署的 HPC Pack 头节点 - 建议使用 Azure 快速入门模板或 Azure PowerShell 脚本等自动化工具来部署头节点和群集。需要获得头节点的 DNS 名称和群集管理员的凭据才能完成本文中的步骤。

  • 客户端计算机 - 需要有可运行 HPC Pack 客户端实用工具的 Windows 或 Windows Server 客户端计算机(请参阅系统要求)。如果只想使用 HPC Pack Web 门户或 REST API 来提交作业,则可以使用自选的任意客户端计算机。

  • HPC Pack 安装媒体 - 若要安装 HPC Pack 客户端实用工具,可从 Microsoft 下载中心下载最新版 HPC Pack (HPC Pack 2012 R2) 的免费安装包。确保下载的 HPC Pack 版本与头节点 VM 上安装的版本相同。

步骤 1:在头节点上安装并配置 Web 组件

若要使 REST 接口可通过 HTTPS 将作业提交到群集,请确保在 HPC Pack 头节点上配置了 HPC Pack Web 组件。若尚未安装,则先通过运行 HpcWebComponents.msi 安装文件来安装 Web 组件。然后,通过运行 HPC PowerShell 脚本 Set-HPCWebComponents.ps1 来配置组件。

有关详细过程,请参阅安装 Microsoft HPC Pack Web 组件。

Tip

HPC Pack 的某些 Azure 快速启动模板将自动安装并配置 Web 组件。如果使用 HPC Pack IaaS 部署脚本创建群集,可在部署期间选择安装并配置 Web 组件。

安装 Web 组件

  1. 使用群集管理员的凭据连接到头节点 VM。

  2. 在头节点上从 HPC Pack 安装程序文件夹中运行 HpcWebComponents.msi。

  3. 按照向导中的步骤安装 Web 组件。

配置 Web 组件

  1. 在头节点上,以管理员身份启动 HPC PowerShell。

  2. 若要将目录切换到配置脚本所在的位置,请键入以下命令:

    复制
    cd $env:CCP_HOME\bin
  3. 若要配置 REST 接口并启动 HPC Web 服务,请键入以下命令:

    复制
    .\Set-HPCWebComponents.ps1 -Service REST -enable
  4. 在系统提示选择证书时,请选择与头节点的公共 DNS 名称对应的证书。例如,若使用经典部署模型部署头节点 VM,则证书名称将类似于:CN=<HeadNodeDnsName>.chinacloudapp.cn。若使用 Resource Manager 部署模型,则证书名称将类似于:CN=<HeadNodeDnsName>.<region>.chinacloudapp.cn。

    Note

    稍后将作业从本地计算机提交到头节点时选择此证书。不要选择或配置与 Active Directory 域中头节点的计算机名称对应的证书(例如 CN=MyHPCHeadNode.HpcAzure.local)。

  5. 若要配置用于作业提交的 Web 门户,请键入以下命令:

    复制
    .\Set-HPCWebComponents.ps1 -Service Portal -enable
  6. 脚本完成后,请键入以下命令停止并重启 HPC 作业计划程序服务:

    复制
    net stop hpcscheduler
    net start hpcscheduler

步骤 2:在本地计算机上安装 HPC Pack 客户端实用工具

若要在计算机上安装 HPC Pack 客户端实用工具,请从 Microsoft 下载中心下载 HPC Pack 安装程序文件(完整安装)。开始安装时,请选择针对 HPC Pack 客户端实用工具的安装选项。

若要使用 HPC Pack 客户端工具向头节点 VM 提交作业,还需要导出头节点中的证书并将其安装在客户端计算机上。证书必须为 .CER 格式。

从头节点中导出证书

  1. 在头节点上,向 Microsoft 管理控制台中添加用于“本地计算机”帐户的证书管理单元。有关添加此管理单元的步骤,请参阅向 MMC 中添加证书管理单元。

  2. 在控制台树中,依次展开“证书 - 本地计算机”>“个人”,然后单击“证书”。

  3. 找到在步骤 1:在头节点上安装并配置 Web 组件中为 HPC Pack Web 组件配置的证书(例如 CN=<HeadNodeDnsName>.chinacloudapp.cn)。

  4. 右键单击该证书,然后单击“所有任务”>“导出”。

  5. 在证书导出向导中,单击“下一步”并确保选中“否,不导出私钥”。

  6. 执行此向导中的其余步骤,以“DER 编码二进制 X.509 (.CER)”格式导出证书。

在客户端计算机上导入证书

  1. 将你从头节点中导出的证书复制到客户端计算机上的某个文件夹中。

  2. 在客户端计算机上,运行 certmgr.msc。

  3. 在证书管理器中,依次展开“证书 - 当前用户”>“受信任的根证书颁发机构”,右键单击“证书”,然后单击“所有任务”>“导入”。

  4. 在证书导入向导中单击“下一步”,然后按照步骤将从头节点中导出的证书导入“受信任的根证书颁发机构”存储。

Tip

由于客户端计算机未识别头节点上的证书颁发机构,因此可能会出现安全警告。出于测试目的,可忽略此警告并完成证书导入。

步骤 3:在群集上运行测试作业

若要验证你的配置,可以尝试通过本地计算机在 Azure 中的群集上运行作业。例如,可以使用 HPC Pack GUI 工具或 HPC Pack 命令行命令向群集提交作业,也可以使用基于 Web 的门户来提交作业。

在客户端计算机上运行作业提交命令

  1. 在安装了 HPC Pack 客户端实用工具的客户端计算机上,启动命令提示符。

  2. 键入示例命令。例如,若要列出群集中的所有作业,可键入如下所示的某个命令,具体取决于头节点的完整 DNS 名称:

    复制
    job list /scheduler:https://<HeadNodeDnsName>.chinacloudapp.cn /all

    或

    复制
    job list /scheduler:https://<HeadNodeDnsName>.<region>.chinacloudapp.cn /all

    Tip

    在计划程序 URL 中使用头节点的完整 DNS 名称,而不是 IP 地址。如果指定 IP 地址,将会出现类似于下面的错误:“服务器证书必须具有有效的信任链,或放置在受信任的根存储区中。”

  3. 出现提示时,请键入 HPC 群集管理员或你配置的另一群集用户的用户名(格式为 <DomainName>\<UserName>)和密码。你可以选择在本地存储凭据以执行更多作业操作。

    将显示作业列表。

在客户端计算机上使用 HPC 作业管理器

  1. 如果以前提交作业时未存储群集用户的域凭据,则可在凭据管理器中添加凭据。

    a.在客户端计算机上的控制面板中,启动凭据管理器。

    b.单击“Windows 凭据”>“添加普通凭据”。

    c.指定 Internet 地址(例如 https://<HeadNodeDnsName>.chinacloudapp.cn/HpcScheduler 或 https://<HeadNodeDnsName>.<region>.chinacloudapp.cn/HpcScheduler )以及群集管理员或所配置的另一群集用户的用户名(格式为 <DomainName>\<UserName>)和密码。

  2. 在客户端计算机上启动 HPC 作业管理器。

  3. 在“选择头节点”对话框中,键入指向 Azure 中头节点的 URL(例如 https://<HeadNodeDnsName>.chinacloudapp.cn 或 https://<HeadNodeDnsName>.<region>.chinacloudapp.cn )。

    HPC 作业管理器将会打开并显示头节点上的作业列表。

使用在头节点上运行的 Web 门户

  1. 在客户端计算机上启动 Web 浏览器,输入以下任一地址,具体取决于头节点的完整 DNS 名称:

    复制
    https://<HeadNodeDnsName>.chinacloudapp.cn/HpcPortal

    或

    复制
    https://<HeadNodeDnsName>.<region>.chinacloudapp.cn/HpcPortal
  2. 在出现的安全性对话框中,键入 HPC 群集管理员的域凭据。(你还可以添加具有不同角色的其他群集用户。请参阅管理群集用户。)

    Web 门户将会打开并显示作业列表视图。

  3. 若要从群集中提交返回“Hello World”字符串的示例作业,请在左侧导航区域中单击“新建作业”。

  4. 在“新建作业”页面上的“从提交页面”下,单击“HelloWorld”。此时将显示作业提交页面。

  5. 单击“提交”。出现提示时,请提供 HPC 群集管理员的域凭据。作业已提交,作业 ID 将出现在“我的作业”页面上。

  6. 若要查看提交的作业的结果,请单击作业 ID,然后单击“查看任务”,在“输出”下方查看命令输出。

后续步骤

将 HPC 作业从本地计算机提交到部署在 Azure 中的 HPC Pack 群集的更多相关文章

  1. 使用 Azure Active Directory 管理 Azure 中的 HPC Pack 群集

    Microsoft HPC Pack 2016 支持在 Azure 中部署 HPC Pack 群集的管理员将其与 Azure Active Directory (Azure AD) 集成. 请按照本文 ...

  2. 使用 HPC Pack 为 Azure 中的 Windows HPC 工作负荷创建和管理群集的选项

    利用 Microsoft HPC Pack 和 Azure 的计算与基础结构服务,创建和管理基于云的高性能计算 (HPC) 群集. HPC Pack 是在 Azure 和 Windows Server ...

  3. 在 Azure VM 中使用应用商店映像创建 HPC Pack 群集的头节点

    使用 Azure 应用商店和 Azure 门户中的 Microsoft HPC Pack 2012 R2 虚拟机映像创建 HPC 群集的头节点. 此 HPC Pack VM 映像基于预安装了 HPC ...

  4. 关于如何使用sourcetree将本地项目提交到远端github总结?

    使用sourcetree将本地项目提交到github里,目前来说还是很流行的,我也是听说好玩,所以来琢磨了一下,从环境搭建到配置好,差不多用了一下午加一晚上的时间,有点虐心,好吧,废话不多说,介绍一下 ...

  5. webservice 测试窗体只能用于来自本地计算机的请求

    Question: WebService部署成站点之后,如果在本地测试webservice可以运行,在远程却显示“测试窗体只能用于来自本地计算机的请求”或者"The test form is ...

  6. 本地计算机 上的 OracleOraDb11g_home1TNSListener 服务启动后停止

    今天玩oracle的时候突然遇到一个问题:本地计算机 上的 OracleOraDb11g_home1TNSListener 服务启动后停止.某些服务在未由其他服务或程序使用时将自动停止. 在网上找解决 ...

  7. MySQL 安装和启动服务,“本地计算机 上的 MySQL 服务启动后停止。某些服务在未由其他服务或程序使用时将自动停止。”

    MySQL 安装和启动服务,以及遇到的问题 MySQL版本: mysql-5.7.13-winx64.zip (免安装,解压放到程序文件夹即可,比如 C:\Program Files\mysql-5. ...

  8. 【GIT】使用Git命令窗口将本地工程提交至远程GitHub

    目标: 1.解决的问题是如何通过Git命令窗口将本地工程提交至GitHub. 2.方便园友的同时也方便自己以后解决此类问题. 步骤: 1.首先登陆GitHub网站https://github.com/ ...

  9. 本地计算机 上的 Redis Server 服务启动后停止

    服务器上Redis服务安装正常..却启动不了.. 报错  :   本地计算机 上的 Redis Server 服务启动后停止.某些服务在未由其他服务或程序使用时将自动停止. 最后发现是Redis的配置 ...

随机推荐

  1. 文件句柄FileDescriptor的hanle/fd两个字段分析

    对于FileInputStream/FileOutputStream/RandomAccessFile,使用handle来表示底层的文件句柄 对于ServerSocket/Socket,使用fd来表示 ...

  2. Go http handler 中间件

    在http的handler处理中加上中间件,可以进行过滤.记录日志.统计和统一返回结果 package main import ( "fmt" "net/http&quo ...

  3. [Python学习笔记-005] 理解yield

    网络上介绍yield的文章很多,但大多讲得过于复杂或者追求全面以至于反而不好理解.本文用一个极简的例子给出参考资料[1]中的讲解,因为个人觉得其讲解最为通俗易懂,读者只需要对Python的列表有所了解 ...

  4. http缓存详解,http缓存推荐方案

    前言 通过本文,你将了解到http缓存机制是怎样的,no-cache到底有没有缓存,地址栏回车,F5,ctrl+F5的区别,以及当下较为推荐的缓存方案等. 自从和前端组的同事一起整了个前端扫盲计划,想 ...

  5. 对于dll(动态链接库)的理解

    之前,尝试过写过dll,但是对于dll的理解还是不够深刻吧.今天,又加深了对于dll的理解程度,故记下以免以后忘记. 无论是c还是c++,我们通常先将源文件编译成中间代码,在Windows下是&quo ...

  6. .NET Core2.0 使用EF做数据操作

    原文链接:https://www.cnblogs.com/chrisluo/p/7500462.html

  7. 常用的7个SQl优化技巧

    作为程序员经常和数据库打交道的时候还是非常频繁的,掌握住一些Sql的优化技巧还是非常有必要的.下面列出一些常用的SQl优化技巧,感兴趣的朋友可以了解一下. 1.注意通配符中Like的使用 以下写法会造 ...

  8. EWS 邮件提醒

    摘要 之前做的邮件提醒的项目,最近需要优化,由于使用了队列,但即时性不是特别好,有队列,就会出现先后的问题,最近调研了exchange 流通知的模式,所以想使用流通知模式和原先的拉取邮件的方法结合,在 ...

  9. 彻底理解voliate

    1.voliate简介 在上一篇文章中我们深入理解了java关键字synchronized,我们知道在java中还有一大神器就是关键volatile,可以说是和synchronized各领风骚,其中奥 ...

  10. 了解java虚拟机—非堆相关参数设置(4)

    非堆内存相关配置 -XX:PermSize 永久区初始大小 -XX:MaxPermSize 永久区最大大小 在JDK1.8中使用-XX:MxMetaspaceSize配置永久区最大大小 -Xss 线程 ...