目录

救援模式

以往只有虚拟机支持救援模式,裸机是不支持的。直到 Queen 版本 Ironic 实现了这个功能。救援模式下,用户可以完成修复、Troubleshooting 裸机节点的错误配置,修改密码等工作,将裸机设置为救援模式时可以传入 rescue_password 参数。

实现 UML 图

  1. 用户调用 Nova 的 Rescue API;
  2. Nova ComputeManager 调用 Ironic Virt Driver 的 rescue() Method,并传入rescue_password 参数;
  3. Ironic Virt Driver 调用 node.set_provision_state(RESCUE),并传入 rescue_password 参数;
  4. Ironic Virt Driver 等待 Ironic node 的 provision_state 改变,并更新 Nova Instance State 状态;
  5. Ironic API 接受 set_provision_state 调用,执行 do_node_rescue RPC,并将 ironic node 的 ACTIVE 状态改为 RESCUING;
  6. Ironic Conductor 将 rescue_password 保存到 instance_info 中,并调用合适的 Driver 开始救援;
  7. Driver 启动 rescue ramdisk(RESCUING -> RESCUEWAIT),同时 Ironic Conductor 将 ironic node 移至 Rescue Network上;
  8. RAMDisk IPA 启动后,回调 /v1/lookup 获取节点信息, 发送心跳;
  9. Ironic Conductor 收到心跳后,根据 config drive 和 rescue password 调用 finalize_rescue(RESCUEWAIT -> RESCUING),删除 instance_info 中的 rescue_password
  10. RAMDisk IPA 设置传过来的 rescue_password,从 config driver 中获取信息后配置网络,最后停止 IPA 服务;
  11. Ironic Conductor 将 ironic node 移至最初的租户网络,并更新状态到 RESCUE;

Ironic 的 Rescue 救援模式实现流程的更多相关文章

  1. 救援模式(Rescue Mode)、单用户模式(Single-User Mode)、紧急模式(Emergency Mode)的区别与联系

    前天聚餐的时候一航和启飞学长讲到RUCTF中更改root密码要进入单用户模式,我插了一句"有的系统显示的是救援模式",说完后心里一直很虚...(技术上的事还是想好再说)今天查了一下 ...

  2. 20、linux启动流程和救援模式

    1.Linux启动流程 2.Linux运行级别 1.什么是运行级别,运行级别就是操作系统当前正在运行的功能级别 System V init运行级别 systemd目标名称 作用 0 runlevel0 ...

  3. 进入Linux救援(rescue)模式的四大法门

    原文:http://blog.51cto.com/xxrenzhe/1272838 适用场景: 当误操作修改系统启动文件/etc/fstab, /etc/rc.d/rc.sysinit时,就会造成系统 ...

  4. centos单用户 救援 运行级别 yum,单用户模式,救援模式,inittab :启动级别 e2fsck wetty mingetty 物理终端 /dev/console 虚拟终端 /dev/tty(0,6) 模拟终端 /dev/pts/# grub-md5-crypt 给grub加密码 initrd 第二节课

    centos单用户 救援 运行级别  yum,单用户模式,救援模式,inittab :启动级别  e2fsck  wetty  mingetty  物理终端 /dev/console  虚拟终端 /d ...

  5. ironic baremetal rescue process

    1.用户调用Nova的rescue函数 nova/virt/ironic/driver.py class IronicDriver(virt_driver.ComputeDriver): ...... ...

  6. Day 23 系统服务之救援模式

    1.CentOS6与Centos 7启动流程 4.运行级别C6&C7 0 关机 1 单用户模式 (超级权限 必须面对实体硬件) 2 暂未使用 3 字符界面(黑框) 4 暂未使用 5 图形界面 ...

  7. lesson - 2 yum /单用户/救援模式/Linux 启动

    课程大纲:1.  yum使用yum 是一个在线安装软件包的工具,它可以帮我们解决软件包的依赖,这个日后会详细介绍.我们介绍了以下几个用法:yum list    这个命令可以列出所有安装过和未安装的软 ...

  8. 第三节 - centos 内核启动、救援模式、 ls 、目录结构

    Linux 第三节一.CentOS 启动: 1.内核引导: 1.win/linux 通电,2.BISO自检(CPU,内存,硬盘等 | U盘.光驱.网卡.硬盘启动 通过MBR知道内核内存硬件驱动位置并加 ...

  9. centos7救援模式--误删/usr/bin/恢复

    模拟场景 centos7 误删/usr/bin/等系统内置文件夹, 导致几百个内置命令丢失. 修复 rescue模式 vm模拟一遍(如果在物理机, 可通过U盘方式直接开机U盘进入选择救援模式, 方式通 ...

随机推荐

  1. Linux用户组管理及用户权限3

    用户.组管理命令 安全上下文:        进程以其发起者的身份运行:            进程对文件的访问权限,取决于发此进程的用户的权限 系统用户:为了能够让那些后台进程或服务类进程以非管理员 ...

  2. Linux系统组成和获取命令帮助3

    命令的语法通用格式:        # COMMAND OPTIONS ARGUMENTS        COMMAND:            发起一个命令:请求内核将某个二进制程序运行为一个进程  ...

  3. Hive优化(十一)

    Hive优化 ​ Hive的存储层依托于HDFS,Hive的计算层依托于MapReduce,一般Hive的执行效率主要取决于SQL语句的执行效率,因此,Hive的优化的核心思想是MapReduce的优 ...

  4. Web应用界面好帮手!DevExtreme React和Vue组件全新功能上线

    行业领先的.NET界面控件DevExpress 正式发布了v19.1版本,本文将主要介绍DevExtremev19.1中React组件响应式应用程序布局模板及CLI工具.本地React图表,和Vue组 ...

  5. shell编程初探

    #! /bin/sh #这是神圣丁的第一个shell脚本 name="陈培昌" echo "我就喜欢\"$name\"" echo '我就喜 ...

  6. Java-DatabaseConnectionPool工具类

    package org.zxjava.test; import java.sql.Connection; import java.sql.DatabaseMetaData; import java.s ...

  7. Acwing-198-反素数(约数, 数学)

    链接: https://www.acwing.com/problem/content/200/ 题意: 对于任何正整数x,其约数的个数记作g(x),例如g(1)=1.g(6)=4. 如果某个正整数x满 ...

  8. python--AutoPy库

    包括用于控制键盘和鼠标,在屏幕上查找颜色和位图以及显示警报的功能 - 所有这些都是以跨平台,高效和简单的方式进行的.适用于Mac OS X,Windows和X11 中文文档:https://blog. ...

  9. fegin熔断autowired失败

    在SpringBootApplication中加入 @EnableFeignClients(basePackages = "com.supplychain")指定熔断的路径就可以了

  10. Vue(js框架)

    单页技术应用:页面不会跳转,只是局部刷新,利用的是锚点原理. Vue特点:1)组件化  2)数据驱动 Vue的开始使用: 1)先引入Vue文件,引入方式和jquery类似,可以直接引入 <scr ...