Melhor escolha para configuração do cliente NTP

9

Vamos ver se alguém pode lançar um pouco de luz sobre esse assunto.

Estou instalando um servidor nos próximos dias. Meu cliente deseja implantar um HDP Hortonworks com 2 servidores como servidores mestre e 5 servidores trabalhadores. Um dos requisitos para todos eles é ter o NTP ativado. Mas essa é toda a informação que tenho, ele não me disse se quer um servidor local atuando como servidor NTP ou se todos os 7 servem como clientes. O sistema operacional será o Centos 6.6 ou 6.7.

Então, minha pergunta seria:

Considerando que esse ambiente não será um ambiente de produção, mas sim um ambiente de "teste", qual seria sua opção para configurar o NTP nessas máquinas? Todos os 7 atuando como clientes ou 1-2 servidores e cinco clientes?

lgg
fonte

Respostas:

9

Sinto fortemente que dois servidores locais, aos quais todos os outros se ligam, são o caminho certo a seguir. O NTP foi projetado para funcionar dessa maneira e minimiza a carga nos servidores públicos / de pool.

Eu executo um servidor de pool NTP. Mesmo em áreas com pools bem preenchidos, a carga ainda é significativa (estou executando uma média anualizada de 25 solicitações de clientes por segundo, o que significa cerca de 2,5 milhões por dia). Em algumas partes do mundo, os pools são tão pequenos que as poucas pessoas que executam servidores de pool ficam sobrecarregadas .

Editar : Aaron Copley faz a excelente ponto de que dois servidores tanto ser rejeitado pelos clientes, se apenas um deles está fora de sincronia , mas ainda acha que é correto (ver, por exemplo, esta questão ), e que ter dois (em vez de apenas um) simplesmente dobra o ponto único de falha. Ele está absolutamente certo de que três seriam melhores e, em uma rede de produção maior, eu concordaria que é apropriado para esse caso de uso. Na minha experiência, no entanto, devidamente configurado NTPD trabalha muito mais vezes do que ele falhar, e o risco de um único servidor estar indisponível e relógios cliente ficar muito longe para fora de sincronia para recuperar automaticamente muito superior ao risco de um servidor anunciando um defeito tempo e invalidar ambos.

Para mim, dois é o número certo de servidores sincronizados a montante para esta rede - mas há definitivamente uma discussão legítima a ser realizada em torno do problema, e sou grato a Aaron por ter levantado a questão.

Chapeleiro Louco
fonte
1
Um servidor é preferível a apenas dois. Se algo acontecer com esses dois servidores fora de sincronia, o algoritmo NTP não poderá determinar qual é preciso e rejeitará ambos. Melhor ainda seria três e isso é considerado pelos mantenedores como o número mínimo de servidores a serem configurados.
Aaron Copley
Não tenho dúvida de que você tem uma experiência mais prática, mas algo em torno de 1 ou 3, mas nunca 2 ficou comigo. Obrigado pela menção em sua edição. :)
Aaron Copley
O conselho contra os dois se baseia inteiramente nos problemas que ocorrem se eles discordam e, com base nisso, é excelente. Acabo de descobrir que isso geralmente não acontece sem que um dos servidores perca a sincronização e desqualifica-se como fonte . Um seria bom, tenho certeza; dois dão mais robustez. Mas eu pessoalmente (e é muito a minha opinião) sinto que três são demais, de um grupo de sete, em termos de carga na piscina. Ainda assim, como eu disse, é um excelente argumento que você faz, e definitivamente algo para as pessoas pensarem; Fiquei encantado em creditar você por aumentá-lo.
MadHatter
O link do @AaronCopley acima justifica muito claramente por que 4 deve ser considerado o limite baixo para o número de fontes (servidores ou pares) para manter o tempo preciso e ainda permitir manutenção programada ou uma falha em uma delas. Se nenhum dos servidores for malicioso, 2 é muito mais provável que seja preciso que 1 (já que na maioria das vezes as janelas se sobrepõem) e 3 é o mínimo para permitir que os algoritmos de agrupamento e interseção do NTP operem de maneira eficaz.
Paul Gear
@PaulGear como você diz, em uma grande rede quatro é um limite baixo sensato; meu servidor de pool tem cinco fontes. Mas, como você também observa, " se nenhum servidor é malicioso, 2 é muito mais provável que seja preciso que 1 ", portanto, em uma pequena rede como a do OP, onde quatro são um exagero injustificável, dois me parecem o equilíbrio certo entre serviços provisionar e sobrecarregar o pool. Obviamente, se você estiver configurando seus próprios servidores do estrato 1, tenha quantos desejar e puder pagar; minha resposta refere-se apenas à troca entre dever público e serviço privado ao usar servidores de pool.
21915 MadHatter
4

Com um ambiente tão pequeno e designado apenas como "teste", eu empurrava o NTP para a borda da rede. Execute o servidor NTP no seu switch ou roteador, se puder, e configure-o para 3 ou mais fontes de tempo upstream . Em seguida, aponte todos os 7 nós aqui. Provavelmente, esse é o seu único caminho para a Internet; portanto, configurar fontes de tempo adicionais "dentro" não faria nenhum favor se houver uma falha no comutador ou interrupção da rede. Você terá problemas piores que a sincronização horária se a sua rede estiver inoperante.

Aaron Copley
fonte
0

Eu iria para 1-2 servidores. Você poupa alguns pedidos à piscina. E se você perder a conectividade com o pool por um longo período de tempo por algum tempo, pelo menos as máquinas da sua rede interna permanecerão sincronizadas umas com as outras.

Pedro
fonte