Configurar janelas de manutenção

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

As janelas de manutenção são compatíveis com as instâncias do Cloud Data Fusion nas versões 6.8.0 e mais recentes.

Sobre as janelas de manutenção

Uma janela de manutenção no Cloud Data Fusion é um período em que você permite que ele realize operações de manutenção, reduzindo o risco de interrupções no serviço durante os horários de pico de uso. Programe janelas de manutenção durante os horários de pico ou quando a atividade for menor para minimizar o impacto nas instâncias do Cloud Data Fusion e nas execuções de pipeline.

A configuração de janelas de manutenção permite controlar quando as operações de manutenção ocorrem na instância:

  • Se a janela de manutenção for definida, as operações de manutenção serão realizadas pelo Cloud Data Fusion nos períodos definidos.
  • Se a janela de manutenção não for definida, a manutenção poderá ser realizada a qualquer momento.

Sobre as 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. Essas operações incluem a aplicação de atualizações críticas e patches de segurança para reduzir vulnerabilidades e proteger os dados do usuário. Os períodos de manutenção programados garantem que as atualizações sejam aplicadas de forma eficiente, preservando a integridade do sistema e minimizando a interrupção de instâncias e execuções de pipeline.

  • Ao configurar as janelas de manutenção, aloque pelo menos 12 horas por semana para operações de manutenção. Cada janela precisa ter entre 4 e 12 horas.
  • Durante o período de manutenção, algumas operações podem ser afetadas. Recomendamos que você faça janelas de manutenção fora dos horários de pico. A operação de manutenção pode afetar o Cloud Data Fusion das seguintes maneiras:

    • A interface do Cloud Data Fusion Studio pode estar temporariamente indisponível.
    • A execução do pipeline pode ser afetada, causando falha.
    • Os serviços do Cloud Data Fusion podem ficar temporariamente indisponíveis, fazendo com que as chamadas de API falhem.
    • As instâncias podem não funcionar totalmente por até uma hora durante o período de manutenção. Recomendamos que você configure janelas de manutenção quando os pipelines não estiverem em execução ou não estiverem programados para execução.

Especificar janelas de manutenção ao criar uma instância

Console

Para definir a janela de manutenção ao criar uma instância, siga estas etapas:

  1. Acesse a página Instâncias do Cloud Data Fusion e clique em Criar instância.

    Criar uma instância

  2. Insira um Nome da instância e uma Edição. Para mais informações sobre cada campo, consulte Criar uma instância.
  3. Expanda a seção Opções avançadas.
  4. Abra a seção Manutenção e siga estas etapas:
    1. Marque a caixa de seleção Ativar janela de manutenção.
    2. No campo Horário de início, insira um horário em um formato aceito.
    3. Na lista Fuso horário, selecione um fuso horário.
    4. Nas listas Days e Length, selecione os dias da semana e a duração da janela. Para mais informações sobre essas configurações, consulte Sobre as operações de manutenção.
    5. Clique em Criar.

Para mais informações, consulte Configurar horários e recorrência de janelas de manutenção (RRULE).

API REST

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

Substitua:

  • START_TIME: horário de início da janela de tempo, no formato RFC 3339.
  • END_TIME: horário de término da janela de tempo, no formato RFC 3339.
  • MAINTENANCE_RECURRENCE: uma RRULE para a recorrência da janela de manutenção. O Cloud Data Fusion só oferece suporte a estes formatos:

    • FREQ=WEEKLY;BYDAY=SU,MO,TU,WE,TH,FR,SA ou BYDAY=SU,MO,TU,WE,TH,FR,SA,MO;FREQ=WEEKLY. Isso especifica a recorrência semanal da janela nos dias selecionados, começando no startTime e pela duração especificada.

Para mais informações, consulte Configurar horários e recorrência de janelas de manutenção (RRULE).

O exemplo a seguir cria uma instância com uma janela de manutenção de seis horas entre 10h e 16h (UTC) aos sábados e domingos toda semana. Para mais informações, consulte a documentação da API de instâncias.

// 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

É possível especificar a janela de manutenção ao criar uma instância usando o comando gcloud beta data-fusion instances create.

Os parâmetros a seguir precisam ser definidos para uma janela de manutenção:

  • --maintenance-window-start define o horário de início da janela.
  • --maintenance-window-end define o horário de término da janela.
  • --maintenance-window-recurrence define uma RRULE para a recorrência da janela 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:

  • INSTANCE_NAME: o nome da instância.
  • PROJECT_NAME: o nome do projeto.
  • LOCATION: o nome da região da instância.
  • START_TIME: o horário de início da janela no formato de entrada de data/hora. Somente a hora especificada do dia é usada, a data especificada é ignorada.
  • END_TIME: o horário de término do período no formato de entrada de data/hora. Somente a hora especificada do dia é usada, a data especificada é ignorada. A data e a hora especificadas precisam ser posteriores ao horário de início.
  • MAINTENANCE_RECURRENCE: uma RRULE para a recorrência da janela de manutenção. O Cloud Data Fusion só oferece suporte a estes formatos:

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

