本页面介绍如何执行与 AlloyDB for PostgreSQL 集群维护相关的以下操作:
- 设置、查看和清除维护窗口。
- 查看已安排的即将到来的维护事件。
- 配置和移除拒绝维护期。
列出的所有操作均适用于主集群和次要集群。
如需简要了解如何在 AlloyDB 集群中实现维护,请参阅维护概览。
为集群设置维护窗口
控制台
前往集群页面。
在资源名称列中点击相应集群。
在概览页面中,点击维护中的修改。
在维护窗口中,选择要在星期几执行此维护窗口。
默认选项为任意窗口期。创建集群时,系统会为相应集群分配此默认维护窗口。
选择要在一天中的哪个时段执行此维护窗口。
点击更新以保存更改。
gcloud
如需使用 gcloud CLI,您可以安装并初始化 Google Cloud CLI,也可以使用 Cloud Shell。
如需在集群上设置维护窗口,请运行 gcloud alloydb clusters update
命令,并带有 --maintenance-window-day 和 --maintenance-window-hour 标志:
gcloud alloydb clusters update CLUSTER_ID \
--region LOCATION_ID \
--maintenance-window-day DAY_OF_WEEK \
--maintenance-window-hour HOUR_OF_DAY替换以下内容:
CLUSTER_ID:要为其设置维护窗口的集群。LOCATION_ID:相应集群所在的 Google Cloud 区域,例如us-central1。DAY_OF_WEEK:指示要在星期几执行此维护窗口(采用世界协调时间 [UTC] 时区)。有效值为MONDAY、TUESDAY、WEDNESDAY、THURSDAY、FRIDAY、SATURDAY和SUNDAY。默认值为任意窗口期。创建集群时,系统会为相应集群分配此默认维护窗口。
HOUR_OF_DAY:一个介于0和23之间的整数,指示要在一天中的哪个时段执行此维护窗口(采用世界协调时间 [UTC] 时区)。
如果您在集群正在维护或已安排了维护时更改维护窗口设置,则更改不会立即生效,而是在当前或已安排的维护完成后才会生效。
清除维护窗口
控制台
前往集群页面。
在资源名称列中点击相应集群。
在概览页面中,点击维护中的修改。
在维护窗口中,选择任意窗口期。
点击更新以保存更改。
gcloud
如需使用 gcloud CLI,您可以安装并初始化 Google Cloud CLI,也可以使用 Cloud Shell。
如需从集群中清除维护窗口,请运行带有 --maintenance-window-any 标志的 gcloud clusters update 命令:
gcloud alloydb clusters update CLUSTER_ID \
--region LOCATION_ID \
--maintenance-window-any替换以下内容:
CLUSTER_ID:要为其设置维护窗口的集群。LOCATION_ID:相应集群所在的 Google Cloud 区域,例如us-central1。
查看集群的维护窗口
控制台
前往集群页面。
在资源名称列中点击相应集群。
在概览页面中的维护部分,查看集群的维护窗口详情。
gcloud
如需使用 gcloud CLI,您可以安装并初始化 Google Cloud CLI,也可以使用 Cloud Shell。
如需查看集群的当前维护窗口,请运行 gcloud alloydb clusters describe 命令:
gcloud alloydb clusters describe CLUSTER_ID \
--region LOCATION_ID替换以下内容:
CLUSTER_ID:要为其设置维护窗口的集群。LOCATION_ID:相应集群所在的 Google Cloud 区域,例如us-central1。
如果集群设置了维护窗口,则该命令的输出将包含类似于以下内容的行:
maintenanceUpdatePolicy:
maintenanceWindows:
- day: TUESDAY
startTime:
hours: 23
如果输出不包含 maintenanceUpdatePolicy 部分,则表示相应集群尚未设置维护窗口。
查看集群上即将进行的维护
控制台
前往集群页面。
找到您的集群,然后查看维护列,了解即将进行的维护窗口的相关信息。
gcloud
如需使用 gcloud CLI,您可以安装并初始化 Google Cloud CLI,也可以使用 Cloud Shell。
如需查看为设置了维护窗口的集群计划的即将进行的维护,请运行 gcloud clusters describe 命令:
gcloud alloydb clusters describe CLUSTER_ID \
--region LOCATION_ID替换以下内容:
CLUSTER_ID:要为其设置维护窗口的集群。LOCATION_ID:相应集群所在的 Google Cloud 区域,例如us-central1。
如果集群未来有计划的维护事件,则该命令的输出将包含类似于以下内容的行:
maintenanceSchedule:
startTime: 2024-07-03T09:46:40Z
采用 UTC 格式的时间戳会指定 AlloyDB 计划开始更新相应集群中所有节点的系统软件的时间。
选择接收维护通知
维护通知默认处于停用状态。如果您选择接收有关即将进行的 AlloyDB 维护事件的电子邮件通知,请注意以下事项:
- 在有维护事件安排好后,您会立即收到有关该事件的自动通知。维护事件至少会提前一周安排。
- 维护通知是在 Google Cloud 项目级启用的。您无法选择只接收项目中部分集群的通知。
- 您只能为自己启用通知。每位用户都必须单独选择接收维护通知。
如需了解详情,请参阅维护概览。
如需在设置了维护窗口的集群的维护事件被安排或取消时收到自动电子邮件通知,请使用 Google Cloud 控制台按以下步骤操作:
前往集群页面。
在资源名称列中点击相应集群。
在概览页面中,点击维护部分
Notifications:行中的修改。点击通信。
在 AlloyDB 维护窗口所对应的行中,选择邮件列中的切换开关。
配置拒绝维护期
如要阻止在特定时间段内执行维护操作,您可以配置拒绝维护期。您可以为运行最新版 AlloyDB 的集群设置拒绝维护期。拒绝维护期可以从 1 天到 30 天不等。
设置拒绝维护期
如要配置拒绝维护期,您可以设置开始日期、结束日期以及间隔的开始和结束时间。
开始日期和结束日期必须采用以下格式:
YYYY-MM-DD:表示特定日期
开始日期、结束日期和时间均采用世界协调时间 (UTC) 时区。
gcloud
如需使用 gcloud CLI,您可以安装并初始化 Google Cloud CLI,也可以使用 Cloud Shell。
如需向 AlloyDB 集群添加拒绝维护期,请运行 gcloud alloydb clusters update 命令,并添加 deny-maintenance-period-start-date、deny-maintenance-period-end-date 和 deny-maintenance-period-time 标志:
gcloud alloydb clusters update CLUSTER_ID \
--region LOCATION_ID \
--deny-maintenance-period-start-date START_DATE \
--deny-maintenance-period-end-date END_DATE \
--deny-maintenance-period-time TIME替换以下内容:
CLUSTER_ID:要为其配置免维护期的集群。LOCATION_ID:相应集群所在的 Google Cloud 区域,例如us-central1。START_DATE:免维护期的开始日期,采用YYYY-MM-DD世界协调时间 (UTC) 格式。END_DATE:免维护期的结束日期,采用YYYY-MM-DD世界协调时间 (UTC) 格式。TIME:免维护期的时间,采用HH:MM世界协调时间 (UTC) 格式。小时数以 24 小时制表示,值范围为00:00到23:59,例如16:45。
REST v1
此示例向现有集群添加了拒绝维护期。如需查看此调用的完整参数列表,请参阅方法:projects.locations.clusters.instances.patch。
在使用任何请求数据之前,请先进行以下替换:
CLUSTER_ID:要为其配置免维护期的集群。PROJECT_ID:集群所在项目的 ID。LOCATION_ID:相应集群所在的 Google Cloud 区域,例如us-central1。START_YEAR:免维护期开始的年份,采用YYYY格式。START_MONTH:免维护期开始的月份,采用MM格式。一位数月份的前导零是可选的,例如2和02对于 2 月份都是有效的。START_DAY:免维护期开始的日期,采用DD格式。一位数日期的前导零是可选的,例如1和01对于某个月的第一天都是有效的。END_YEAR:免维护期结束的年份,采用YYYY格式。END_MONTH:免维护期结束的月份,采用MM格式。END_DAY:免维护期结束的日期,采用DD格式。HOUR(S):免维护期的时段,采用 24 小时制,例如16。一位数小时值的前导零是可选的,例如2和02都是有效的。MINUTE(S):免维护期的分钟值,接受的值范围为0到59,例如45。一位数分钟值的前导零是可选的,例如7和07都是有效的。
如需添加拒绝维护期,请使用以下 PATCH 请求:
PATCH https://alloydb.googleapis.com/v1/{cluster.name=projects/PROJECT_ID/locations/LOCATION_ID/clusters/CLUSTER_ID?update_mask=maintenance_update_policy.deny_maintenance_periods}
maintenance_update_policy.deny_maintenance_periods 查询参数用于告知 API 更新 maintenanceUpdatePolicy 代码块中的 denyMaintenancePeriods 字段。
请求 JSON 正文如下所示:
"maintenanceUpdatePolicy": {
"denyMaintenancePeriods": [
{
"startDate": {
"year": START_YEAR,
"month": START_MONTH,
"day": START_DAY
},
"endDate": {
"year": END_YEAR,
"month": END_MONTH,
"day": END_DAY
},
"time": {
"hours": TIME
"minutes": TIME
}
}
]
},
拒绝即将进行的维护
拒绝维护期优先于已安排的维护。如果出现时间冲突,拒绝维护期会覆盖已安排的维护窗口。
如果设置了与已安排的维护事件冲突的拒绝维护期,系统并不会立即取消维护并清除安排。 AlloyDB 会将现有的已安排维护显示为即将进行,但会在所安排的时间开始时取消该已安排的维护窗口。
为帮助应用关键更新,系统通常不允许设置拒绝期来跳过多个维护事件,并且在极少数情况下,可能会在配置的维护偏好设置之外应用紧急维护。
从集群中移除拒绝维护期
您可以随时移除拒绝维护期。
gcloud
如需使用 gcloud CLI,您可以安装并初始化 Google Cloud CLI,也可以使用 Cloud Shell。
如需从 AlloyDB 集群中移除拒绝维护期,请运行带有 remove-deny-maintenance-period 标志的 gcloud alloydb clusters update 命令:
gcloud alloydb clusters update CLUSTER_ID --region LOCATION_ID --remove-deny-maintenance-period替换以下内容:
CLUSTER_ID:要从中移除拒绝维护期的集群。LOCATION_ID:相应集群所在的 Google Cloud 区域,例如us-central1。
REST v1
此示例从 AlloyDB 集群中移除了拒绝维护期。如需查看此调用的完整参数列表,请参阅方法:projects.locations.clusters.patch。
在使用任何请求数据之前,请先进行以下替换:
CLUSTER_ID:要向其添加拒绝维护期的集群的 ID。PROJECT_ID:集群所在项目的 ID。LOCATION_ID:相应集群所在的 Google Cloud 区域,例如us-central1。
如需移除拒绝维护期,请使用以下 PATCH 请求:
PATCH https://alloydb.googleapis.com/v1/{cluster.name=projects/PROJECT_ID/locations/LOCATION_ID/clusters/CLUSTER_ID?update_mask=maintenance_update_policy.deny_maintenance_periods}
maintenance_update_policy.deny_maintenance_periods 查询参数用于告知 API 更新 maintenanceUpdatePolicy 代码块中的 denyMaintenancePeriods 字段。
请求 JSON 正文如下所示:
{}