在检测到错误时,将Linux服务器上的文件系统配置成重启后的只读模式是常见做法。不过,这种设置在结合使用VMware VI3时可能有意想不到的结果。 在发生错误时,Linux文件系统能配置成三种不同的模式: errors=continue / errors=remount-ro / errors=panic 这三种模式分别表示忽略错误并只标记文件系统错误继续运行,或者重启系统为只读,或者终止系统。 默认设置在文件系统superblock里,并能使用tune2fs(8)更改。
第一选择(继续运行)可能对包含非重要数据的系统管用,不过在给定的环境里让服务器在写入错误之后继续运行……
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
在检测到错误时,将Linux服务器上的文件系统配置成重启后的只读模式是常见做法。不过,这种设置在结合使用VMware VI3时可能有意想不到的结果。
在发生错误时,Linux文件系统能配置成三种不同的模式:
errors=continue / errors=remount-ro / errors=panic
这三种模式分别表示忽略错误并只标记文件系统错误继续运行,或者重启系统为只读,或者终止系统。
默认设置在文件系统superblock里,并能使用tune2fs(8)更改。
第一选择(继续运行)可能对包含非重要数据的系统管用,不过在给定的环境里让服务器在写入错误之后继续运行,就像什么都有发生过一样,这样是不太好的。第三种选择如果检测到文件系统错误时,容易导致服务器到内核的终止运行。不过,重启可能不能修复问题,并且现在服务器处于可更改状态,管理员很难知道服务器的状况。
文件系统的理想设置是在检测出错误时能重启成只读模式。这样的话,管理员能诊断问题,采取合适的策略。重启文件系统为只读有时有一点影响,或者有时能导致服务器不能正常停止运行。例如,如果一台Linux Web服务器的/var/log文件系统重启为只读,这台服务器上的一些服务将终止功能,因为不能写入日志。
那么所有这一切与ESX有何关系?
路径故障问题
多数ESX安装为了共享存储而附属到存储区域网络(SAN)上,并且这些服务器有多路径的倾向。多路径是用于维持与SAN相连的一种技术,万一发生存储处理器、主机总线适配器、交换机,甚至光纤通道这样的故障时还能与SAN连接。尽管ESX利用了多路径,不过在给定时间里只有一条路径可用。如果路径失效,ESX开始发送和接收所有磁盘活动到另一条路径时会发生路径故障。
发生路径故障是常见的,可能一个月一次或两次。首要问题是Linux虚拟机对ESX路径故障如何反应。如果发生路径故障时,Linux虚拟机的磁盘写入正进行一半,ESX将通知虚拟机的虚拟SCSI控制器线路繁忙,并且指示控制器等待。虚拟机决定磁盘不可访问并有磁盘写入故障,这引起错误。这个错误的处理将与文件系统所设置的“错误”值协调。由于在出现错误时,重启系统为只读模式逐渐成为标准做法,产生错误的文件系统在重启动时就成只读的了。只要文件系统不包括/var/log,那么应该在syslog包括这个错误,如下所示:
SCSI Error : <0 0 0 0> return code = 0x20008
end_request: I/O error, dev sda, sector 4928181 Aborting journal on device dm-0 ext3_abort called.
EXT3-fs error (device dm-0): ext3_journal_start_sb: Detected aborted journal
Remounting filesystem read-only.
在经常发生错误时,这种做法是合适的,因为这给管理员提供了查找事件起因的机会,以便以后不再发生此类情况。
不过使用ESX和多路径的话,发生路径故障的机率增加了。如果发生这样的情况,你该作出什么反应?
使用ESX时,在当错误提示重启配置为只读模式的话,路径故障经常发生。这是由于ESX和多路径技术造成的,万一发生某些请求故障,ESX和多路径技术用于保持与存储区域网络的固定连接。解决这个问题有以下三种方法:
1.在一小部分Linux版本上可以下载VMware补丁修复这个问题。
2.编辑内核源并手动安装新内核模块。
3.设置虚拟机以便在发生问题时发送邮件给你,然后你可以发送邮件请求VMware给Linux打上补丁。
我们将在下半部分中详细描述如何执行这三种方法。
作者
Andrew是微软MCAD和MCSD认证专家。Andrew具有从事技术行业十多年的经验。在过去的六年中,他一直专注于最新的技术。同时任职位于美国奥斯汀的德克萨斯州立大学。两年前,Andrew自己成立一家咨询公司和开发中心,叫做lostcreations。他同时也是奥斯汀VMware用户群(VMUG)的创始成员。他目前开发的项目是Sudo for Windows(http://sourceforge.net/projects/sudowin)。 Andrew在2004年开始专注客户虚拟化工作;2005年开始推进德克萨斯州立大学中心技术部门信息技术服务(ITS)的服务器虚拟化。2006年,Andrew设计并实施了ITS的第一个企业虚拟服务器基础设施环境。
翻译
相关推荐
-
做CTO最重要的技能是什么?是写代码吗?
不写代码能做好CTO吗?
-
pppcloud支持哪些系统镜像?
全ssd云主机平台pppcloud支持多达40种镜像,中秋节期间注册即送8.15现金券,www.pppclou […]
-
容器的主机操作系统有多重要?
运行在该操作系统之上的所有容器将共享相同的操作系统内核,因此容器提供了独特的福利与脆弱性。
-
Citrix XenClient将要退出历史舞台 替代者在哪儿?
Citrix在10月1日停止销售XenClient,但将会维护当前版本一直到2016年12月12日,直至2017年12月12日完全终止Type 1客户端 hypervisor XenClient。