• 第 5 章 Nova


    如上图所示,把对 Instance 的管理按运维工作的场景分为两类:常规操作和故障处理。

     

     

    常规操作

    常规操作中,Launch、Start、Reboot、Shut Off 和 Terminate 都很好理解。

     

    下面几个操作重点回顾一下:

     

    Resize

    通过应用不同的 flavor 调整分配给 instance 的资源。

    Lock/Unlock

    可以防止对 instance 的误操作。

    Pause/Suspend/Resume

    暂停当前 instance,并在以后恢复。

    Pause 和 Suspend 的区别在于 Pause 将 instance 的运行状态保存在计算节点的内存中,而 Suspend 保存在磁盘上。

    Pause 的优点是 Resume 速度比 Suspend 快;缺点是如果计算节点因某种原因重启,内存数据丢失,就无法 Resume 了,而 Suspend 则没有这个问题。

    Snapshot

    备份 instance 到 Glance。 Snapshot 生成的 image 可用于故障恢复,或者以此为模板部署新的 instance。

     

     

    故障处理

    故障处理有两种场景:

    计划内        计划内是指提前安排时间窗口做的维护工作,比如服务器定期微码升级,添加更换硬件等。

    计划外        计划外是指发生了没有预料到的突发故障,比如强行关机造成 OS 系统文件损坏,服务器掉电,硬件故障等。

     

    计划内故障处理

    对于计划内的故障处理,可以在维护窗口中将 instance 迁移到其他计算节点。

     

    涉及如下操作:

    Migrate

    将 instance 迁移到其他计算节点。 迁移之前,instance 会被 Shut Off,支持共享存储和非共享存储。

    Live Migrate

    与 Migrate 不同,Live Migrate 能不停机在线地迁移 instance,保证了业务的连续性。

    也支持共享存储和非共享存储(Block Migration)

    Shelve/Unshelve        

    Shelve 将 instance 保存到 Glance 上,之后可通过 Unshelve 重新部署。

    Shelve 操作成功后,instance 会从原来的计算节点上删除。

    Unshelve 会重新选择节点部署,可能不是原节点。

     

    计划外故障处理

    计划外的故障按照影响的范围又分为两类:

    • Instance 故障
    • 计算节点故障

     

    Instance 故障

    Instance 故障只限于某一个 instance 的操作系统层面,系统无法正常启动。

     

    可以使用如下操作修复 instance:

    Rescue/Unrescue

    用指定的启动盘启动,进入 Rescue 模式,修复受损的系统盘。

    成功修复后,通过 Unrescue 正常启动 instance。

    Rebuild

    如果 Rescue 无法修复,则只能通过 Rebuild 从已有的备份恢复。

    Instance 的备份是通过 snapshot 创建的,所以需要有备份策略定期备份。

     

    计算节点故障

    Instance 故障的影响范围局限在特定的 instance,计算节点本身是正常工作的。

    如果计算节点发生故障,OpenStack 则无法与节点的 nova-compute 通信,其上运行的所有 instance 都会受到影响。

    这个时候,只能通过 Evacuate 操作在其他正常节点上重建 Instance。

     

    Evacuate

    利用共享存储上 Instance 的镜像文件在其他计算节点上重建 Instance。 所以提前规划共享存储是关键。

    -----------------------------------------------------------引用来自------------------------------------------------------------------

    https://www.cnblogs.com/CloudMan6/p/5565757.html

    https://mp.weixin.qq.com/s?__biz=MzIwMTM5MjUwMg==&mid=2653587777&idx=1&sn=47bc06f6b34092ab05fdec0c6a70c76d&chksm=8d308158ba47084eaa4173bbaaaa1682930c865f4935db1b71fcf88105d7e152e1e0ee63abd8&scene=21#wechat_redirect

  • 相关阅读:
    NET在后置代码中输入JS提示语句(背景不会变白)
    陈广老师C#参考视频 方法的参数传递 总结
    preventDefault和stopPropagation两个方法的区别
    zerobased budgeting: 零基预算法
    JS: 关于自执行的匿名函数(整理)
    通过实例理解javascript 的call()与apply()
    setTimeout注意几点
    js constructor
    canphp的数据库操作
    JS事件监听器
  • 原文地址:https://www.cnblogs.com/gsophy/p/11058969.html
Copyright © 2020-2023  润新知