Definir a referência de horas na instância do EC2 para usar o Serviço de Sincronização Temporal da Amazon local
O Serviço de Sincronização Temporal da Amazon fornece vários métodos para que sua instância do Amazon EC2 seja sincronizada com uma fonte de horário local. Primeiro, qualquer instância do Amazon EC2 pode acessar uma fonte de horário local por meio do Network Time Protocol (NTP). Além disso, o Serviço de Sincronização Temporal da Amazon aprimorado oferece fontes de horário local de maior precisão para instâncias compatíveis do Amazon EC2. Inicie sua instância compatível em um grupo de posicionamento com a estratégia precision-time para alcançar uma fonte de NTP de maior precisão. Por fim, as instâncias Linux iniciadas em um grupo de posicionamento de horário de precisão têm acesso a um dispositivo PTP Hardware Clock (PHC) e a capacidade de recuperar carimbos de data e hora de pacotes de hardware.
Qualquer instância do Amazon EC2 tem acesso à fonte de NTP local. Você pode acessar a fonte de NTP por meio de um endereço IP de link local, o que restringe esse tráfego à sua VPC sem a necessidade de alterações específicas na configuração da VPC. É possível que a AMI já tenha configurado o daemon de sincronização de relógio para usar a fonte de NTP local por padrão. Essa fonte de NTP está disponível nos seguintes endereços IP:
-
IPv4:
169.254.169.123 -
IPv6:
fd00:ec2::123(Acessível somente em instâncias baseadas em Nitro.)
As instâncias do Amazon EC2 suportadas têm acesso ao Serviço de Sincronização Temporal da Amazon aprimorado. Para acessar o Serviço de Sincronização Temporal da Amazon aprimorado, inicie uma instância compatível em um grupo de posicionamento com a estratégia precision-time. Você não precisa configurar sua instância para se beneficiar dessa melhoria se usar os endereços IP de link local NTP. Qualquer sistema operacional pode usar esse aprimoramento. Você pode verificar se há o benefício da fonte de NTP aprimorada usando o cliente NTP de sua escolha.
As AMIs baseadas em Linux, executadas em famílias de instâncias suportadas, têm a opção adicional de obter tempo de um dispositivo PHC. O driver ENA disponibiliza esse dispositivo. Tanto a fonte NTP aprimorada quanto o dispositivo PHC usam a mesma fonte de tempo altamente precisa. O acesso à fonte de horário do PHC é otimizado, levando a uma sincronização mais precisa da sua instância do Amazon EC2.
Considerações
A fonte de tempo do NTP oferece uma visão panorâmica da escala de tempo UTC, enquanto o PHC não distorce o tempo. Para obter mais informações, consulte Segundos bissextos.
Somente as instâncias do Linux têm acesso ao relógio de hardware PTP local. As instâncias do Windows devem usar o NTP para acessar o Serviço de Sincronização Temporal da Amazon aprimorado.
Há um limite de 1.024 pacotes por segundo (PPS) para serviços que usam endereços locais do link. Esse limite inclui o agregado de consultas ao DNS do Route 53 Resolver, solicitações do Serviço de metadados de instância (IMDS), solicitações do Serviço de Sincronização Temporal da Amazon com Network Time Protocol (NTP) e solicitações do Windows Licensing Service (para instâncias baseadas no Microsoft Windows)
.
Conteúdo
Acesso ao endpoint IPv4 do Serviço de Sincronização Temporal da Amazon
É possível que a AMI já tenha configurado o Serviço de Sincronização Temporal da Amazon por padrão. Caso contrário, use os procedimentos a seguir para configurar sua instância de forma a usar o Serviço de Sincronização Temporal da Amazon local por meio do endpoint IPv4.
Para obter ajuda com a solução de problemas, consulte Solucionar problemas de sincronização de NTP em instâncias Linux
Acesso ao endpoint IPv6 do Serviço de Sincronização Temporal da Amazon
Esta seção explica como as etapas descritas no Acesso ao endpoint IPv4 do Serviço de Sincronização Temporal da Amazon diferem se você estiver configurando a instância para usar o Serviço de Sincronização Temporal da Amazon local por meio do endpoint IPv6. Ela não explica todo o processo de configuração do Amazon Time Sync Service.
O endpoint IPv6 só é acessível em instâncias baseadas em Nitro.
Não recomendamos usar as entradas de endpoint IPv4 e IPv6 em conjunto. Os pacotes IPv4 e IPv6 NTP vêm do mesmo servidor local para a sua instância. Configurar ambos os endpoints IPv4 e IPv6 é desnecessário e não melhorará a precisão da hora na instância.
Acesse o Serviço de Sincronização Temporal da Amazon aprimorado
Além disso, o Serviço de Sincronização Temporal da Amazon aprimorado oferece fontes de horário local de maior precisão para instâncias compatíveis do Amazon EC2. As instâncias iniciadas em um grupo de posicionamento com uma estratégia precision-time podem acessar essas fontes locais. Recomendamos grupos de posicionamento de tempo de precisão para aplicativos que exigem um horário mais preciso da fonte NTP de link local ou de um dispositivo PTP Hardware Clock (PHC) em uma instância Linux. Quando você executa instâncias em um grupo de posicionamento de tempo de precisão, a AWS coloca em hardware compatível com acesso direto a fontes de tempo de alta precisão na infraestrutura AWS.
Benefícios principais
-
Fonte de NTP aprimorada por padrão — Sua instância tem acesso imediato a uma fonte de horário NTP local aprimorada, se você usar os endereços IP de link local NTP conforme descrito na seção anterior.
-
Sincronização de relógio com precisão de microssegundos — Configure sua instância Linux do Amazon EC2 para usar um dispositivo PTP Hardware Clock e obter uma sincronização de relógio com precisão de microssegundos.
-
Implantação simplificada — a estratégia de posicionamento único garante que todas as instâncias tenham recursos de precisão de tempo.
-
Registro de data e hora de pacotes de hardware — Acesse registros de data e hora de pacotes de baixo nível para medições de rede.
-
Sem custo adicional — Grupos de colocação de tempo preciso estão disponíveis sem custo adicional.
Regras e limitações
-
Grupos de posicionamento por tempo preciso estão disponíveis em todas as regiões comerciais AWS.
-
Os grupos de posicionamento temporal de precisão oferecem suporte às seguintes famílias de instâncias do Amazon EC2 de 7ª geração e posteriores:
-
Uso geral: M7a, M7g, M7g-flex, M7gd, M7i, M7i-flex, M8a, M8g, M8g-flex
-
Otimizadas para computação: C7a, C7gd, C7i, C7i-flex, C8g, C8g-flex, C8gd
-
Otimizadas para memória: R7a, R7g, R7i, R7id, R8g, X8adez, X8adz-3tb, X8adz-6tb, X8adzs, X8aedez, X8aedz-3tb, X8aedz-6tb, X8aez, X8az, X8g, X8ge
-
Otimizadas para armazenamento: I8g, I8ge
-
-
Se você iniciar ou executar uma instância em um grupo de posicionamento temporal preciso e não houver uma quantidade suficiente de hardware para dar acesso ao Serviço de Sincronização Temporal da Amazon aprimorado, ocorrerá uma falha.
-
Se você interrompe uma instância em um grupo de posicionamento de tempo preciso e depois a inicia novamente, ela ainda será executada no grupo de posicionamento. No entanto, o início pode falhar se não houver hardware suficiente para dar acesso ao Serviço de Sincronização Temporal da Amazon aprimorado.
-
O Amazon EC2 adiciona continuamente hardware que suporta o Serviço de Sincronização Temporal da Amazon aprimorado. Se sua solicitação falhar devido à capacidade insuficiente, tente novamente mais tarde ou tente outra zona de disponibilidade. Para obter mais informações, consulte Solucionar problemas de inicialização de instâncias do Amazon EC2.
-
Regras e limitações de grupos de posicionamento são aplicadas Para obter mais informações, consulte . Grupos de posicionamento para as instâncias do Amazon EC2
Crie um grupo de posicionamento de tempo preciso
Você pode criar um grupo de posicionamento de tempo preciso usando a CLI AWS, o AWS Management Console ou SDKs AWS, especificando a estratégia. precision-time
Usar a AWS CLI
Execute o seguinte comando:
aws ec2 create-placement-group \ --group-namemy-precision-time-pg\ --strategy precision-time
O comando retorna um ARN do grupo de posicionamento que você usa ao criar reservas de capacidade e um nome ou ID do grupo que você usa ao iniciar instâncias e vincular grupos de posicionamento.
Iniciar uma instância
Depois de criar um grupo de posicionamento de horário preciso, especifique-o ao iniciar instâncias para acessar o Serviço de Sincronização Temporal da Amazon aprimorado:
aws ec2 run-instances \ --image-idami-0abcdef1234567890\ --instance-typer7g.2xlarge\ --placement GroupId=pg-0aaa1111111111111
Verifique o acesse ao Serviço de Sincronização Temporal da Amazon aprimorado
Depois de executar sua instância em um grupo de posicionamento de tempo preciso, você se beneficia de uma fonte de tempo de NTP aprimorada.
Por exemplo, se você usar o daemon chronyd em sua instância, poderá verificar se a fonte de horário do NTP agora é chamada de Stratum 1 e se tem métricas de precisão do relógio aprimoradas:
[ec2-user ~]$chronyc sources
MS Name/IP address Stratum Poll Reach LastRx Last sample
===============================================================================
^* 169.254.169.123 1 4 377 3 +3477ns[+4689ns] +/- 91us
Verifique as métricas de sincronização da hora informadas pelo chrony.
[ec2-user ~]$chronyc tracking
Reference ID : A9FEA97B (169.254.169.123)
Stratum : 2
Ref time (UTC) : Wed May 06 01:33:43 2026
System time : 0.000000276 seconds fast of NTP time
Last offset : +0.000000331 seconds
RMS offset : 0.000001929 seconds
Frequency : 2.870 ppm fast
Residual freq : +0.000 ppm
Skew : 0.031 ppm
Root delay : 0.000107584 seconds
Root dispersion : 0.000036476 seconds
Update interval : 16.2 seconds
Leap status : Normal
Acesse o relógio de hardware PTP (PHC)
O PTP Hardware Clock (PHC) faz parte do Sistema AWSNitro. Ele pode ser acessado diretamente em instâncias bare metal e virtualizadas suportadas do Amazon EC2, iniciadas em um grupo de posicionamento de tempo preciso. Atualmente, o dispositivo PHC está acessível apenas em instâncias Linux. As seções a seguir descrevem como configurar e verificar o dispositivo PHC na sua instância Linux.
Requisitos
-
Driver ENA versão 2.10.0 ou posterior instalado em um sistema operacional compatível.
-
Uma instância do Amazon EC2 executando Linux. Para obter mais informações sobre os sistemas operacionais compatíveis, consulte os pré-requisitos
do driver no GitHub. -
Uma instância do Amazon EC2 iniciada em um grupo de posicionamento de tempo preciso (consulte Acesse o Serviço de Sincronização Temporal da Amazon aprimorado).
nota
O Serviço de Sincronização Temporal da Amazon aprimorado e o dispositivo PHC permanecem acessíveis sem um grupo de posicionamento de horário preciso nas seguintes regiões e para as famílias de instâncias específicas. Para obter a melhor experiência, recomendamos executar as instâncias do Amazon EC2 em grupos de posicionamento de precisão.
-
Regiões da AWS com suporte de acesso legado: Leste dos EUA (Norte da Virgínia), Leste dos EUA (Ohio), Ásia-Pacífico (Malásia), Ásia-Pacífico (Tailândia), Ásia-Pacífico (Tóquio) e Europa (Estocolmo)
-
Zonas locais compatíveis com acesso legado: Leste dos EUA (Cidade de Nova York)
-
Famílias de instâncias compatíveis com acesso legado:
-
Uso geral: M7a, M7g, M7i
-
Otimizadas para memória: R7a, R7g, R7i
-
Otimizadas para armazenamento: I8g, I8ge
-
Compilar e habilitar o driver ENA com o suporte PHC
Sempre revise as instruções mais recentes da versão mais recente do driver do Elastic Network Adapter (ENA) na documentação do driver ENA
Antes de começar, certifique-se de que sua instância atenda ao Requisitos.
Compilar e habilitar o driver ENA com o suporte PHC
-
Pré-requisitos de instalação
[ec2-user ~]$sudo yum update[ec2-user ~]$sudo yum install kernel-devel-$(uname -r) git[ec2-user ~]$sudo reboot -
Carregue o módulo ptp necessário.
[ec2-user ~]$sudo modprobe ptp -
Recupere a versão mais recente do driver ENA (versão 2.10.0 ou posteriores).
[ec2-user ~]$git clone https://github.com/amzn/amzn-drivers.git /tmp/amzn-drivers -
Crie o driver ENA
ena.kocom suporte PHC.[ec2-user ~]$cd /tmp/amzn-drivers/kernel/linux/ena[ec2-user ~]$ENA_PHC_INCLUDE=1 make -
Recarregue o driver ENA e ative o dispositivo PHC.
[ec2-user ~]$sudo rmmod ena && sudo insmod ena.ko phc_enable=1 -
Valide se o driver ENA carregado tem suporte para PHC.
[ec2-user ~]$modinfo ena | grep -E "phc_enable"parm: phc_enable:Enable PHC. -
Valide se o suporte PHC está habilitado com o driver ENA.
[ec2-user ~]$cat /sys/module/ena/parameters/phc_enable1
Para obter instruções sobre como instalar o driver e ativar a opção phc_enable na reinicialização, consulte o README do driver ENA
Verifique a configuração do dispositivo PTP
Verifique se o dispositivo de relógio de hardware ENA PTP aparece em sua instância.
[ec2-user ~]$for file in /sys/class/ptp/*; do echo -n "$file: "; cat "$file/clock_name"; done
Saída esperada
/sys/class/ptp/ptp<index>: ena-ptp-<PCI slot>
Em que:
-
é o índice de relógio de hardware PTP registrado no kernel.index -
é o slot PCI do controlador Ethernet ENA. É o mesmo slot mostrado emPCI slotlspci | grep ENA.
Exemplo de saída
/sys/class/ptp/ptp0: ena-ptp-05
Se ena-ptp- não estiver na saída, o driver ENA não foi instalado corretamente. Revise as etapas em Compilar e habilitar o driver ENA com o suporte PHC.<PCI slot>
Configurar o link simbólico PTP
Os dispositivos PTP geralmente são nomeados /dev/ptp0, /dev/ptp1 e assim por diante, e o índice depende da ordem de inicialização do hardware. A criação de um link simbólico garante que aplicações como o chrony façam referência consistentementemente ao dispositivo correto, independentemente das alterações no índice.
As AMIs mais recentes do Amazon Linux 2023 incluem uma regra udev que cria o link simbólico /dev/ptp_ena, apontando para a entrada /dev/ptp correta associada ao host ENA.
Primeiro, verifique se o link simbólico está presente executando o seguinte comando.
[ec2-user ~]$ls -l /dev/ptp*
Exemplo de saída
crw------- 1 root root 245, 0 Jan 31 2025 /dev/ptp0
lrwxrwxrwx 1 root root 4 Jan 31 2025 /dev/ptp_ena -> ptp0
Em que:
-
/dev/ptpé o caminho para o dispositivo PTP.<index> -
/dev/ptp_enaé o link simbólico constante, que aponta para o mesmo dispositivo PTP.
Se o link simbólico /dev/ptp_ena estiver presente, vá para. Configure o daemon chronyd para usar o dispositivo PHC Se estiver faltando, faça o seguinte:
Para criar o link simbólico PTP
-
Adicione a seguinte regra
udev.[ec2-user ~]$echo "SUBSYSTEM==\"ptp\", ATTR{clock_name}==\"ena-ptp-*\", SYMLINK += \"ptp_ena\"" | sudo tee -a /etc/udev/rules.d/53-ec2-network-interfaces.rules -
Recarregue a regra
udev, reiniciando a instância ou executando o comando a seguir.[ec2-user ~]$sudo udevadm control --reload-rules && sudo udevadm trigger
Configure o daemon chronyd para usar o dispositivo PHC
O daemon de sincronização do relógio chronyd deve ser configurado para usar o dispositivo PHC como uma fonte de tempo adicional, usando o link simbólico /dev/ptp_ena para identificar o dispositivo.
Configure o daemon chronyd para usar o dispositivo PHC
-
Edite o
/etc/chrony.confo usando um editor de texto e adicione a linha a seguir:refclock PHC /dev/ptp_ena poll 0 delay 0.000010 prefer -
Reinicie o chrony.
[ec2-user ~]$sudo systemctl restart chronyd -
Verificar se o chrony está usando o relógio de hardware PTP. O dispositivo PHC0 deve ser a fonte de tempo preferida com um valor de estrato 0. A fonte de horário NTP local (se configurada) deve ter um valor de estrato 1.
[ec2-user ~]$chronyc sourcesMS Name/IP address Stratum Poll Reach LastRx Last sample =============================================================================== #* PHC0 0 0 377 0 +184ns[ +198ns] +/- 5032ns ^- 169.254.169.123 1 4 377 8 -18us[ -18us] +/- 115us
Verificar carimbo de data e hora de pacotes de hardware
O driver ENA carregado com o suporte PHC fornece acesso ao registro de data e hora do pacote de hardware. Você pode verificar o suporte para essa funcionalidade usando o comando ethtool -T .interface
Para obter mais informações sobre o uso do timestamping de pacotes de hardware, consulte a documentação do Linux sobre timestamping do pacote
[ec2-user ~]$sudo ethtool -Tens5
Time stamping parameters for ens5:
Capabilities:
software-transmit
hardware-receive
software-receive
software-system-clock
PTP Hardware Clock: 0
Hardware Transmit Timestamp Modes: none
Hardware Receive Filter Modes:
none
all
Se a saída exibir hardware-receive na lista de recursos, o registro de data e hora do pacote de hardware estará disponível na sua instância.