Para mais informações, consulte Configurar horários e recorrência de janelas de manutenção (RRULE).

O comando a seguir cria uma instância com uma janela de manutenção de seis horas entre 12h e 18h (UTC) aos sábados e domingos de cada semana.

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'

Atualizar as janelas de manutenção de uma instância

Console

Para atualizar a janela de manutenção em uma instância no console do Google Cloud, siga estas etapas:

  1. Acesse a página Instâncias do Cloud Data Fusion.

    Acesse "Instâncias"

  2. Clique no nome da instância para conferir os detalhes dela.

  3. Na página Detalhes da instância, navegue até 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. Marque a caixa de seleção Ativar janela de manutenção.
    2. No campo Horário de início, insira um horário em um formato aceito.
    3. Na lista Fuso horário, selecione um fuso horário.
    4. Nas listas Days e Length, selecione os dias da semana e a duração da janela. Para mais informações sobre essas configurações, consulte Sobre as operações de manutenção.
  5. Clique em Salvar.

Para mais informações, consulte Configurar horários e recorrência de janelas de manutenção (RRULE).

API REST

Para instâncias existentes, atualize as janelas de manutenção usando a solicitação de API instances.patch. Isso substitui a configuração da janela de manutenção atual, se presente. Caso contrário, uma nova configuração será definida, conforme mencionado no corpo da solicitação.

Crie uma solicitação de API da seguinte maneira:

  1. No parâmetro updateMask, especifique a máscara maintenance_policy.
  2. No corpo da solicitação, especifique a janela 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 Configurar horários e recorrência de janelas de manutenção (RRULE).

O exemplo a seguir atualiza a configuração da política de manutenção da instância com uma janela de manutenção de quatro horas entre 11h e 15h (UTC) nas sextas-feiras, sábados e domingos de cada semana.

// 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

É possível atualizar a janela de manutenção de uma instância usando o comando gcloud beta data-fusion instances update.

Os parâmetros a seguir precisam ser definidos para uma janela de manutenção:

  • --maintenance-window-start define o horário de início da janela.
  • --maintenance-window-end define o horário de término da janela.
  • --maintenance-window-recurrence define uma RRULE para a recorrência da janela 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:

  • INSTANCE_NAME: o nome da instância.
  • PROJECT_NAME: o nome do projeto.
  • LOCATION: o nome da região da instância.
  • START_TIME: o horário de início da janela no formato de entrada de data/hora. Somente a hora especificada do dia é usada, a data especificada é ignorada.
  • END_TIME: o horário de término do período no formato de entrada de data/hora. Somente a hora especificada do dia é usada, a data especificada é ignorada. A data e a hora especificadas precisam ser posteriores ao horário de início.
  • MAINTENANCE_RECURRENCE: uma RRULE para a recorrência da janela de manutenção. O Cloud Data Fusion só oferece suporte a estes formatos:

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

O comando a seguir atualiza a instância example-instance com uma janela de manutenção de seis horas entre 12h e 18h (UTC) aos sábados e domingos toda semana.

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'

Configurar horários e recorrência da janela de manutenção (RRULE)

Quando você configura os horários de início e término da janela de manutenção, os componentes de data dos carimbos de data/hora fornecidos são ignorados. Só o horário do dia e a duração entre o início e o término são considerados. Os horários são armazenados no UTC, mas é possível usar o UTC ou o fuso horário local ao programar janelas de manutenção usando a API REST ou a CLI gcloud.

Ao configurar a recorrência, lembre-se de que a RRULE segue os dias UTC. Portanto, ajuste de acordo com seu fuso horário, se ele for diferente. Por exemplo, se o fuso horário for PDT (UTC-7) e você quiser que uma janela de manutenção comece às 21h todas as quartas-feiras no seu fuso horário (o que corresponde a 4h UTC nas quintas-feiras), especifique TH em vez de WE na opção BYDAY da RRULE.

Remover a janela de manutenção de uma instância

Console

Para remover a janela de manutenção em uma instância no console do Google Cloud, siga estas etapas:

  1. Acesse a página Instâncias do Cloud Data Fusion.

    Acesse "Instâncias"

  2. Clique no nome da instância para conferir os detalhes dela.

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

  4. Para remover a janela de manutenção da instância, desmarque a caixa de seleção Ativar janela de manutenção.

  5. Clique em Salvar.

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 da solicitação.

// 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:

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

A seguir