Os clusters e instâncias do AlloyDB dependem de muitos recursos internos de baixo nível do Google Cloud . Isso inclui as instâncias de máquina virtual (VM) que servem como nós do AlloyDB e balanceadores de carga, além dos volumes de armazenamento que armazenam seus dados. Como o AlloyDB é um serviço gerenciado, o Google cuida de manter esses recursos internos atualizados. Isso ajuda a garantir que os clusters e as instâncias do AlloyDB permaneçam confiáveis, com bom desempenho e segurança.
A maioria dessas atualizações não exige tempo de inatividade, mas algumas atualizações do sistema exigem uma breve interrupção do serviço. Chamamos essas atualizações de manutenção. Como essas atualizações exigem que o nó afetado seja reiniciado, elas podem gerar tempos de inatividade.
As operações de manutenção sem interrupções do AlloyDB limitam o tempo de inatividade a menos de 1 segundo para instâncias primárias e secundárias e a zero segundos para pools de leitura. Essa inatividade próxima de zero e zero é conseguida preparando um servidor substituto com as atualizações e, em seguida, alternando o servidor de banco de dados. Como você pode ver nos registros, o tempo de operação é maior que o tempo de inatividade.
Motivos para manutenção
As atualizações de manutenção podem ocorrer pelos seguintes motivos:
Novos recursos do AlloyDB. Para lançar novos recursos, o Google precisa atualizar o software do AlloyDB em execução nos nós do cluster. Isso também pode envolver a atualização das extensões do PostgreSQL incluídas no AlloyDB ou a instalação de novas extensões.
Upgrades de compatibilidade do banco de dados. A comunidade do PostgreSQL lança regularmente atualizações de versões secundárias para versões principais com suporte do PostgreSQL. O Google incorpora essas atualizações ao AlloyDB e as aplica a clusters configurados para compatibilidade com a versão principal afetada. Para mais informações, consulte as políticas de versão do banco de dados.
Patches do sistema operacional. O Google monitora continuamente as vulnerabilidades de segurança nos sistemas operacionais executados nos recursos internos que constituem clusters do AlloyDB. Após a descoberta, aplicamos um patch aos sistemas operacionais dos recursos para proteger você contra novos riscos.
Horários e janelas de manutenção
É possível definir janelas de manutenção para clusters primários e secundários do AlloyDB. Por padrão, a manutenção não emergencial de um cluster do AlloyDB pode ocorrer a qualquer momento, exceto entre 6h e 22h nos dias úteis, no horário local da região em que o cluster está localizado.
Se o cluster for melhor atendido por um período de manutenção diferente do padrão, especifique uma janela de manutenção. Uma janela de manutenção define o horário de início dos eventos de manutenção do cluster, em termos de hora do dia e dia da semana. Por exemplo, é possível definir um cluster para ter uma janela de manutenção que começa às 11h (UTC) aos domingos.
Se você definir uma janela de manutenção, o AlloyDB vai programar eventos de manutenção não urgentes futuros para começar no máximo uma hora após o horário especificado. Além disso, se você ativar as notificações por e-mail sobre os próximos eventos de manutenção do AlloyDB, vai receber uma notificação automática sobre o evento assim que ele for programado. Os eventos de manutenção são programados com pelo menos uma semana de antecedência.
Não é possível definir o horário de término de uma janela de manutenção, já que o tempo total necessário para um único evento de manutenção pode variar dependendo da complexidade do cluster, ou seja, do número de instâncias de pool de leitura que precisam ser atualizadas, e da natureza da atualização. Embora o tempo de inatividade necessário para qualquer instância individual possa ser muito curto, toda a manutenção pode levar horas. Por esse motivo, é possível usar uma janela de manutenção para controlar o horário geral em que as instâncias do cluster ficam inativas para manutenção, mas não é possível especificar uma janela de inatividade de minuto a minuto para nenhuma instância.
Eventos de manutenção de emergência, como a aplicação de patches de segurança urgentes, podem ocorrer fora dos horários de manutenção padrão ou das janelas de manutenção configuradas.
Práticas recomendadas para janelas de manutenção
Recomendamos que você defina janelas de manutenção nos clusters de produção, e não defina janelas de manutenção nos clusters de não produção. Isso ocorre devido à seguinte ordem geral de eventos em uma atualização de manutenção:
- Primeiro, o Google atualiza todos os clusters que não têm janelas de manutenção.
- Em seguida, o Google programa atualizações para todos os clusters que têm janelas de manutenção. Essas atualizações têm pelo menos uma semana de antecedência.
- Se você tiver ativado o recebimento de comunicações sobre os próximos eventos de manutenção do AlloyDB, o Google vai enviar um e-mail com notificação sobre a manutenção programada.
- O Google realiza as atualizações de manutenção nos horários programados.
Portanto, uma notificação de manutenção futura também significa que as mesmas atualizações já foram aplicadas a todos os clusters sem janelas de manutenção definidas. Se você deixar os clusters que não são de produção sem janelas de manutenção, poderá garantir que eles recebam as atualizações do sistema primeiro e usar as notificações de manutenção futuras como um comando para testar ou visualizar as atualizações em um ambiente que não seja de produção.