Configure períodos de manutenção

Esta página explica como definir janelas de manutenção para instâncias do Cloud Data Fusion.

As janelas de manutenção são suportadas para instâncias do Cloud Data Fusion nas versões 6.8.0 e posteriores.

Acerca dos períodos de manutenção

Uma janela de manutenção no Cloud Data Fusion é um período durante o qual permite que sejam realizadas operações de manutenção, reduzindo o risco de interrupções do serviço durante as horas de pico de utilização. Agendar períodos de manutenção durante as horas de menor atividade ou as horas em que a sua atividade é inferior minimiza o respetivo impacto nas instâncias do Cloud Data Fusion e nas execuções de pipelines.

A configuração de períodos de manutenção permite-lhe controlar quando as operações de manutenção ocorrem na sua instância:

  • Se o período de manutenção estiver definido, as operações de manutenção são realizadas pelo Cloud Data Fusion nos períodos definidos.
  • Se o período de manutenção não estiver definido, a manutenção pode ser realizada em qualquer altura.

Acerca das operações de manutenção

Para garantir a segurança e a conformidade do sistema, o Cloud Data Fusion realiza operações de manutenção regulares. Estas operações incluem a aplicação de atualizações críticas e patches de segurança para mitigar vulnerabilidades e proteger os dados do utilizador. As janelas de manutenção agendadas garantem que as atualizações são aplicadas de forma eficiente, preservando a integridade do sistema e minimizando a interrupção das execuções de instâncias e pipelines.

  • Quando configura as janelas de manutenção, tem de atribuir, pelo menos, 12 horas por semana para operações de manutenção. Cada período tem de ter entre 4 e 12 horas.
  • Durante o período de manutenção, determinadas operações podem ser afetadas. Recomendamos que tenha janelas de manutenção durante as horas de utilização fora de pico. A operação de manutenção pode afetar o Cloud Data Fusion das seguintes formas:

    • A interface do Cloud Data Fusion Studio pode estar temporariamente indisponível.
    • A execução do pipeline pode ser afetada, o que causa falhas.
    • Os serviços do Cloud Data Fusion podem estar temporariamente inativos, o que faz com que as chamadas API falhem.
    • As instâncias podem não estar totalmente funcionais durante um período máximo de uma hora durante o horário da janela de manutenção. Recomendamos que configure janelas de manutenção quando os pipelines não estiverem em execução ou não estiverem agendados para execução.

Especifique períodos de manutenção durante a criação de uma instância

Consola

Para definir o período de manutenção quando cria uma instância, siga estes passos:

  1. Aceda à página Instances do Cloud Data Fusion e clique em Create instance.

    Crie uma instância

  2. Introduza um Nome da instância e uma Edição. Para mais informações sobre cada campo, consulte o artigo Crie uma instância.
  3. Expanda a secção Opções avançadas.
  4. Expanda a secção Manutenção e siga estes passos:
    1. Selecione a caixa de verificação Ativar período de manutenção.
    2. No campo Hora de início, introduza uma hora num formato suportado.
    3. Na lista TimeZone, selecione um fuso horário.
    4. Nas listas Dias e Duração, selecione os dias da semana e a duração da janela. Para mais informações sobre estas definições, consulte o artigo Acerca das operações de manutenção.
    5. Clique em Criar.

Para mais informações, consulte o artigo Configure as horas e a recorrência (RRULE) do período de manutenção.

API REST

  1. Defina a configuração Instance através da API instance.create:
{
  "name": string,
  "description": string,
  
  
  "maintenancePolicy": {
    "maintenanceWindow": {
      "recurringTimeWindow": {
        "window": {
            "startTime": "START_TIME",
            "endTime": "END_TIME"
        },
        "recurrence": "MAINTENANCE_RECURRENCE"
      }
    },
  }
}

Substitua o seguinte:

  • START_TIME: hora de início do período, no formato RFC 3339.
  • END_TIME: hora de fim do período, no formato RFC 3339.
  • MAINTENANCE_RECURRENCE: uma RRULE para a recorrência do período de manutenção. O Cloud Data Fusion apenas suporta os seguintes formatos:

    • FREQ=WEEKLY;BYDAY=SU,MO,TU,WE,TH,FR,SA ou BYDAY=SU,MO,TU,WE,TH,FR,SA,MO;FREQ=WEEKLY. Isto especifica a recorrência semanal da janela nos dias selecionados, a partir das startTime, e durante a duração especificada.

Para mais informações, consulte o artigo Configure as horas e a recorrência (RRULE) do período de manutenção.

