Sites
Um site é uma instalação do Arkvory: a principal, um espelho em outro local, uma instalação que importa versões de outra. Em Sites, uma instalação, o controlador, mostra cada site que gerencia: se responde, sua versão, suas cópias de HA e gateways de leitura, seus espelhos e quanto estão atrasados, e sua fila de downloads. Só administradores globais veem a página.
Estado do cluster
A página começa com Estado do cluster: o que precisa de atenção nos sites e qual site alimenta qual. O controlador o monta a partir das últimas leituras dos sites, no máximo uma vez a cada 5 segundos, e inclui a si mesmo como “este site”.
Alertas
Cada alerta nomeia o site e o problema. Os mais graves vêm primeiro: Crítico, depois Aviso, depois Nota. Quando nada precisa de atenção, a lista diz isso.
| Alerta | Gravidade | Quando | O que fazer |
|---|---|---|---|
| Inacessível | Crítico | Sem resposta por 2 minutos. Uma leitura com falha não é alerta | Verifique o site e a rede |
| Certificado, revogado, recusado, inválido | Crítico | Imediatamente, com o estado de mesmo nome | Pareie de novo ou atualize as duas instalações |
| Desatualizado | Aviso | O site respondia, mas não é lido há três períodos de leitura (90 segundos) mais o tempo de uma rodada de leituras: as leituras em segundo plano do controlador travaram | Verifique o processo da API do controlador |
| Sem gravação | Crítico | Um processo de gravação recusa gravações sem estar em drenagem | Verifique o banco de dados e o disco dele |
| Cópias | Crítico | Faltam cópias dos dados de um site de HA; as gravações pausam até elas voltarem | Traga o nó ausente de volta, veja Cluster de alta disponibilidade |
| Cópia única | Aviso | Faltam cópias, mas um operador aceitou uma única cópia até um horário | Traga o nó ausente de volta antes desse horário |
| Falha do espelho | Aviso | A última sincronização de um espelho falhou. Ler de novo uma origem restaurada não conta | Leia o código de erro do espelho |
| Espelho atrasado | Aviso | Um espelho está ARKVORY_FLEET_LAG_ALERT alterações (1000 por padrão) ou mais atrás da sua origem | Verifique a origem, a rede e o espelho |
| Falha de atualização | Aviso | O atualizador do site relata uma falha | Abra Atualizações nas configurações do site |
| Outra versão | Nota | O site executa outra versão que o controlador | Atualize os sites para a mesma versão |
Os alertas usam apenas leituras recentes: um site que não responde gera o próprio alerta, não alertas sobre o que relatou por último. Uma rodada de leituras leva até 15 segundos para cada oito sites, porque o controlador lê no máximo oito por vez e espera até 15 segundos por cada um; o alerta de desatualizado soma esse tempo, para que muitos sites inacessíveis não façam os saudáveis parecerem travados. O Prometheus alerta com o mesmo ARKVORY_FLEET_LAG_ALERT, veja Monitoramento.
Ligações
Vínculos mostra qual site alimenta qual. Cada espelho e importação é uma seta do site de origem para o site que mantém o espelho.
- Uma origem em cujo endereço nenhum site gerenciado responde é desenhada pelo endereço, com borda tracejada. Se essa origem for o próprio controlador, defina
ARKVORY_SITE_URL, veja Configurações. - Uma ligação com falha fica tracejada em vermelho.
- O número em uma ligação é quantas alterações o espelho está atrás da sua origem.
- Enquanto um site não responde, suas ligações e o atraso delas ficam como ele os relatou por último, marcados como último estado conhecido: tracejados no mapa e com a dica Último estado conhecido: o site não responde na tabela.
Abaixo do mapa, uma tabela lista os mesmos dados: Origem, Site, Repositório, Repositório da origem e Atraso.
Administradores globais do controlador obtêm os mesmos alertas e ligações com GET /api/v1/fleet/overview, ou no SDK com client.fleet.overview(). Para o Prometheus, o controlador exporta o estado dos seus sites e o número de alertas: veja Monitoramento.
Como funciona
- O controlador mantém uma lista de sites. Ele lê cada site a cada 30 segundos por HTTPS e guarda a última resposta, então um site que para de responder ainda mostra seu último estado conhecido.
- Ao ser pareado, o site dá ao site controlador uma chave própria, a chave de frota. Ela alcança apenas o que o controlador precisa: o estado do site, as descrições do seu catálogo e as alterações listadas: a fila de downloads, as solicitações de atualização e as alterações de espelhos e HA para o agente do site. Não pode baixar bytes de arquivos, gravar em repositórios nem ler ou alterar contas e chaves.
- O controlador guarda as chaves de frota seladas com uma chave do seu diretório de dados (
fleet.key). O banco de dados e seus backups sozinhos não as revelam. Depois de uma restauração, pareie os sites de novo. - Cada site mostra quais controladores o gerenciam e pode revogá-los a qualquer momento.
Parear um site
- No site: abra Sites e, em Este site, escolha Criar um código de pareamento. O site mostra um código válido por dez minutos e, com HTTPS embutido, a impressão digital do seu certificado.
- No controlador: abra Sites, digite o endereço do site em Parear um site e escolha Verificar. O controlador conecta e mostra a impressão digital do certificado que recebeu.
- Compare as duas impressões digitais. Elas precisam ser iguais. Se forem diferentes, o endereço está errado ou algo está entre as instalações: não pareie.
- Digite o código e escolha Parear. O site aparece na lista com seu estado.
Um código vale uma vez. Um código usado ou expirado é recusado: crie um novo.
O endereço é o endereço HTTPS da API do site, por exemplo https://branch.example:8443. HTTP simples só é aceito no mesmo computador (127.0.0.1). Se o TLS termina em um proxy na frente do site, o site não consegue mostrar o certificado do proxy: compare com a impressão digital SHA-256 que o navegador mostra para o endereço do site.
A partir daí o controlador confia exatamente nesse certificado. Quando o site recebe um certificado novo, ele mostra Certificado mudou: remova o site e pareie de novo.
Estados
| Estado | Significado | O que fazer |
|---|---|---|
| Funcionando | O site respondeu à última leitura | Nada |
| Ainda não lido | O site ainda não foi lido | Aguarde a próxima leitura ou escolha Ler agora |
| Inacessível | Sem resposta: site parado ou rede fora | Verifique o site e a rede. O último estado conhecido continua visível |
| Certificado mudou | O site apresenta outro certificado que o confirmado | Se o certificado foi renovado, remova o site e pareie de novo |
| Acesso revogado | O administrador do site revogou este controlador | Pareie de novo com um novo código |
| Resposta inesperada | O site respondeu de um jeito que esta versão não entende | Atualize as duas instalações para a mesma versão |
| Recusado | O site recusou a solicitação | Pareie de novo com um novo código |
O que a lista mostra
- Versão: a versão do site e seu papel, gravação ou gateway de leitura.
- HA e gateways: em um cluster HA, as cópias completas e quantas uma gravação exige; os gateways de leitura que mantêm sua vaga.
- Espelhos: os espelhos e importações do site; quantas alterações o mais atrasado está atrás da sua origem, ou quantos estão parados.
- Fila de downloads: downloads em andamento e downloads que esperam na fila.
- Última resposta: quando o site respondeu pela última vez.
Ler todos agora lê todos os sites agora em vez de esperar a próxima rodada. Remover esquece um site aqui; revogue também o controlador no site, porque até lá a chave continua válida lá.
Conteúdo de um site
Conteúdo na linha de um site abre abaixo da lista seus repositórios, artefatos e arquivos. Escolha um repositório; Buscar procura artefatos por nome ou rótulo e lista os arquivos cujo caminho começa com o que você digitou. Mostrar mais lê a próxima página.
O controlador lê isso no site com sua chave de frota e mostra a resposta como o site a deu. Só trafegam descrições: nomes, tamanhos, rótulos, estágios, caminhos e revisões. Para baixar um arquivo, use o próprio site.
Configurações de um site
Configurações na linha de um site abre suas configurações abaixo da lista; Configurações deste site abre o mesmo cartão para este site. O cartão tem três partes:
- Fila de downloads: quantos downloads correm ao mesmo tempo, lugares reservados para pessoas, a estratégia, os pesos das classes e os demais valores da fila do controle de tráfego. Um campo vazio mantém o valor do ambiente do site, mostrado em cinza. Salvar configurações da fila aplica os valores na hora, sem reiniciar: novas decisões os seguem e downloads ativos mantêm seus lugares. Voltar aos padrões volta ao ambiente.
- Atualizações: a versão instalada e a mais recente, a instalação automática e a hora de manutenção, Verificar agora e Instalar atualização. O atualizador do site pega uma solicitação em até um minuto; até lá o cartão a mostra como aceita.
- Espelhos e cluster: os espelhos e importações do site com Substituir chave e Desconectar, Conectar um espelho ou uma importação com a chave de origem e, num cluster HA, Comutar para um nó com cópia completa (nome do nó digitado duas vezes) e a decisão de uma cópia. O agente do site aplica cada solicitação em até um minuto com as verificações e a reversão de
arkvory configureecluster-*; Solicitações ao agente mostra como cada uma terminou. A chave de origem vai ao agente uma vez, num arquivo próprio, e nunca mais é mostrada. O agente é o atualizador do site: conecte-o comupdates-connect.
Cada alteração leva a revisão de onde partiu. Se alguém alterou as configurações nesse meio-tempo, o site recusa a alteração e o cartão mostra os valores atuais: confira e salve de novo. O site registra quem alterou sua fila: a chave do controlador e o nome do administrador dele.
A partir do controlador, um espelho ou uma importação só é conectado como repositório novo, e o certificado da autoridade de uma origem é definido no próprio site (arkvory configure --mirror-ca-file): aquilo em que um site confia nunca muda remotamente. A lista de solicitações mostra com um código como cada alteração terminou; as palavras do próprio agente ficam no log dele no site. Se uma alteração foi interrompida no meio, o agente não pega outra até que um administrador do site a verifique e execute lá arkvory changes-reset --root <raiz>.
Quem gerencia este site
Em Este site, cada site lista os controladores que o gerenciam: nome, quem os pareou, quando e a última solicitação. Revogar recusa a chave do controlador na hora.
Configurações
| Variável | Padrão | Significado |
|---|---|---|
ARKVORY_SITE_NAME | o nome do host | Como esta instalação se chama em outros sites |
ARKVORY_FLEET_KEY_FILE | fleet.key no diretório de dados | A chave que sela as chaves dos sites gerenciados; criada no primeiro início do processo de gravação |
ARKVORY_SITE_URL | não definida | O endereço https://host[:port] pelo qual outros sites chegam a esta instalação. Com ele, espelhos cuja origem é esta instalação ligam a ela em Vínculos. Um valor inválido impede o início |
ARKVORY_FLEET_LAG_ALERT | 1000 | Alterações de atraso em relação à origem a partir das quais um espelho de um site gerenciado gera alerta; número inteiro, 1 ou mais |
Limites
- Testes de isolamento e a adição ou remoção de nós do cluster continuam sendo comandos locais nos nós. Gateways de leitura mantêm a fila de downloads do seu ambiente.
- Um controlador gerencia até 256 sites e lê no máximo oito ao mesmo tempo.
- O controlador guarda uma chave de cada site que gerencia: proteja os administradores globais e o diretório de dados dele com o mesmo cuidado que os próprios sites.