我想了解停机时间以及如何解决 Amazon OpenSearch Service 软件更新期间的问题。
简短描述
Amazon OpenSearch Service 会定期发布服务软件更新,以增加功能或改善您的域。
以下是 OpenSearch 软件更新中最常见的问题:
- 停机时间
- 域资格
- 数据丢失
- 软件更新的严重性
- 服务软件更新预计所需的时间
- 手动更新软件
- 取消更新
**注意:**服务软件更新不同于 OpenSearch 版本升级。有关详细信息,请参阅升级 Amazon OpenSearch Service 域。
解决方法
停机时间
OpenSearch Service 软件更新使用蓝绿部署来尽可能减少停机时间,并在部署失败时维护原始环境。
更新通常只用几分钟即可完成,但如果您的系统负载较为繁重,则可能需要几小时到几天的时间。
**注意:**在部分或全部升级期间,OpenSearch Dashboards 可能不可用。
要减少服务软件更新的停机时间,请遵循以下最佳实践:
- 在单个变更请求中执行配置更改。这会运行一次蓝绿部署。
- 尽可能降低域的流量。
- 在配置的非高峰时段更新您的域,以避免较长的更新周期。
- 在运行配置更改时,确保集群处于良好运行状况下并保持活动状态。
- 确保资源利用率在阈值范围内并处于最佳状态。
- 如果集群有专用主节点,则无需停机即可完成升级。如果集群没有专用主节点,则集群会在升级后的几秒钟内没有响应,因为它此时正在选择主节点。
警报
当服务软件有可用更新、需要更新、已开始更新、完成更新或更新失败时,OpenSearch Service 都会发送通知。此外,在计划日期的前两周,OpenSearch 会向 AWS 账户上注册的电子邮件地址发送通知电子邮件。如果您未对所需的更新采取行动,OpenSearch Service 仍会在特定时间段后(通常为两周)自动更新您的域服务软件。OpenSearch Service 会在开始更新和更新完成时发送通知。有关详细信息,请参阅 ](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/managedomains-notifications.html)Amazon OpenSearch Service 中的通知[。
**注意:**如果是手动开始更新,则 OpenSearch Service 不会在更新开始时发送通知。OpenSearch Service 只会在更新完成后发送通知。
域资格
要执行服务软件更新,您的域必须处于符合条件的状态。有关不符合更新条件的状态列表,请参阅域在哪些时候不符合更新条件。
要以编程方式检查域的资格,请运行以下 AWS 命令行界面(AWS CLI)命令:
aws es —region region_name upgrade-elasticsearch-domain —domain-name domain_name —target-version OpenSearch_1.1 —perform-check-only
**注意:**如果在运行 AWS CLI 命令时收到错误,请确保您使用的是最新的 AWS CLI 版本。
数据丢失
OpenSearch Service 会自动拍摄快照来备份您的数据,以防发生数据丢失。如果集群状态为红色或发生数据丢失,您可以使用快照来恢复域。有关详细信息,请参阅恢复快照。
要主动备份数据,您可以手动拍摄域的快照。有关详细信息,请参阅在 Amazon OpenSearch Service 中创建索引快照。
回滚
在成功应用服务更新后,您将无法执行回滚。如果服务更新卡住,请联系 AWS Support 团队。
软件更新的严重性
要查看是否有可用更新或要检查更新的状态,请打开 OpenSearch Service 控制台。然后在导航窗格中,选择通知。有关监控集群升级的详细信息,请参阅为什么我的 Amazon OpenSearch Service 域升级需要很长时间?
每个通知都包含有关服务软件更新的详细信息,包括服务软件更新的严重性。服务软件更新分为可选更新或必需更新。
如果通知严重性为信息性、低或中,则更新为可选。您必须手动运行可选更新。
如果通知严重性为高或严重,则更新为必需。OpenSearch Service 会自动运行必需更新。在域的非高峰时段内,OpenSearch Service 可以在指定截止日期之后的任何时间开始更新,通常是在可用后 14 天。
服务软件更新预计所需的时间
服务软件更新的持续时间可能会由于以下因素而不尽相同:
- 域配置
- 节点数
- 分片数据
- 更新时集群正在提供服务的进行中的负载或请求。
最佳实践是在集群负载较低时安装更新,因为更新可能会暂时加重集群专用主节点的负担。您可以在非高峰时段安排软件更新,从而尽可能减轻集群专用主节点的压力。您还可以配置自定义非高峰时段,以更改软件更新的开始时间。
安排更新的另一种方法是启动运行蓝绿部署的配置更改。在运行蓝绿部署时,还会通过服务软件更新来执行配置。例如,添加任意数量的存储空间会立即运行蓝绿部署。
手动更新软件
您可以手动更新域以更快地利用新功能。有关手动更新域的说明,请参阅开始服务软件更新。
取消更新
要取消软件更新,请运行 AWS CLI cancel-service-software-update 命令。
cancel-service-software-update 命令会取消 OpenSearch Service 域的计划服务软件更新。只有当 UpdateStatus 处于 PENDING_UPDATE 状态并在 AutomatedUpdateDate 之前,您才能执行此操作。