本页面介绍了如何为 Cloud Data Fusion 实例定义维护窗口。
6.8.0 版及更高版本的 Cloud Data Fusion 实例支持维护期。
维护窗口简介
Cloud Data Fusion 中的维护窗口是指您允许它执行维护操作的时间段,以降低使用高峰期间服务中断的风险。在非高峰时段或活动量较少的时间安排维护窗口,可以最大限度地减少维护窗口对 Cloud Data Fusion 实例和流水线执行的影响。
通过配置维护窗口,您可以控制在实例中发生维护操作的时间:
- 如果定义了维护窗口,则 Cloud Data Fusion 会在定义的时间段内执行维护操作。
- 如果维护窗口未定义,则可以随时执行维护。
维护操作简介
为了确保系统的安全性和合规性,Cloud Data Fusion 会进行定期维护操作。这些操作包括应用重要更新和安全补丁来缓解漏洞和保护用户数据。计划性维护窗口可确保高效应用更新,从而保持系统完整性,并最大限度地减少对实例和流水线执行的中断。
- 配置维护期时,您每周必须至少为维护操作分配 12 小时。每个时段必须介于 4 到 12 小时之间。
在维护窗口期内,某些操作可能会受到影响。我们建议在非高峰时段设置维护窗口。维护操作可能会通过以下方式影响 Cloud Data Fusion:
- Cloud Data Fusion Studio 界面可能暂时不可用。
- 流水线执行可能会受到影响,从而导致失败。
- Cloud Data Fusion 服务可能暂时关闭,从而导致 API 调用失败。
- 在维护窗口期内,实例最长可能在一小时内无法完全正常运行。我们建议您在流水线未运行或未计划运行时设置维护期。
在创建实例时指定维护窗口
控制台
如需在创建实例时设置维护窗口,请按以下步骤操作:
- 转到 Cloud Data Fusion 实例页面,然后点击创建实例。
- 输入实例名称和版本。如需详细了解每个字段,请参阅创建实例。
- 展开高级选项部分。
- 展开维护部分,然后按照以下步骤操作:
- 选中启用维护窗口复选框。
- 在开始时间字段中,以受支持的格式输入时间。
- 在TimeZone列表中,选择一个时区。
- 在天和时长列表中,选择一周中的哪几天以及转化时间范围。如需详细了解这些设置,请参阅维护操作简介。
- 点击创建。
如需了解详情,请参阅配置维护窗口时间和重复规则 (RRULE)。
REST API
- 使用
instance.create
API 设置Instance
配置:
{
"name": string,
"description": string,
…
…
"maintenancePolicy": {
"maintenanceWindow": {
"recurringTimeWindow": {
"window": {
"startTime": "START_TIME",
"endTime": "END_TIME"
},
"recurrence": "MAINTENANCE_RECURRENCE"
}
},
}
}
请替换以下内容:
START_TIME
:时间范围开始时间,采用 RFC 3339 格式。END_TIME
:时间范围结束时间,采用 RFC 3339 格式。MAINTENANCE_RECURRENCE
:维护窗口的重复周期的 RRULE。Cloud Data Fusion 仅支持以下格式:FREQ=WEEKLY;BYDAY=SU,MO,TU,WE,TH,FR,SA
或BYDAY=SU,MO,TU,WE,TH,FR,SA,MO;FREQ=WEEKLY
。此参数用于指定窗口在选定日期的每周重复周期,从startTime
开始,并持续指定时长。
如需了解详情,请参阅配置维护窗口时间和重复规则 (RRULE)。
以下示例将创建一个实例,其维护窗口为每周六和周日上午 10 点到下午 4 点(世界协调时间),时长为六小时。如需了解详情,请参阅实例 API 文档。
// POST https://datafusion.googleapis.com/v1/projects/example-project/locations/us-central1/instances?instanceID=example-instance
{
"maintenancePolicy": {
"maintenanceWindow": {
"recurringTimeWindow": {
"window": {
"startTime": "2024-01-01T10:00:00Z",
"endTime": "2024-01-01T16:00:00Z",
},
"recurrence": "FREQ=WEEKLY;BYDAY=SA,SU"
}
},
}
}
更新实例的维护窗口
控制台
如需在 Google Cloud 控制台中更新现有实例的维护窗口,请按以下步骤操作:
- 转到 Cloud Data Fusion 实例页面。
- 点击实例名称以查看实例详情。
- 在实例详情页面上,转到维护期字段,然后点击修改。
- 维护窗口字段会在修改模式下打开。根据需要更新这些值:
- 选中启用维护窗口复选框。
- 在开始时间字段中,以受支持的格式输入时间。
- 在TimeZone列表中,选择一个时区。
- 在天和时长列表中,选择周几和时间范围。如需详细了解这些设置,请参阅维护操作简介。
- 点击保存。
如需了解详情,请参阅配置维护窗口时间和重复规则 (RRULE)。
REST API
对于现有实例,请使用 instances.patch
API 请求更新维护窗口。这会替换现有的维护窗口配置(如果存在)。否则,系统会设置新的配置,如请求正文中所述。
请按如下方式构建 API 请求:
- 在参数
updateMask
中,指定maintenance_policy
掩码。 - 在请求正文中,在维护政策配置中指定维护窗口:
{
"maintenancePolicy": {
"maintenanceWindow": {
"recurringTimeWindow": {
"window": {
"startTime": "START_TIME",
"endTime": "END_TIME"
},
"recurrence": "MAINTENANCE_RECURRENCE"
}
},
}
}
如需了解详情,请参阅配置维护窗口时间和重复规则 (RRULE)。
以下示例将更新实例的维护政策配置,维护窗口为每周的上午 11 点到下午 3 点(世界协调时间 [UTC] 上午 11 点到下午 3 点),即每周的周五、周六和周日。
// PATCH https://datafusion.googleapis.com/v1/projects/example-project/locations/us-central1/instances/example-instance?updateMask=maintenance_policy
{
"maintenancePolicy": {
"maintenanceWindow": {
"recurringTimeWindow": {
"window": {
"startTime": "2024-01-01T11:00:00Z",
"endTime": "2024-01-01T15:00:00Z",
},
"recurrence": "FREQ=WEEKLY;BYDAY=FR,SA,SU"
}
},
}
}
配置维护窗口时间和重复规则 (RRULE)
配置维护窗口的开始时间和结束时间时,系统会忽略所提供时间戳的日期部分。系统只会考虑一天中的时段以及开始时间和结束时间之间的时长。时间以世界协调时间 (UTC) 存储,但您在使用 API 安排维护窗口时,可以使用世界协调时间 (UTC) 或时区偏移量。
在配置重复周期时,请注意 RRULE 采用 UTC 日期格式,因此如果您的时区不同,请进行相应调整。例如,如果您的时区是太平洋夏令时间 (UTC-7),并且您希望维护窗口从您所在时区的星期三 21:00(对应于星期四的 4:00 UTC)开始,请在 RRULE 的 BYDAY
选项中指定 TH
,而不是 WE
。
删除实例的维护窗口
控制台
如需在 Google Cloud 控制台中删除现有实例中的维护窗口,请按以下步骤操作:
- 转到 Cloud Data Fusion 实例页面。
- 点击实例名称以查看实例详情。
- 在实例详情页面上,转到维护期字段,然后点击修改。
- 如需从实例中移除维护窗口,请清除启用维护窗口复选框。
- 点击保存。
REST API
如需从实例中移除维护窗口,请在请求正文中传递一个空的维护政策对象。
// PATCH https://datafusion.googleapis.com/v1/projects/example-project/locations/us-central1/instances/example-instance?updateMask=maintenance_policy
{
"maintenancePolicy": {}
}
后续步骤
- 参阅 instances API 文档。