Automated, Self-Service Provisioning of VMs Using HyperForm (Part 1)
原文作者:Amjad Afanah
原文地址:https://dzone.com/articles/automated-self-service-provisioning-of-virtual-mac
译者:@从流域到海域
译者博客:blog.csdn.net/solo95
本文同样刊载于腾讯云+:
https://cloud.tencent.com/developer/article/1015752
使用HyperForm自动配置虚拟机(第1部分)
现在,HyperForm通过自助服务模式在Hyper-V上提供了超强的VM配置自动化功能,使用户能够按需配置基础架构(infrastructure)。借助HyperForm,企业能够自动化VM配置,但是需要提供个性化基础架构服务所需的审批工作流程和粒度授权,以满足个性化的IT和业务需求。
HyperForm允许组织:
- 通过一个代理连接多个Hyper-V节点或故障转移集群(Failover Clusters),并为每个注册的节点或故障转移群集定制授权和配额
- 经由基于UI的工作流或标准化YAML机的blueprints在Hyper-V上的节点的自服务库授权用户提供虚拟机(即blueprints代码)有权对他们
- 根据Hyper-V 上提供的可用.VHDX模板选择一个镜像。
- 自定义CPU,内存,磁盘并选择一个网络。
- 注册已经运行的Linux或Windows虚拟机。
- 管理配置虚拟机的第二天(day-two)操作(例如启动,停止和重新启动)并通过安全消息队列访问浏览器内置终端来访问虚拟机。
- 监控预配置的虚拟机(CPU,内存,磁盘利用率),并在VM发生故障或性能指标超出预定义阈值时收取通知/警报。
- 管理整个企业的多个租户。
- 为每个租户注册多个LDAP服务器(例如Microsoft Active Directory),并允许用户进行无缝验证。这里有一个关于这个主题的详细的博客。
- 管理用户级别的权限和角色。
- 管理批准政策和配额,并通过成本配置文件跟踪基础架构和应用程序的成本。
与Hyper-V管理解决方案相比,HyperForm的优势在于它的安装非常简单,支持18个云(除Hyper-V外),提供机器和应用程序blueprints的自助服务,提供历史监控和警报,提供了卓越的Docker应用程序建模和生命周期管理。
通过代理注册Hyper-V节点或故障转移集群(Cluster)
登录到HyperForm后,用户可以导航到云提供商,然后单击+新建按钮以选择Hyper-V。用户可以在这之后填写请求信息。
- 名称:Hyper-V节点或故障转移群集的名称
- 端点 URL:这是运行代理的服务器的URL。代理通过SSL进行安全保护,因此该URL应以HTTPS开头。
要从头开始安装代理,请单击“ 安装代理 ”链接。自动生成的脚本可供用户在Hyper-V服务器上安装代理。您可以通过将“some-password”重写为您自定义的密码来更改脚本中的密码。 - 密码:这是代理使用的密码。
- Hyper-V集群/节点:这是Hyper-V节点或Hyper-V集群的名称
- 模板位置:.VHDX模板所在的共享位置(例如\VFCN10-AD\HyperForm\Template)
- VM目标:将用于VM元数据和硬盘的目标(例如\VFCN10-AD\HyperForm\VHDx)
高级配置也是可用的。这些可以通过点击高级配置按钮来定义。
可选字段允许您强制执行粒度访问控制,并将此提供者与配额策略相关联。
- 授权的的用户:Yhese是允许使用此云提供商(Cloud Provider)来进行对基础架构进行配置的用户。授权用户无权管理或删除此云提供商,并且将无法查看任何凭据。
- 授权的Blueprints:这些是可以与此云提供程序一起使用的由计算机所撰写的模板。例如,如果租户管理员希望限制用户在已认证的操作系统上配置4GB计算机,则用户将无法使用此云提供商配置任何其他计算机。
- 自由格式规定:如果启用,允许授权用户调配虚拟机的基于UI的工作流程。
- 强制审批:如果启用,允许云提供商所有者批准授权用户的新VM供应请求
- VM限制:这是此云提供商可以使用的最大虚拟机数量
- 配额策略:这些是预定义的策略,用于设置VM的数量或VM的成本。可以选择多个配额策略来自定义每个用户或每个用户组的控件。
创建一个集群(VM池)
混合云或本地开发机器上的服务器可以与集群关联,集群是基础架构的逻辑映射。用户可以通过导航到集群页面然后单击 +新建 按钮来创建集群。
集群具有高级选项,如:
- 网络:用户可以选择多种类型的网络。一旦将计算机配置到集群中,用户就不能更改网络设置。这里是可用的网络:
- Docker:允许多个容器在同一个主机上相互连接。
- 编织:允许多个容器从多个主机相互连接。
- Docker Swarm:允许容器从多个主机相互连接。
- 跳过Docker安装:推荐用于具有非容器工作负载的VM配置(例如,预先安装在VM模板中的软件)。
租约:用户可以指定此集群中的服务器何时到期,以便 - HyperForm可以自动销毁这些服务器。
- 置换策略:用户可以从多种展示位置策略中进行选择,例如基于邻近度的策略,循环法或默认策略,这是一种基于容量的置换策略,可将Docker工作负载放置在具有足够计算资源的主机上。
- 强制审批:如果启用,允许云提供商所有者批准授权用户的新VM供应请求
- 粒度访问控制:租户管理员可以定义对集群的访问控制,以指定谁可以通过授权用户将Docker应用程序部署到该集群。例如,开发者可以注册他/她的本地机器并将其标记为私人。另一方面,租户管理员可以与特定用户组或所有租户用户共享一个集群。此外,集群所有者可以通过已授权的Blueprints指定可以将哪些应用程序模板部署到此群集。如果集群将在上游环境中使用,则只能在其上部署特定的应用程序模板(或“blueprints”)。
注册已在Hyper-V上运行的虚拟机
用户可以注册已经运行的AWS实例。这可以通过先导航到机器然后再单击+新建按钮来完成。用户之后可以选择“ Linux主机/ VM ”工作流程并填写必填字段。
- 名称:您想要注册的服务器的名称。这不一定需要是实际的主机名。
- IP地址:这是您正在注册的服务器的IP地址。
- 集群:这是新服务器将成为的其中一员的集群。确保先创建集群 - 在注册服务器或设置新服务器之前。(即该新服务器将被分配到所填写的集群中去,译者注)
一旦用户点击保存,就会出现一个自动生成的脚本。您可以在您尝试以root 用户身份注册的主机上运行此脚本。脚本将检查是否已经安装了Docker。如果不是,那么将安装Docker,DCHQ代理和Weave(可选)。
以下是Docker网络的脚本:
curl -Ls <dchq.agent.script.url> | bash -s <DCHQ Server Key> <dchq.agent.connect.ip><dchq.agent.connect.port> docker.local <New Server IP>
如果您使用HyperForm On-Premise,则可以通过导航到“ 系统设置”来更改默认参数。
请注意,如果在此群集上启用了Weave,则该脚本将遵循下面的格式。
curl -Ls < dchq.agent.script.url> | bash -s < DCHQ Server Key> < dchq.agent.connect.ip> < dchq.agent.connect.port> weave.local <weave-password>
<weave.ip>
...其中
<weave.ip>是Weave集群中第一个服务器的IP地址
任务可以使用我们的REST API以编程方式自动创建“Docker服务器”((https://dchq.readme.io/docs/dockerservers)。
现在万事俱备。你已经准备好你的虚拟机了。请继续关注如何在第二部分中配置它们。