Automated, Self-Service Provisioning of VMs Using HyperForm (Part 2) (使用HyperForm自动配置虚拟机(第2部分)
Automated, Self-Service Provisioning of VMs Using HyperForm (Part 2)
原文作者:Amjad Afanah
原文地址:https://dzone.com/articles/automated-self-service-provisioning-of-vms-using-h
译者微博:@从流域到海域
译者博客:blog.csdn.net/solo95
本文同样刊载于腾讯云+:
https://cloud.tencent.com/developer/article/1016130
使用HyperForm自动配置虚拟机(第2部分)
欢迎回来了解如何为您的VM创建自动化的自助配置系统。在第一部分中,我们学习了如何使用HyperForm在Hyper-V上设置和注册虚拟机。现在,我们就深入研究如何进行配置。不再往后拖…
(下文中Machine Compose template,直译:机器撰写模版,全部翻译为Machine Compose模板,译者注)
在Hyper-V上配置虚拟机
用户可以通过基于UI的操作流程或通过定义可从自助服务库请求的,基于YAML的Machine Compose的简单模板来在新创建的上集群上配置Hyper-V虚拟机。推荐的方法是Machine Compose模板,因为它提供了更多的安全性和标准。
基于用户界面的工作流程:用户可以通过导航到机器然后单击+新建按钮选择Hyper-V来请求Hyper-V虚拟机。一旦选择了云提供商,用户可以选择以下选项:
- Node(节点):将在其上配置新VM的Hyper-V节点。
- Instance Type(实例类型) 预定义的模板可用于指定VM的CPU,内存,磁盘和generation(例如cpu = 1,memory = 2GB,disk = 100GB,generation = 1)。用户可以根据自己的需要自定义这些值。
- Image(镜像):这是用于配置的.VHDX模板。
- Network(网络):这是将用于新虚拟机的虚拟网络。
- Skip Agent Install(跳过代理程序安装):如果VM模板已经预安装了HyperForm代理程序,则可以选择此选项。
- Username(用户名):这是登录到虚拟机所需的用户名。
- Password(密码):这是登录虚拟机所需的密码。
- Cluster(集群):这是由用户创建的HyperForm集群。
- VM Count(虚拟机数量):这是可以同时配置的虚拟机数量。
用户可以点击Machine Compose按钮生成一个基于YAML的Machine Compose模板。这可以用来创建一个自用的标准Machine Compose模板,也可以与其他用户使用粒度访问控制来共享。
用户可以导航到Blueprints > App / Machine,然后单击 + New按钮选择Machine Blueprint,为Hyper-V创建一个Machine Compose模板。
以下是在Hyper-V上请求4GB虚拟机的示例模板。
Machine Compose模板支持的参数总结如下:
- description(描述):blueprint/模板的描述。
- instanceType(实例类型):必填项:云服务提供商特定值(例如cpu = 1,内存= 4GB,磁盘= 100GB,generation= 1)。
- region(区域):必填项:Hyper-V节点的名称。
- image(镜像):必填项:.VHDX模板的完整路径(例如\ VFCN10-AD\HyperForm\Template\HyperForm_Ubuntu-14.04_64_10.0.254.100.vhdx)。
- username(用户名):这是用来连接到虚拟机的用户名。
- password(密码):这可以参照存储在凭据库(Credentials store)中的私钥。存储在“ Cloud Providers”>“Credentials”页面中的凭据项目的ID 将是必需的。以下是可接受的格式:“ {{credentials | 2c91802a520736224015209a6393098322}} ”。
- network(网络):云提供商特定值(例如虚拟交换机1)。
- count(总数):虚拟机总数,默认为1。
除了这些支持的参数之外,您还会注意到这个模板引用了一个“插件”。一个插件可以被调用,如下所示:
plugins:
- !plugin
id:
插件可以通过导航到 Blueprint > Plugins然后点击+ 按钮来创建。插件是一个简单的脚本,可以运行在所配置的服务器上或Docker容器上。任何数量的配置要求都可以使用服务器插件:
- 安装Puppet Modules, Chef Recipes, Ansible Playbook等
- 从安全的S3 bucket中检索私有Docker注册表所需的CA证书,然后将其保存在正确的目录中(例如/etc/docker/certs.d/:5000/ca.crt)。
Machine Compose模板具有其他高级选项。
- Cost Profile(成本配置文件):这是您可以在创建成本配置文件,在Policies >Cost Profiles下。您可以按小时/每周/每月的方式定义每个资源的成本。您可以将多个成本配置文件附加到单个模板 - 例如实例类型的不同成本配置文件,使用的EBS存储等。
- Entitled Users(已授权的用户): :这些是允许使用此模板设置AWS实例的用户。授权用户无权管理或删除此模板,只能使用该模板。
保存Machine Blueprint后,用户可以从自助服务Libarary请求本机。用户可以单击Customize,然后选择用于配置Hyper-V虚拟机的Cloud Provider和Cluster 。
一旦Hyper-V虚拟机配置完成,用户就可以监控CPU,内存,磁盘利用率和容器(Containers)运行等关键统计信息。这可以通过导航到 Machines ,然后 从 Monitoring 下拉菜单中选择 Stats或Mangaer。
还可以访问被配置的机器的浏览器内置终端(in-browser terminal)。这可以通过导航到Machine ,然后 从 Manage 下拉菜单中选择 Terminal访问 。
还可以访问虚拟机上部署的应用程序列表。这可以通过导航到Machines ,然后从Manage 下拉菜单中选择Apps来访问。
现在你的集群已经设置好了,现在你可以在新创建的服务器上运行任何Docker应用程序。这可以通过导航到Library ,然后单击 任何已发布的应用程序模板上的 Customize来完成 。然后,您可以选择一个 Cluster ,然后单击 Run。
请查阅我们发布的Docker应用程序模板 - 包括multi-tier.NET,ASP.NET,Java堆栈,LAMP,LAOP和LAPP堆栈,Mongo副本集,Couchbase集群,MEAN.JS,Wordpress,Drupal等等。
(以下是最后一段原文,以防上面某些的项目翻译不准确。
Check out our published Docker application templates – including multi-tier .NET, ASP.NET, Java stacks, LAMP, LAOP & LAPP stacks, Mongo Replica Set, Couchbase Cluster, MEAN.JS, Wordpress, Drupal, and many others.)