部署在VM上的vCenter迁移

一.故障描述
近期因项目实施需要,多次对VM HOST上部署的vCenter进行vMotion迁移(跨host跨datastore)。结果每次都在迁移到一半左右直接整个vSphere Client就链接不到vCenter,当然,第一次出现这个问题的时候当时就开始冷汗直冒了。甚至有直接重做vCenter的场景出现过,不说啦都是....
排除以上提到的重做vCenter(这个办法必定有效咯,因为毕竟新装的基本不会出问题),还做过以下尝试:
1).直接克隆一个Vc,结果可想而知没启动起来服务;
2).先做个快照,再克隆,结果快照克隆不过去(当然是直接起不来服务)。

非资深VM维护人员,技术水平可能会被各位看官笑哈!为了以后不经常为此折腾,找日志吧,就说么这才是正道。vpxd.log,服务起不来的时候往往会有类似的日志(以下日志摘自kb,勿怪):
--> Backtrace:
--> backtrace[00] rip 000000018018977a
--> backtrace[01] rip 0000000180100c98
--> backtrace[02] rip 0000000180101fae
--> backtrace[03] rip 000000018008aeab
--> backtrace[04] rip 0000000000564971
--> backtrace[05] rip 0000000000501298
--> backtrace[06] rip 00000000005016c9
--> backtrace[07] rip 0000000000470fae
--> backtrace[08] rip 0000000140d7bfb8
--> backtrace[09] rip 000000013fc70078
--> backtrace[10] rip 000000013fc7016a
--> backtrace[11] rip 000000013fc70279
--> backtrace[12] rip 000000013fc70609
--> backtrace[13] rip 000000013ffb2903
--> backtrace[14] rip 000000014075e4b9
--> backtrace[15] rip 000000014075835c
--> backtrace[16] rip 0000000140978a3b
--> backtrace[17] rip 000007feff4fa82d
--> backtrace[18] rip 000000007750652d
--> backtrace[19] rip 000000007788c521
-->


抓到点看起来比较关键的信息去KB里面找,结果找到了一篇KB(2036170),主要描述SSO实施变更后会有可能无法启动。涵盖我中招的现象,有以下几点:
1).给SSO服务器实施过变更:例如windows补丁、域名变更、升级vSphere补丁;
2).对vCenter有影响的修改等
那么,为什么呢? Cause部分明确说明:变更完成后重启机器后导致的主机名变动、域变更等都会导致SSO无法启动,接着vCenter就起不来了。更过分的是SSO安装的服务器的内存、CPU、MAC地址变动都会导致SSO无法启动,总算知道为啥克隆的vCenter启动不了了, MAC地址不一样了嘛

先说问题处理过程,最初这个KB没有太过仔细的看。下面有个引用的KB说是Moving a virtualized vCenter Server virtual machine between ESXi/ESX hosts with different processor types (2058684),正是我要的,直接拿过来参考。最后通过导出一个vCenter的OVF文件再导入到目标的HOST和储存后总算可以起来了!

二.材料梳理及存档
2.1.After making a change or restarting vCenter Single Sign-On server system, vCenter Server 5.1.x fails to start (2036170)
除了上述提到的日志,SSO服务器配置移动导致服务无法启动的相关日志还有:C:\Program Files\VMware\Infrastructure\SSOServer\utils\logs\下的:
discover-is.log文件:
- VCHOSTNAME.test.vmware.net,,,,Executing action: 'discover-is'
-VCHOSTNAME.test.vmware.net,,,,Discovering identity sources
-VCHOSTNAME.test.vmware.net,,,,ERROR: Bean (PrimaryCommandTarget) initialization failure
com.rsa.ims.security.keymanager.sys.SystemModificationThresholdException: System was modified beyond the allowed threshold, cannot decrypt.
com.rsa.common.SystemException: Bean (PrimaryCommandTarget) initialization failure
com.rsa.ims.security.keymanager.sys.SystemModificationThresholdException: System was modified beyond the allowed threshold, cannot decrypt.
Caused by: com.rsa.ims.components.ComponentFailureException: Unable to load bean named PrimaryCommandTarget
imsTrace.log文件:
System was modified beyond the allowed threshold, cannot decrypt.

以上这些现象可能是因为对SSO服务所在Server进行了异动,导致服务无法启动。处理方式为重新恢复master password,这个是否和整个机器的相关参数有关系原文并未说明。步骤如下:
1).以管理员方式运行cmd;
2).运行以下设置Java家目录(以vc实际安装目录为准):
set JAVA_HOME=C:\Program Files\VMware\Infrastructure\jre
3).到SSO服务安装目录(默认:C:\Program Files\VMware\Infrastructure\SSOServer\Utils)中运行以下命令:
rsautil manage-secrets -a recover -m masterPassword
以上命令会更新masterPassword(admin@system),密码部分请替换为真实密码。
4).重新启动SSO服务及VC相关服务。

2.2.Moving a virtualized vCenter Server virtual machine between ESXi/ESX hosts with different processor types (2058684)
因处理器类型不一致的情况下需要在关机情况下才能vMotion,此文章主要介绍处理器类型不一样的HOST之前迁移vCenter的方式。需要考虑的信息主要如下(主要描述SSO和vCenter安装在同一台VM的情况):
1).处理器类型不一致也可能导致SSO无法启动;
2).VM vCenter的如果有使用分布式虚拟交换机的情况下,需要先切换为普通vSwitch;
3

共享内存但需要迁移VM HOST的迁移步骤如下:
1).关闭vCenter并连接到vCenter所运行的HOST;
2).从HOST上将该VM从inventory中移除;
3).在新的HOST上将vCenter添加到inventory并开机;
4).如果开启过程中提问uuid.alterd,选择"I moved it"防止生成新的UUID同样会导致SSO无法启动。
无共享内存但需要迁移VM HOST的迁移步骤如下:
1).记录现有网卡的MAC地址;
2).克隆现有vCenter到新的HOST主机并关闭现有vCenter;
3).将克隆的vCenter的MAC地址修改为同原有MAC地址一致;
4).链接到新的HOST主机并开启新的vCenter Server。
OVF方式迁移:
1).vSphere Client直接登录到vCenter所在的HOST主机;
2).关闭vCenter并将其导出为OVF文件;
3).链接到目标HOST斌将OVF部署;
4).修改新VM的MAC地址并启动VM即可启动VC。

三.信息总结
此文仅适用于5.X的相关故障处理,如果可以直接vMotion成功可直接vMotion。另外还有以下总结信息:
1).出问题当然是尽快找日志,找材料排查;
2).vCenter这个设计希望以后可以有所改善;
3).系统初期设计至关重要,例如CPU太少,可能加完就起不来了哦。

你可能感兴趣的:(VMware,vSphere)