/learn são servidas pelo serviço web (o módulo learn) de cada pod do Ayakaleaf Pro, a partir de um cache da wiki definida em WIKI_URL. O que o módulo faz e quais wikis funcionam está descrito em Adicionar ajuda de LaTeX para usuários.
Configuração
30-config.yaml (additions)
WIKI_URL: sem isso, o serviço web falha ao iniciar e é reiniciado dentro do pod repetidamente, de modo que o pod nunca fica pronto. Desative o módulo ou permita que os pods acessem a wiki. Depois que o cache existir, os pods iniciam e servem as páginas em cache mesmo enquanto a wiki não puder ser alcançada.
Várias réplicas
Cada réplica mantém seu próprio cache no disco do seu nó, então cada uma baixa a wiki na sua primeira inicialização; compodManagementPolicy: OrderedReady, elas fazem isso uma após a outra. Um usuário pode ver uma página em uma versão ligeiramente diferente em outra réplica até que ela seja atualizada lá.
Testado no Kubernetes
No Kubernetes 1.37 com três réplicas atrás do HAProxy, cada uma baixandohttps://learnwiki.overleaf.com para o cache do seu próprio nó na primeira inicialização, nossos testes de ponta a ponta para /learn passam (12 casos): o link Documentation no cabeçalho, a mensagem de boas-vindas e o menu Help do editor, a barra lateral de conteúdo, páginas, links e redirecionamentos dentro da wiki, imagens carregadas da wiki, 404 para páginas desconhecidas, o login exigido sem acesso público e uma página desatualizada servida do cache após WIKI_URL ser alterada para um endereço que não pode ser alcançado. Começando com um cache vazio e WIKI_URL apontando para um endereço que recusa conexões, o pod permaneceu não pronto sem reiniciar, enquanto o serviço web dentro dele iniciou e falhou 77 vezes em três minutos.