O exemplo seguinte cria uma instância com uma janela de manutenção de seis horas entre as 10:00 e as 16:00 (UTC) todos os sábados e domingos. Para mais informações, consulte a documentação da API Instances.

// 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"
          }
      },
  }
}

gcloud

Pode especificar o período de manutenção enquanto cria uma instância através do comando gcloud beta data-fusion instances create.

Os seguintes parâmetros têm de ser definidos para uma janela de manutenção:

  • --maintenance-window-start define a hora de início do período.
  • --maintenance-window-end define a hora de fim da janela.
  • --maintenance-window-recurrence define uma RRULE para a recorrência do período de manutenção.
gcloud beta data-fusion instances create INSTANCE_NAME \
    --project=PROJECT_NAME \
    --location=LOCATION \
    --maintenance-window-start=START_TIME \
    --maintenance-window-end=END_TIME \
    --maintenance-window-recurrence=MAINTENANCE_RECURRENCE

Substitua o seguinte:

  • INSTANCE_NAME: o nome da instância.
  • PROJECT_NAME: o nome do projeto.
  • LOCATION: o nome da região da instância.
  • START_TIME: a hora de início da janela no formato de entrada de data/hora. Só é usado o horário especificado do dia. A data especificada é ignorada.
  • END_TIME: a hora de fim da janela no formato de entrada de data/hora. Só é usado o horário especificado do dia. A data especificada é ignorada. A data e a hora especificadas têm de ser posteriores à hora de início.
  • MAINTENANCE_RECURRENCE: uma RRULE para a recorrência do período de manutenção. O Cloud Data Fusion apenas suporta os seguintes formatos:

    • FREQ=WEEKLY;BYDAY=SU,MO,TU,WE,TH,FR,SA ou BYDAY=SU,MO,TU,WE,TH,FR,SA,MO;FREQ=WEEKLY. Isto especifica a recorrência semanal da janela nos dias selecionados, a partir da hora --maintenance-window-start e durante a duração especificada.

Para mais informações, consulte o artigo Configure as horas e a recorrência (RRULE) do período de manutenção.

O seguinte comando cria uma instância com uma janela de manutenção de seis horas entre as 12:00 e as 18:00 (UTC) todos os sábados e domingos.

gcloud beta data-fusion instances create example-instance \
    --project='example-project' \
    --location='us-east1' \
    --maintenance-window-start='2024-01-01T12:00:00Z' \
    --maintenance-window-end='2024-01-01T18:00:00Z' \
    --maintenance-window-recurrence='FREQ=WEEKLY;BYDAY=SA,SU'

Atualize os períodos de manutenção de uma instância

Consola

Para atualizar o período de manutenção numa instância existente na Google Cloud consola, siga estes passos:

  1. Aceda à página Instâncias do Cloud Data Fusion.

    Aceda a Instâncias

  2. Clique no nome da instância para ver os respetivos detalhes.

  3. Na página Detalhes da instância, navegue para o campo Janela de manutenção e clique em Editar.

  4. Os campos da janela de manutenção são abertos no modo de edição. Atualize os valores, conforme necessário:

    1. Selecione a caixa de verificação Ativar período de manutenção.
    2. No campo Hora de início, introduza uma hora num formato suportado.
    3. Na lista TimeZone, selecione um fuso horário.
    4. Nas listas Dias e Duração, selecione os dias da semana e a duração da janela. Para mais informações sobre estas definições, consulte o artigo Acerca das operações de manutenção.
  5. Clique em Guardar.

Para mais informações, consulte o artigo Configure as horas e a recorrência (RRULE) do período de manutenção.

API REST

Para instâncias existentes, atualize as janelas de manutenção através do pedido da API instances.patch. Isto substitui a configuração do período de manutenção existente, se estiver presente. Caso contrário, é definida uma nova configuração, conforme mencionado no corpo do pedido.

Construa um pedido de API da seguinte forma:

  1. No parâmetro updateMask, especifique a máscara maintenance_policy.
  2. No corpo do pedido, especifique o período de manutenção na configuração da política de manutenção:
{
  "maintenancePolicy": {
    "maintenanceWindow": {
        "recurringTimeWindow": {
          "window": {
              "startTime": "START_TIME",
              "endTime": "END_TIME"
          },
          "recurrence": "MAINTENANCE_RECURRENCE"
        }
    },
  }
}

Para mais informações, consulte o artigo Configure as horas e a recorrência (RRULE) do período de manutenção.

O exemplo seguinte atualiza a configuração da política de manutenção da instância com uma janela de manutenção de quatro horas entre as 11:00 e as 15:00 (UTC) às sextas-feiras, sábados e domingos todas as semanas.

