O que fazemos · Operações: Builds de pacotes e mirror próprios

Quando uma falha grave é publicada, todos os servidores da internet estendem a mão aos mesmos mirrors públicos no mesmo momento. Os nossos servidores não têm de o fazer. Operamos o nosso próprio mirror de pacotes dentro do nosso datacenter, e quando uma correção existe upstream mas ainda não foi empacotada, construímo-la nós próprios.
O que é
Duas coisas que trabalham em conjunto.
O nosso próprio mirror. Uma cópia local completa dos repositórios Oracle Linux que os nossos servidores usam, dos repositórios da comunidade de que dependemos (incluindo os repositórios PHP do Remi), e das imagens de instalação para builds novos. Vive dentro da nossa própria rede, é acessível só a partir do nosso próprio espaço de endereços, e é de lá que os nossos servidores fazem patching.
Os nossos próprios builds. Quando uma versão corrigida já saiu na origem mas ainda não está nos repositórios da distribuição, construímos nós próprios o pacote a partir da própria especificação de pacote do maintainer da distribuição e disponibilizamo-lo no mirror, para que os seus servidores sejam corrigidos agora e voltem ao pacote oficial no momento em que este chegar.
Como o construímos
O mirror mantém-se consistente enquanto sincroniza. Cada repositório é sincronizado em duas fases: primeiro os pacotes, depois os metadados do repositório, descarregados para um sítio separado e trocados de uma só vez. Um servidor que faça patching a meio da sincronização vê ou o repositório antigo ou o novo, nunca uma mistura meio atualizada.
Histórico completo, não só o mais recente. Guardamos o histórico completo de pacotes dos repositórios do sistema operativo, para que um servidor possa ser reconstruído para um estado conhecido ou um pacote revertido para a versão anterior a partir da nossa própria cópia.
Uma página de estado mostra a frescura de cada repositório num relance.
Builds em sala limpa. Os nossos builds correm num container novo a partir do próprio source package e da própria especificação do maintainer, com o checksum do código-fonte verificado contra a versão oficial do projeto. Não alteramos mais nada.
Construídos para se afastar. Cada build interno é versionado de modo que o pacote oficial da distribuição o substitua automaticamente na atualização normal seguinte. Ninguém tem de se lembrar de desfazer o que quer que seja.
Do que o protege
- Um mirror público em timeout no único dia em que mais precisa dele.
- Uma falha ativamente explorada deixada aberta depois de a correção ter sido publicada.
- Um servidor que não pode ser corrigido porque está deliberadamente cortado da internet.
- Builds caseiros deixados a correr muito depois de a correção oficial existir.
Na prática
Builds de runtime no mesmo dia. Quando uma correção de segurança de PHP é lançada upstream antes de os mirrors públicos das distribuições a terem empacotado, construímos os pacotes corrigidos internamente a partir da especificação do maintainer poucas horas depois da versão upstream e distribuímo-los pelos servidores geridos dos clientes nessa mesma noite.
Patching dos servidores que não veem a internet. Os servidores deliberadamente isolados da internet, como sistemas de backup e de gestão, fazem patching a partir do mirror dentro da nossa rede como qualquer outro servidor. O isolamento nunca se torna desculpa para ficar por corrigir.
Porquê a EuroVPS
- O nosso próprio mirror de pacotes, dentro do nosso próprio datacenter.
- Pacotes corrigidos construídos internamente a partir da própria especificação do maintainer, no mesmo dia em que a correção é publicada.
- Os pacotes oficiais assumem automaticamente quando chegam.
- O patching dos servidores isolados nunca é bloqueado pelo mundo exterior.
Perguntas frequentes
Os meus servidores vão usar o vosso mirror? Os servidores que gerimos apontam para ele. O patching passa então a vir de dentro da nossa rede, depressa, seja qual for o estado dos mirrors públicos.
Alteram o software que constroem? Não. Construímos a versão upstream a partir da própria especificação do maintainer. A única diferença é a etiqueta de versão que permite ao pacote oficial substituir o nosso.
O que acontece quando o pacote oficial é lançado? O seu servidor passa para ele na atualização normal seguinte, automaticamente.
Os meus próprios servidores podem usar o mirror? Os servidores dentro da nossa rede podem. Peça-nos e configuramo-lo para os seus.
Se quer patching que não espera por ninguém, Fale com um engenheiro.
O seu próximo parceiro de infraestrutura
Vamos analisar a sua infraestrutura.
Diga-nos o que executa hoje e o que precisa de melhorar. Um engenheiro vai analisar o seu pedido e ajudar a planear o passo seguinte.
+357 222 32280
Comecemos pela sua infraestrutura.
Um pouco de contexto ajuda-nos a começar a conversa certa.
