在上一篇随笔中介绍了关于重新注册VMware Update ManagerVUM)至vCenter Server的方法,最近有朋友反应,原本切换过去好好的更新服务为什么某次使用一下就不灵了?

当时在VCenter客户端下面的报错信息提示有数据库临时不可用或网络问题。

Figure 1在vSphere Client中启用VUM插件的时候会提示这台VC服务器连接到VUM的时候反馈数据库临时不可用或网络有问题

接着前往VUM服务器查看该服务是否良好运转,发现如上篇随笔中提到的“VMware vSphere Update Manager 服务”和“VMware vSphere Update Manager UFA 服务”两项服务并未启动,手工尝试启动也会提示启动失败,问题原因基本可以确定是VUM服务器出现了故障。

通过翻阅VUM的相关帮助文档,发现,VUM启动的时候会去检索上一次有过关联的VC上的主机与虚拟机情况,如果第一次启动不了,可以尝试多次重启VUM的主服务“VMware vSphere Update Manager 服务”即可,我实在尝试了第二次之后,该条主服务启动正常,同时通过Procmon查看到生成了一个相对较大体积的日志文件,打开之后可以看到基本上全都是做查询输出该关联VC上的各种信息。

Figure 2在默认的日志路径C:\ProgramData\VMware\VMware Update Manager\Logs下面,可以看到所产生的日志,里面有一个19MB的大文件

Figure 3打开这个大文件可以看到很多访问虚拟机的动作,检查是否有请求更新VM产品的内容,红色隐掉的就是虚拟机的名字

使用VMwareUpdateManagerUtility.exe这个实用工具继续注册一下VC和这个VUM的关联关系,但是注册过程中还是会提示数据库连接异常的错误信息(很抱歉当时没有截图),既然和数据库较真,那就好好看看和数据库有关的内容,当时安装VUM的时候需要使用一个数据库,本人使用的是VCenter自带的SQL Express 2008R2,想想上次由于一些原因修改了主机密码,然后看到VMwareUpdateManagerUtility.exe实用工具里面有一项配置注册数据库的项目Database Settings,通过他注册的时候发现又报错了,赶快打开先前运行的procmon,设置过滤项—>只看文件项,发现了他写日志的地方,顺的jump to 一下,看到两个文件。

Figure 4通过Procmon了解到该程序在磁盘上的文件操作,右键路径jump to一下

Applying configuration...

[QuickInf] 2015-09-16 12:15:58 -D "VMware vSphere Update Manager" -U administrator -P **** -C "D:\VMware\Infrastructure\Update Manager" -L "C:\Users\ADMINI~1\AppData\Local\VMware\vpx\Logs" -T "SQL Native Client" -O dbcheck -g 1

[QuickInf] 2015-09-16 12:16:15 vciInstallUtils returned :E_DB_CONNECT_FAILED

[QuickInf] 2015-09-16 12:16:15 Error:: Database error: Could not connect to the database.

[QuickInf] 2015-09-16 12:16:15 Error:: Database error: Could not connect to the database.

[QuickInf] 2015-09-16 12:16:15 Error:: Database error: Could not connect to the database.

Figure 5 vmum-utility日志文件输出的错误信息是和数据库有关的,连接数据库失败,"VMware vSphere Update Manager"这个就是DSN信息

[2015-09-16 12:16:15:613 '' 7456 ERROR] [installerRunDBCommand, 108] [DATABASE] InitConnection: ODBC error: (08001) - [Microsoft][SQL Server Native Client 10.0]SQL Server Network Interfaces: Error Locating Server/Instance Specified [xFFFFFFFF].

[2015-09-16 12:16:15:622 '' 7456 ERROR] [installerRunDBCommand, 261] [DATABASE] Failed to log in db

Figure 6 vmware-vci-vciInstallUtils-log4cpp日志文件输出的错误信息还是和数据库有关,而且很明确的指出了使用ODBC连接方式出现了问题

通过上面的报错信息,可以判断到问题发生在ODBC连接上。

在Windows 中ODBC的连接设置可以通过“管理工具”下面的“数据源(ODBC)”来进行维护 ODBC 数据源和驱动程序。

打开“数据源(ODBC)”,对VUM使用的数据源进行一下配置。

初次打开发现并没有"VMware vSphere Update Manager"对应的DSN信息,因为这个根本性的问题很清晰了,就是缺少"VMware vSphere Update Manager"DSN信息,我这里按照向导重新配置一下就好了。以下是关键点流程截图:

配置一套新的数据源

Figure 7创建一个基于SQL Server Native Client 的新数据源

Figure 8按照图示进行创建,在服务器的区域选择使用.\实例的模式,这样避免修改了主机名数据库连接不上的可能

Figure 9授权信息全部默认,不做任何操作

Figure 10因为是本地自建的,所以数据库选择方面直接选择VIM_UMDB这个数据库,其余项保持默认

Figure 11查看一下汇总信息,如果希望保存日志,可以勾选一下并输出,其余保持默认,点击完成。

创建好相关的DSN之后,就可以重新在VMwareUpdateManagerUtility.exe 中注册数据库,并且绑定VC与VUM的关系,至此问题全部解决。

总结:

就问题原因回顾一下操作,都有过更改主机名、更改IP、VC升级(弃掉原有的SQL Server数据库变为VMware内置的数据库)等这些比较“要命”的操作。

此次的修复过程避免了重新安装的一股脑问题故障点不明确的情况,同时加深了VUM整体的和学习!

其他参考文件:

当发生VUM升级主机不成功的时候,报告“无法在主机上运行升级脚本”的情况,可以尝试使用VMKB2007163,进行解决。

-=EOB=-