// 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"
    }
  },
}
}

gcloud

Pode atualizar o período de manutenção de uma instância através do comando gcloud beta data-fusion instances update.

Os seguintes parâmetros têm de ser definidos para uma janela de manutenção:

  • --maintenance-window-start define a hora de início do período.
  • --maintenance-window-end define a hora de fim da janela.
  • --maintenance-window-recurrence define uma RRULE para a recorrência do período de manutenção.
gcloud beta data-fusion instances update INSTANCE_NAME \
    --project=PROJECT_NAME \
    --location=LOCATION \
    --maintenance-window-start=START_TIME \
    --maintenance-window-end=END_TIME \
    --maintenance-window-recurrence=MAINTENANCE_RECURRENCE

Substitua o seguinte:

  • INSTANCE_NAME: o nome da instância.
  • PROJECT_NAME: o nome do projeto.
  • LOCATION: o nome da região da instância.
  • START_TIME: a hora de início da janela no formato de entrada de data/hora. Só é usado o horário especificado do dia. A data especificada é ignorada.
  • END_TIME: a hora de fim da janela no formato de entrada de data/hora. Só é usado o horário especificado do dia. A data especificada é ignorada. A data e a hora especificadas têm de ser posteriores à hora de início.
  • MAINTENANCE_RECURRENCE: uma RRULE para a recorrência do período de manutenção. O Cloud Data Fusion apenas suporta os seguintes formatos:

    • FREQ=WEEKLY;BYDAY=SU,MO,TU,WE,TH,FR,SA ou BYDAY=SU,MO,TU,WE,TH,FR,SA,MO;FREQ=WEEKLY. Isto especifica a recorrência semanal da janela nos dias selecionados, a partir da hora --maintenance-window-start e durante a duração especificada.

O comando seguinte atualiza a instância example-instance com um período de manutenção de seis horas entre as 12:00 e as 18:00 (UTC) aos sábados e domingos todas as semanas.

gcloud beta data-fusion instances update example-instance \
    --project='example-project' \
    --location='us-east1' \
    --maintenance-window-start='2024-01-01T12:00:00Z' \
    --maintenance-window-end='2024-01-01T18:00:00Z' \
    --maintenance-window-recurrence='FREQ=WEEKLY;BYDAY=SA,SU'

Configure os horários e a recorrência (RRULE) do período de manutenção

Quando configura as horas de início e de fim para o período de manutenção, os componentes de data das indicações de tempo fornecidas são ignorados. Apenas são considerados a hora do dia e a duração entre a hora de início e a hora de fim. As horas são armazenadas em UTC, mas pode usar o UTC ou o seu desvio de fuso horário quando agenda janelas de manutenção através da API REST ou da CLI gcloud.

Quando configurar a recorrência, tenha em atenção que a RRULE segue os dias UTC, pelo que deve fazer os ajustes necessários se o seu fuso horário for diferente. Por exemplo, se o seu fuso horário for PDT (UTC-7) e quiser que uma janela de manutenção comece às 21:00 às quartas-feiras no seu fuso horário (o que corresponde às 04:00 UTC às quintas-feiras), especifique TH em vez de WE na opção BYDAY da RRULE.

Remova o período de manutenção de uma instância

Consola

Para remover a janela de manutenção numa instância existente na Google Cloud consola, siga estes passos:

  1. Aceda à página Instâncias do Cloud Data Fusion.

    Aceda a Instâncias

  2. Clique no nome da instância para ver os respetivos detalhes.

  3. Na página Detalhes da instância, navegue para o campo Janela de manutenção e clique em Editar.

  4. Para remover o período de manutenção da instância, desmarque a caixa de verificação Ativar período de manutenção.

  5. Clique em Guardar.

API REST

Para remover a janela de manutenção de uma instância, transmita um objeto de política de manutenção vazio no corpo do pedido.

// PATCH https://datafusion.googleapis.com/v1/projects/example-project/locations/us-central1/instances/example-instance?updateMask=maintenance_policy

{
    "maintenancePolicy": {}
}

gcloud

Para remover a janela de manutenção de uma instância, use o comando gcloud beta data-fusion instances update com a flag --clear-maintenance-window.

gcloud beta data-fusion instances update INSTANCE_NAME \
    --project=PROJECT_NAME \
    --location=LOCATION \
    --clear-maintenance-window

Substitua o seguinte:

  • INSTANCE_NAME: o nome da instância.
  • PROJECT_NAME: o nome do projeto.
  • LOCATION: o nome da região da instância.

O que se segue?