vRA 7.3 环境扩展 (Part 2)

作者:Nikolay Nikolov 

翻译:李崇民

上一篇文章中 我们安装了一个分布式的vRA 7.3环境,其中每个角色都采用了单节点方式。

由于vRA是你的关键资产,当你必须要为vRA中的每个角色额外增加一个节点时,会希望系统服务中断的时间越少越好。

有几种实现方式可以达成这个目标,人们通常会选择其中最麻烦的一种,即使用VAMI(Virtual Appliance Management Infrastructure)和vRA套件的安装程序。其实还有其它选项,例如使用每一个vRA虚拟程序中都有的非常酷的vra-command工具。除了看起来酷以外,将这些安装任务自动化后,在云服务需要更高性能时,可以随时添加节点。

设备

我们从给环境增加一个虚拟设备开始。整个过程可能有一点奇怪,我们并不是真的增加一个新设备,而是将其加入当前节点代表的群集中。为方便说明,将我们上文安装过的节点命名为Node01,新节点命名为Node02,具体过程如下:

1、对新设备进行配置,包括IP地址,DNS等。

2、连上Node01的SSH。

3、取得Node02的VAMI证书,这样Node01可以相信Node02:

NEWVACERT=`echo -n | openssl s_client -connect node02.domain.local:5480 | sed -ne ‘/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p’`

4、取得Node01的node ID:

vra-command list-nodes

5、执行下述命令:

vra-command execute –node cafe.node.ID cluster-invite –VaHost node02.domain.local:5480 –VaUser root –VaPassword SomePass  –VamiCertificate “$NEWVACERT”

要注意替换上面命令中的node ID 和 password 参数。

现在你要将这两个服务器加入到负载均衡中,这里不推荐使用DNS轮循(round robin)的方法。

Manager

添加一个新管理服务器可以保证管理服务总是可用。vRA 7.3新增了一个非常棒的功能,可以自动从管理服务故障中恢复。

1、安装好新管理服务器,并做好所有准备工作。

2、向新服务器的私有证书中心导入管理服务的证书。

3、可以从https://vanode:5480/i安装管控代理,不过既然主题是自动化,你可以使用脚本来安装管控代理

4、连接到Node01上的SSH。

5、取得新管理服务器的Node ID:

vra-command list-nodes

6、取得管理服务证书的指纹(确保已经与安装过程中指定的负载均衡的全称域名连上):

MGRCERT=`echo -n |openssl s_client -connect  nn-scale-mgr.domain.local:443 | openssl x509 -noout -fingerprint|sed -e ‘s/://g’ -e ‘s/^.*=//’`

7、安装服务:

vra-command execute –node “Manager-Node-ID” install-manager-service –SqlServer “your-sql-server-fqdn” –DatabaseName “your-db” –UseWindowsAuthentication True  –IaaSWebAddress ‘nn-scale-web.domain.local’ –SecurityPassphrase ‘dbpass’ –ServiceUser “domain\\nn-svc-vcac” –ServiceUserPassword ‘ServiceUsrPass’ –ManagerServiceStartAutomatically True –ManagerServiceFailoverModeEnabled True –ManagerServiceCertificate “$MGRCERT” –VraAddress “nn-scale-va.domain.local”

确保根据你的具体环境替换掉上面命令中的相应参数。看到上面命令里的ManagerServiceFailoverModeEnabled标志了吗?如果希望新管理服务器能自动接管服务,这个标志是必需的。

8、配置负载均衡器。

DEM

增加一个DEM orchestrator和Worker的过程和上面描述的过程几乎相同,只要执行下列命令:

1、取得将要安装的节点的Node ID,这时该节点上面应该已经安装了管控代理:

vra-command list-nodes

2、取得vRA Automation Console的证书(VA的负载均衡):

VRACERT=`echo -n | openssl s_client -connect  nn-scale-va.domain.local:443 | openssl x509 -noout -fingerprint|sed -e ‘s/://g’ -e ‘s/^.*=//’`

