PGConf.Brasil - Zero Downtime – PostgreSQL Upgrades, por Erivelton Vichroski
Channel: Timbira
Date: 2019-09-30

Precisa cumprir metas de SLA e você tem que fazer atualizações dos binários do PostgreSQL com zero downtime? E agora? O que fazer?
A busca por manter o serviço sempre online é um desafio. Além disso, quando falamos “sempre online” logo pensamos em disponibilidade.

Para entendermos melhor o que é disponibilidade, é importante entendemos as seguintes questões:

Disponibilidade geralmente é apresentada como um percentual de um determinado tempo em que o sistema esteve disponível e acessível.

Este assunto por si só traz uma série de debates sobre como realizar a mensuração e está ligado aos chamados Contratos de Nível de Serviço , ou ainda, SLA do inglês Service Level Agreement.

No caso de um banco de dados, estar disponível é garantir que este consiga responder requisições em um tempo aceitável.

Para estar acessível, é necessário que os acessos ao banco de dados, muitas vezes, de diferentes localizações geográficas, consigam realizar as mesmas requisições e obter a resposta em um tempo aceitável.

Eventualmente, o banco de dados pode estar operacional, porém não acessível em uma determinada região geográfica. Isso pode acontecer por conta de problemas na infraestrutura da própria internet.

Esse tipo de cenário, do qual não temos capacidade alguma de influenciar ou se responsabilizar, é geralmente desconsiderado de uma análise de disponibilidade.

No entanto, se isto ocorrer por falta de capacidade do banco de dados em atender as requisições por sobrecarga, necessidade de parada do serviço para manutenção programada ou não, então é um problema de disponibilidade.

Com base no que foi exposto acima, a palestra Zero Downtime – PostgreSQL Upgrades procura ilustrar uma solução de alta disponibilidade, ou seja, mostra a inexistência de exceção por perda de conexão das aplicações conectadas ao banco de dados no momento em que os binários do PostgreSQL sofrem uma atualização.

Slides: https://wiki.postgresql.org/images/4/41/Pgconfbr-2k18-ZeroDowntimeUpgrades.pdf