如何修复VUM在客户端启用之后报数据库连接失败的问题的更多相关文章

  1. signalR客户端调用服务端方法失败

    现象: 在VS中修改集线器代码后,重新生成解决方案,客户端js调用服务端方法提示undefined. 检查后台代码未发现错误. 检查js代码未发现错误(方法名称符合小驼峰规范). 解决方法: 先清理解 ...

  2. hadoop集群中客户端修改、删除文件失败

    这是因为hadoop集群在启动时自动进入安全模式 查看安全模式状态:hadoop fs –safemode get 进入安全模式状态:hadoop fs –safemode enter 退出安全模式状 ...

  3. 使用macaca抓页面元素,执行命令后报安装失败处理Error: Command failed: ……pm install -r "/data/local/tmp/com.macaca.android.testing"

    最近换了小米手机做自动化测试,执行命令的时候报安装失败错误,错误如下 解决:设置小米允许USB安装就好了 pm install -r "/data/local/tmp/com.macaca. ...

  4. 关于数据库客户端navicat创建新连接失败的问题

    如图是navicat创建新连接的截图: 我就有一个疑问了,主机填localhost或者127.0.0.1都是本机,自然是可以连接成功的,那如果填本机的IP地址会怎样呢? 如下图,出现了报错: 说我的访 ...

  5. [Shell]CVE-2019-0708漏洞复现及修复补丁

    0x01 漏洞原理 Windows系列服务器于2019年5月15号,被爆出高危漏洞,该漏洞影响范围较广,windows2003.windows2008.windows2008 R2.windows 7 ...

  6. ZeroC Ice启用SSL通讯的配置

    Zeroc ICE ( Internet Communications Engine )中间件号称标准统一,开源,跨平台,跨语言,分布式,安全,服务透明,负载均衡,面向对象,性能优越,防火墙穿透,通讯 ...

  7. 如何修复AppScan漏洞

    [AppScan]修复漏洞一:启用不安全的HTTP方法 (中) 漏洞背景:      “启用了不安全的 HTTP 方法”属于“中”危漏洞.漏洞描述是:根据APPSCAN的报告,APPSCAN通过OPT ...

  8. jmeter 启用gzip压缩——解决测试中web服务器上行流量过大的问题

    最近测了几个前端的项目,发现它们都有一个共同点:应用所在服务器的网卡上行(trans)非常大——经常是 117 MB/S,这已经逼近了千兆网卡的极限了.下面记录下排查和解决过程: 一. jmeter ...

  9. 企业内部在centos7.2系统中必杀技NTP时间服务器及内网服务器时间同步(windows和linux客户端同步)

    网络时间协议NTP(Network Time Protocol)是用于互联网中时间同步的标准互联网协议.NTP的用途是把计算机的时间同步到某些时间标准.目前采用的时间标准是世界协调时UTC(Unive ...

随机推荐

  1. 使用 .NET WinForm 开发所见即所得的 IDE 开发环境,实现不写代码直接生成应用程序

    直接切入正题,这是我09年到11年左右业余时间编写的项目,最初的想法很简单,做一个能拖拖拽拽就直接生成应用程序的工具,不用写代码,把能想到的业务操作全部封装起来,通过配置的方式把这些业务操作组织起来运 ...

  2. 菜鸟学Struts2——Interceptors

    昨天学习Struts2的Convention plugin,今天利用Convention plugin进行Interceptor学习,虽然是使用Convention plugin进行零配置开发,这只是 ...

  3. rnandroid环境搭建

    react-native 环境搭建具体步骤这个大家已经玩烂了,这个主要是记录下来自己做win7系统遇到的坑 1.com.android.ddmlib.installexception 遇到这个问题,在 ...

  4. video.js

    1.github地址 2.常用API: class : video-js: video-js应用视频所需的风格.js功能,比如全屏和字幕. vjs-default-skin: vjs-default- ...

  5. .net erp(办公oa)开发平台架构概要说明之表单设计器

    背景:搭建一个适合公司erp业务的开发平台.   架构概要图: 表单设计开发部署示例图    表单设计开发部署示例说明1)每个开发人员可以自己部署表单设计至本地一份(当然也可以共用一套开发环境,但是如 ...

  6. 算法与数据结构(十四) 堆排序 (Swift 3.0版)

    上篇博客主要讲了冒泡排序.插入排序.希尔排序以及选择排序.本篇博客就来讲一下堆排序(Heap Sort).看到堆排序这个名字我们就应该知道这种排序方式的特点,就是利用堆来讲我们的序列进行排序.&quo ...

  7. geotrellis使用(二十八)栅格数据色彩渲染(多波段真彩色)

    目录 前言 实现过程 总结 一.前言        上一篇文章介绍了如何使用Geotrellis渲染单波段的栅格数据,已然很是头疼,这几天不懈努力之后工作又进了一步,整清楚了如何使用Geotrelli ...

  8. SQLServer 版本之八大方法搞清 "我是谁"

    你正在使用 SQL Server 的哪个版本? 贴士:作为一个SQL Server数据库管理者或维护.支持人员,应该会经常问自己这样一个问题:我当前SQL Server版本号是?当前版本已经有的累计更 ...

  9. 菜鸟Python学习笔记第二天:关于Python黑客。

    2016年1月5日 星期四 天气:还好 一直不知道自己为什么要去学Python,其实Python能做到的Java都可以做到,Python有的有点Java也有,而且Java还是必修课,可是就是不愿意去学 ...

  10. 【热门技术】EventBus 3.0,让事件订阅更简单,从此告别组件消息传递烦恼~

    一.写在前面 还在为时间接收而烦恼吗?还在为各种组件间的消息传递烦恼吗?EventBus 3.0,专注于android的发布.订阅事件总线,让各组件间的消息传递更简单!完美替代Intent,Handl ...