Como fazer a contagem de tempo VPS adequada?

3

Estou configurando um VPS para registrar alguns dados on-line da série temporal e percebo que o tempo está desativado. Eu gostaria de ter uma precisão de mais de 10 segundos nisso.

Eu li em algum lugar que o controle de tempo VPS é diferente do que em sistemas nativos (x86) porque o erro difere de acordo com a carga do sistema ou algo assim? E o ntpd pode não ser adequado para operação dentro de um VPS por causa disso?

Bastante com o boato, eu gostaria de saber: Como eu mantenho tempo de sistema adequado em um VPS? Isso difere por tecnologia de virtualização ou pelo provedor de VPS? E por que o ntpd não seria adequado para operação dentro de um VPS?

    
por Xunie 29.04.2018 / 17:29

2 respostas

2

Versão resumida: A marcação do tempo em contêineres (que é o que a maioria dos VPSs são) é de responsabilidade do host; você provavelmente precisará fazer lobby no seu provedor de VPS para corrigir isso.

Nota : Este conselho não se aplica se o seu VPS for um Xen (por exemplo, AWS), KVM (por exemplo, GCE) ou virtual do Hyper-V (por exemplo, Azure) máquina. Nesse caso, o kernel e seu driver de clock são virtualizados, e você deve tratá-los como se fosse uma máquina bare-metal e executar um cliente NTP como ntpd , chronyd ou systemd-timesyncd .

Versão mais longa: se o seu VPS for um contêiner típico, o NTP não poderá disciplinar o relógio local. O relógio do kernel não é contêinerizado (namespaced), e a maioria dos gerenciadores de contêiner (por exemplo, OpenVZ, Docker, LXC / LXD) não concede o recurso de tempo do kernel a contêineres. (Veja link para discussão sobre isso no contexto do Ubuntu e Chrony.)

Se você está alugando seu VPS de um provedor típico, parece que eles falharam em configurar o NTP ou o configuraram mal e não o estão monitorando.

Você pode usar uma configuração como link para que o ntpd seja executado em seu contêiner sem tentar alterar o relógio local ( a linha disable kernel é a parte importante). Isso permitirá que você monitore o servidor NTP do host (se houver); adicione pool.ntp.org ou outro serviço NTP público se quiser comparar o relógio do seu host VPS com algumas fontes externas.

    
por 30.04.2018 / 12:08
3

Se você tiver acesso ao hardware, virtual (VM) ou físico (bare metal / hipervisor), poderá e deverá usar o NTP para sincronizar.

Faça suas próprias experiências configurando o ntpd e ativando estatísticas em vários hosts. Compare com seus relógios de referência favoritos e veja como eles funcionam.

Existem desafios operacionais para muito cronometragem e VMs precisas. No entanto, eles tendem a importar apenas em ordens de magnitude melhores do que os segundos de um dígito.

    
por 30.04.2018 / 03:50