[ English | 日本語 | Deutsch | Indonesia ]
云控制器和存储代理故障与维护¶
云控制器和存储代理在预期和意外停机方面非常相似。通常,每种服务器类型会在云中运行一台,这使得它们在停止运行时非常显眼。
对于云控制器,好消息是,如果您的云使用 FlatDHCP 多宿主 HA 网络模式,现有实例和卷在云控制器离线时将继续运行。但是,对于存储代理,在它恢复运行之前,无法进行任何存储流量。
计划维护¶
计划云控制器或存储代理维护的一种方法是在非高峰时段进行,例如凌晨 1 点或 2 点。这种策略会影响较少用户。如果您的云控制器或存储代理过于重要,以至于在任何时候都不能不可用,则必须考虑高可用性选项。
重启云控制器或存储代理¶
总而言之,只需发出 reboot 命令。操作系统会干净地关闭服务,然后自动重启。如果您想非常彻底,请在重启之前运行您的备份作业。
云控制器重启后,请确保所有必需的服务已成功启动。以下命令使用 ps 和 grep 来确定 nova、glance 和 keystone 是否当前正在运行
# ps aux | grep nova-
# ps aux | grep glance-
# ps aux | grep keystone
# ps aux | grep cinder
还要检查所有服务是否正常运行。以下命令集会加载 openrc 文件,然后运行一些基本的 glance、nova 和 openstack 命令。如果命令按预期工作,您可以确信这些服务处于工作状态
# . openrc
# openstack image list
# openstack server list
# openstack project list
对于存储代理,请确保 对象存储服务 已恢复
# ps aux | grep swift
还要检查它是否正常运行
# swift stat
云控制器完全故障¶
例如,如果其主板出现故障,云控制器可能会完全故障。用户会立即注意到云控制器的丢失,因为它为您的云环境提供核心功能。如果您的基础设施监控未向您发出警报,通知您的云控制器已故障,您的用户肯定会注意到。不幸的是,这是一种糟糕的情况。云控制器是您的云不可或缺的一部分。如果您只有一个控制器,如果它发生故障,您将丢失许多服务。
为了避免这种情况,请创建一个高可用的云控制器集群。这超出了本文档的范围,但您可以在 OpenStack 高可用性指南 中了解更多信息。
下一个最佳方法是使用配置管理工具(例如 Puppet)来自动构建云控制器。如果您有备用服务器可用,这不应该超过 15 分钟。控制器重建后,请恢复任何已备份的数据(请参阅 备份和恢复)。
此外,在实践中,当控制器在长时间重启后恢复时,计算节点上的 nova-compute 服务并不总是干净地重新连接到控制器上托管的 rabbitmq;需要重启计算节点上的 nova 服务。