Azure进阶攻略 | 该如何唤醒你?因内核超时而沉睡的Linux虚拟机!
周五下午,当你收拾好东西准备下班,奔赴 Happy Hour 时,突然接到开发团队的电话:
对方:伙计救命啊,我在搭建开发环境,但 Azure 上的 Linux 虚拟机无法启动!
你(心里想着:你要加班我很同情,可我还跟妹子有约啊):你是怎么建立的?操作步骤是?
对方:我就是按照你提供的文档,先……,然后……,接下来……
你(心里想着:没问题啊,操作完全正确):有啥错误信息没?
对方:都没呀,就是启动不起来,看不到什么错误信息。
你(心理想着:别人都正常用,咋就你出问题):稍等,我看一下……没问题啊,还有额度,资源占用也正常……等着,我这就过去
==================================
首先祭出「重启一下」这个大杀器,登录 Azure 管理门户,重启有问题的虚拟机。结果一台恢复正常了,另一台还是无法启动……
虽然没显示错误信息,但至少咱还有启动日志可以看看。打开启动日志,发现:
从日志中可以看到,系统任务在等待 IO 超过 120 秒后依旧没有得到响应,导致该任务被阻止。
IO 超时未响应的原因有多种,例如磁盘下线、存储有严重延迟、磁盘阵列(RAID)工作异常,或者 Linux 虚拟机本身的 CPU 和内存资源不足等。既然「重启一下」大杀器在这台机器上不好使,就再试试新建一个虚拟机吧!
首先要删除之前虚拟机但保留磁盘,然后基于该磁盘新建虚拟机,修改内核参数:
1 编辑,增加(或修改)下列参数:
2 保存并退出,然后执行上述改动立即生效命令:
果然,凭我多年经验,三分钟问题成功解决,可以去愉快的去 Happy 了~
*顺便提一句:这个方案仅适用于 CentOS 和 RHEL,其他版本 Linux 略有不同,仅供参考。如果公司的业务生产对内核参数严格要求的, 请参考相关参数的说明,酌情进行修改配置。
最新文章
- html5快速入门(一)—— html简介
- Android 程序崩溃后的处理
- oracle——分析函数——排序值分析函数
- maven编译的时候排除junit测试类
- python3使用smtplib发电子邮件
- Linux配置tomcat (centos配置java环境 tomcat配置篇 总结三)
- win10 UWP 全屏
- [转]谈谈前端渲染 VS 后端渲染
- [Android实例] 拖动滑块进行图片拼合验证方式的实现
- CentOS 7安装TigerVNC Server
- oracle json 解析函数
- aiohttp笔记
- android 编译环境 &; 开发教程 【持续更新】
- Good Bye 2015 C
- 使用Idea 配置maven
- 如何杀掉一个用户下的所有进程并drop掉这个用户
- UI组件之Button
- JS 操作内容 操作元素
- Spring Json数据
- rrdtool 实践
热门文章
- Jira的安装使用
- Unity 动画系统 StateMachineBehaviour 动画状态机
- freemarker 定义公共header
- ubuntu14.04下 安装matlabR2015b遇到的一些问题及其解决方法
- TCP/IP协议中几个缩写词的含义 MSL、TTL和RTT 报文最大生存时间 跳数(即生存时间) cs往返时间 MSL要大于TTL知道为什么吗?
- 批量处理标签属性中document.getElementsByName()的替代方案
- jQuery源代码学习_工具函数_type
- pat03-树1. 二分法求多项式单根(20)
- BNU 26349——Cards——————【区间dp】
- Aspose.Words导出图片 表格 Interop.Word