虚拟化时代你是否遇到过?

Posted 磐林IT

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了虚拟化时代你是否遇到过?相关的知识,希望对你有一定的参考价值。

虚拟化时代你是否遇到过?


虚拟化技术可以说是现有云平台中IaaS层的绝对统治力量,可是小伙伴们是否也遇到过这样的问题呢?


故障现象

启动虚拟机的时候停留在95%,进程终止。

提示错误:

unable to access files since it is locked.

虚拟化时代你是否遇到过?

赶紧问一下度娘

虚拟化时代你是否遇到过?
虚拟化时代你是否遇到过?

故障分析 


我们很清楚,文件被锁定那必须肯定绝对是因为文件被占用了,想想我们用的可不是单机环境,这是一个集群环境,所以一定是虚拟机被多个物理主机争抢造成的,能有这个能耐的,那肯定就是VMware的HA问题。

虚拟化时代你是否遇到过?


故障解决


  1. 首先将cluster中的HA功能关闭。

    (如果该功能不关闭,容易造成死锁,

    VM不断跳动,不断在不同的ESXI内循环被锁)

  2. 解决磁盘文件被锁问题就要找到是哪台ESXI主机把这个VM锁住了。我们用以下方法查看:

    a.看/var/log/vmkernel日志文件,在VC中把被锁的VM从Inventory中remove掉,进行unregister的过程。

    b.根据/var/log/vmkernel搜索owner,可以找到类似以下的日志记录:

    (Oct 19 04:23:33 esxihostname vmkernel: 3:06:29:47.992 cpu6:165 6)FS3: 1975: Checking if lock holders are live for lock [type 10c00006]FS3: 1975: Checking if lock holders are live for lock [type 10c0000stname vmkernel: gen 17, mode 1, owner 48f5f637-462688bc-fd28-0e1a6434b6f8 mtime 38112])owner后面的48f5f637-462688bc-fd28-0e1a6434b6f8就是锁住VM的宿主机UUID。c.找出ESXI的UUID是 

    48f5f637-462688bc-fd28-0e1a6434b6f8

    的主机

    #esxcfg -info | grep –I ‘system uuid’

  3. 找到目标主机后,杀死锁住VM的进程。

    使用命令找到PID:

    #ps –ef | grep virtualmachine.vmx

  4. 找到PID后杀掉进程:

    #kill -9  PID       

虚拟化时代你是否遇到过?

NO,NO,NO!

这时候还要确定一件事情,

.vswp文件

不注意这个问题可能在杀掉进程后,重新注册VM,还是说没有swap文件,启动还是失败。

(在VM启动时会自动生成swap,没有swap文件,是因为swap存在了,因为重名导致无法正常生成)

进入到/vmfs/volumns/lunid/vm_path/下,

#vmkfs –d virtual_mechine.vswp 

或者进入Datastore Browser,

在里面把swap文件删除。

万全之策,

你还可以进入到VM的

SETTINGS-OPTIONS-SWAPFILE LOCATION,对该保存的位置做下设置

进入Datastore Browser重新注册VM,

找到VM.vmx, add to inventory.

启动VM,搞定一切!

虚拟化时代你是否遇到过?


  - end -  


以上是关于虚拟化时代你是否遇到过?的主要内容,如果未能解决你的问题,请参考以下文章

Citrix云桌面之DDC绑定SSL证书

北京露曦科技颠覆你对虚拟的认知,虚拟时代真来临了

云原生时代 Overlay 网络的应用

[视频]Docker虚拟化引领时代的趋势

Oracle VM VirtualBox 改内存后虚拟机启动报错

Oracle VM VirtualBox 改内存后虚拟机启动报错