zoukankan      html  css  js  c++  java
  • Azure进阶攻略 | 该如何唤醒你?因内核超时而沉睡的Linux虚拟机!

    周五下午,当你收拾好东西准备下班,奔赴 Happy Hour 时,突然接到开发团队的电话:

    对方:伙计救命啊,我在搭建开发环境,但 Azure 上的 Linux 虚拟机无法启动!

    你(心里想着:你要加班我很同情,可我还跟妹子有约啊):你是怎么建立的?操作步骤是?

    对方:我就是按照你提供的文档,先……,然后……,接下来……

    你(心里想着:没问题啊,操作完全正确):有啥错误信息没?

    对方:都没呀,就是启动不起来,看不到什么错误信息。

    你(心理想着:别人都正常用,咋就你出问题):稍等,我看一下……没问题啊,还有额度,资源占用也正常……等着,我这就过去

    ==================================

    首先祭出「重启一下」这个大杀器,登录 Azure 管理门户,重启有问题的虚拟机。结果一台恢复正常了,另一台还是无法启动……

    虽然没显示错误信息,但至少咱还有启动日志可以看看。打开启动日志,发现:

    从日志中可以看到,系统任务在等待 IO 超过 120 秒后依旧没有得到响应,导致该任务被阻止。

    IO 超时未响应的原因有多种,例如磁盘下线、存储有严重延迟、磁盘阵列(RAID)工作异常,或者 Linux 虚拟机本身的 CPU 和内存资源不足等。既然「重启一下」大杀器在这台机器上不好使,就再试试新建一个虚拟机吧!

    首先要删除之前虚拟机但保留磁盘,然后基于该磁盘新建虚拟机,修改内核参数:

    1 编辑,增加(或修改)下列参数:

    2 保存并退出,然后执行上述改动立即生效命令:

    果然,凭我多年经验,三分钟问题成功解决,可以去愉快的去 Happy 了~

    *顺便提一句:这个方案仅适用于 CentOS 和 RHEL,其他版本 Linux 略有不同,仅供参考。如果公司的业务生产对内核参数严格要求的, 请参考相关参数的说明,酌情进行修改配置。

    立即访问http://market.azure.cn

  • 相关阅读:
    sqlserver监控体系
    使SQL用户只能看到自己拥有权限的库
    存储过程版本控制-DDL触发器
    查看剩余执行时间
    迁移数据库文件位置
    sublime使用Package Control不能正常使用的解决办法
    未在本地计算机上注册“Microsoft.Jet.OLEDB.4.0”提供程序的处理方式
    1770Special Experiment
    1848Tree
    1322Chocolate
  • 原文地址:https://www.cnblogs.com/zangdalei/p/7357373.html
Copyright © 2011-2022 走看看