3、安装DEM Orchestrator:

vra-command execute –node “DEMOnodeID” install-dem –ServiceUser “domain\\nn-svc-vcac” –ServiceUserPassword ‘ServiceUsrPass’ –DemName “DEM2” –DemDescription “Secondary DEM Orch” –DemRole Orchestrator –ManagerServiceAddress “nn-scale-mgr.domain.local” –IaaSWebAddress ‘nn-scale-web.domain.local’ –WebUserName “domain.local\\nn-svc-vcac” –WebUserPassword ‘WebUserPass’ –VraAddress “nn-scale-va.domain.local” –VraWebCertificateThumbprint “$VRACERT”

参数WebUserName在多数情况下就是你正在使用的服务帐户用户名。

4、安装DEM Worker:

/usr/sbin/vra-command execute –node “DEMWnodeID” install-dem –ServiceUser “domain\\nn-svc-vcac” –ServiceUserPassword ‘ServiceUsrPass’ –DemName “DEMW2” –DemDescription “Second DEM W” –DemRole Worker –ManagerServiceAddress “nn-scale-mgr.domain.local” –IaaSWebAddress “nn-scale-web.domain.local” –WebUserName “domain\\nn-svc-vcac” –WebUserPassword ‘ServiceUsrPass’ –VraAddress “nn-scale-va.domain.local” –VraWebCertificateThumbprint “$VRACERT”

对DEM角色来说,不需要进行负载均衡设置。

Web 证书

最后,由于证书的关系,Web Server的安装看起来是最复杂的部分。还记得我们是如何在只有一个节点时,使用SAN证书安装Web角色的吗?想成功地安装一个新的Web Server,首先需要将现有证书替换为一个包含新节点全称域名的新证书:

1、创建一个包含节点的全称域名的新证书:

environment002

2、将新证书转换成为包含私钥和公钥的PEM文件。

3、将公钥与私钥赋给某些变量,如$publicKey 和 $privateKey。可以使用你喜爱的工具来提取它们。

4、取得新Web Server的Node ID:

vra-command list-nodes

5、安装证书:

vra-command execute –node “WebNodeID” install-certificate –CertificateData “${publicKey}” –PrivateKeyData “${privateKey}” –CertificatePassword “CertPass” –CertificateFriendlyName “new scaled web service” –StoreNames “My;TrustedPeople” –StoreLocation “LocalMachine”

这条命令会自动将证书导入到指定节点的证书中心。不足之处是需要在每个Web Server上都执行一次,如果你现有的节点多于一个,还需要手动配置你的IIS。因此,我推荐的方式是使用VAMI或API来实现证书替换这部分工作(将在Part 3中详细讲述)。

Web

现在我们已经做好了所有的准备,现在开始安装新的Web服务器吧。

1、安装管控代理。

2、得到新的Node ID。

3、把证书导入到机器的本地存储中。

4、取得网络证书指纹(Web certificate thumbprint),可参照上面的openssl命令进行修改。

5、取得vRA Automation Console的证书指纹。

6、安装Web角色:

vra-command execute –node “WebNodeID” install-web –SqlServer “SQLServerFQDN” –DatabaseName “nn-scale-vra” –UseWindowsAuthentication True  –IaaSWebAddress ‘nn-scale-web.domain.local’ –SecurityPassphrase ‘SecurityPass’ –ServiceUser “domain\\nn-svc-vcac” –ServiceUserPassword ‘ServiceUserPass’  –VraAddress “nn-scale-va.domain.local” –VidmAdminPassword ‘vIDMAdminPass’ –VraWebCertificateThumbprint “vRACertThumbprint” –WebCertificate “WebCertThumbprint”

现在我们完成了新节点的添加,使用vra-command是一个管理基础设施的好方法,现在开始使用吧。

下一篇文章将讲述如何使用Config REST API方式来对环境进行扩展。

—end—