Configurando o Serviço NTP do Oracle Cloud Infrastructure para uma Instância
O Oracle Cloud Infrastructure oferece um serviço NTP totalmente gerenciado, seguro e de alta disponibilidade que você pode usar para definir a data e a hora das instâncias de computação e de banco de dados de dentro de uma VCN (rede virtual na nuvem). O serviço NTP do Oracle Cloud Infrastructure usa dispositivos Stratum 1 redundantes em cada domínio de disponibilidade. Os dispositivos Stratum 2 são sincronizados com dispositivos Stratum 1 dedicados com os quais cada host é sincronizado. O serviço está disponível em cada região.
Este tópico descreve como configurar instâncias de computação para usar este serviço NTP.
Você também pode optar por configurar as instâncias para usar um serviço NTP público ou usar o FastConnect para aproveitar um serviço NTP on-premises.
As imagens de plataforma do Oracle Autonomous Linux 8.x, Oracle Autonomous Linux 7.x, Oracle Linux 9.x, Oracle Linux 8.x, Oracle Linux 7.x, Oracle Linux Cloud Developer 8.x, CentOS 7.x lançadas após fevereiro de 2018 e CentOS Stream 8 incluem o serviço Chrony por padrão. Você não precisa configurar o serviço NTP do Oracle Cloud Infrastructure para essas instâncias.
Use as etapas a seguir para configurar instâncias do Oracle Linux 6. x para usar o serviço NTP do Oracle Cloud Infrastructure.
-
Configure a ferramenta IPtables para permitir conexões ao serviço NTP do Oracle Cloud Infrastructure, usando os seguintes comandos:
sudo iptables -I BareMetalInstanceServices 8 -d 169.254.169.254/32 -p udp -m udp --dport 123 -m comment --comment "Allow access to OCI local NTP service" -j ACCEPT
sudo service iptables save
-
Instale o serviço NTP com o seguinte comando:
sudo yum install ntp
-
Defina a data da sua instância com o seguinte comando:
sudo ntpdate 169.254.169.254
-
Configure a instância para usar o serviço NTP do Oracle Cloud Infrastructure para o iburst. Para configurar, modifique o arquivo
/etc/ntp.conf
da seguinte forma:-
Na seção
server
, comente as linhas especificando os servidores RHEL:#server 0.rhel.pool.ntp.org iburst #server 1.rhel.pool.ntp.org iburst #server 2.rhel.pool.ntp.org iburst #server 3.rhel.pool.ntp.org iburst
-
Adicione uma entrada para o servidor NTP do Oracle Cloud Infrastructure:
server 169.254.169.254 iburst
A seção
server
modificada agora contém o seguinte:# Please consider joining the pool (http://www.pool.ntp.org/join.html). #server 0.rhel.pool.ntp.org iburst #server 1.rhel.pool.ntp.org iburst #server 2.rhel.pool.ntp.org iburst #server 3.rhel.pool.ntp.org iburst server 169.254.169.254 iburst
-
-
Defina o serviço NTP para ser iniciado automaticamente quando a instância for inicializada com o seguinte comando:
sudo chkconfig ntpd on
-
Inicie o serviço NTP com o seguinte comando:
sudo /etc/init.d/ntpd start
-
Confirme se o serviço NTP está configurado corretamente com o seguinte comando:
ntpq -p
A saída será semelhante à seguinte:
remote refid st t when poll reach delay offset jitter ============================================================================== 169.254.169.254 192.168.32.3 2 u 2 64 1 0.338 0.278 0.187
Use as etapas a seguir para configurar instâncias do Oracle Linux 7. x para usar o serviço NTP do Oracle Cloud Infrastructure.
- Execute os comandos nesta seção como root com o seguinte comando:
sudo su -
- Instale o serviço NTP com o seguinte comando:
yum -y install ntp
- Altere as regras do firewall para permitir tráfego de entrada e saída com o servidor NTP do Oracle Cloud Infrastructure, em 169.254.169.254, na porta UDP 123 com o seguinte comando:
awk -v n=13 -v s=' <passthrough ipv="ipv4">-A OUTPUT -d 169.254.169.254/32 -p udp -m udp --dport 123 -m comment --comment "Allow access to OCI local NTP service" -j ACCEPT </passthrough>' 'NR == n {print s} {print}' /etc/firewalld/direct.xml > tmp && mv tmp /etc/firewalld/direct.xml
No prompt
mv: overwrite '/etc/firewalld/direct.xml'?
, digitey
. - Reinicie o firewall com o seguinte comando:
service firewalld restart
- Defina a data da sua instância com o seguinte comando:
ntpdate 169.254.169.254
- Configure a instância para usar o serviço NTP do Oracle Cloud Infrastructure para o iburst. Para configurar, modifique o arquivo
/etc/ntp.conf
da seguinte forma:- Na seção
server
, comente as linhas que especificam os servidores RHEL:#server 0.rhel.pool.ntp.org iburst #server 1.rhel.pool.ntp.org iburst #server 2.rhel.pool.ntp.org iburst #server 3.rhel.pool.ntp.org iburst
-
Adicione uma entrada para o serviço NTP do Oracle Cloud Infrastructure:
server 169.254.169.254 iburst
A seção
server
modificada agora deve conter o seguinte:# Please consider joining the pool (http://www.pool.ntp.org/join.html). #server 0.rhel.pool.ntp.org iburst #server 1.rhel.pool.ntp.org iburst #server 2.rhel.pool.ntp.org iburst #server 3.rhel.pool.ntp.org iburst server 169.254.169.254 iburst
- Na seção
-
Inicie e ative o serviço NTP com os seguintes comandos:
systemctl start ntpd systemctl enable ntpd
Você também precisa desativar o cliente NTP chrony para garantir que o serviço NTP inicie automaticamente após uma reinicialização, usando os seguintes comandos:
systemctl stop chronyd systemctl disable chronyd
-
Confirme se o serviço NTP está configurado corretamente com o seguinte comando:
ntpq -p
A saída será semelhante à seguinte:
remote refid st t when poll reach delay offset jitter ============================================================================== 169.254.169.254 192.168.32.3 2 u 2 64 1 0.338 0.278 0.187
Se você encontrar uma mensagem de erro nenhum dado de tempo disponível ao configurar o serviço NTP no Windows Server, revise as informações no artigo Microsoft known issue.
-
Configure uma instância do Windows Server para usar o serviço NTP do Oracle Cloud Infrastructure executando um dos seguintes procedimentos:
-
Para configurar o serviço NTP usando o Windows Powershell, execute os seguintes comandos no Powershell como Administrador:
Set-ItemProperty -Path 'HKLM:\System\CurrentControlSet\Services\W32Time\Parameters' -Name 'Type' -Value NTP -Type String Set-ItemProperty -Path 'HKLM:\System\CurrentControlSet\Services\W32Time\Config' -Name 'AnnounceFlags' -Value 5 -Type DWord Set-ItemProperty -Path 'HKLM:\System\CurrentControlSet\Services\W32Time\TimeProviders\NtpServer' -Name 'Enabled' -Value 1 -Type DWord Set-ItemProperty -Path 'HKLM:\System\CurrentControlSet\Services\W32Time\Parameters' -Name 'NtpServer' -Value '169.254.169.254,0x9' -Type String Set-ItemProperty -Path 'HKLM:\System\CurrentControlSet\Services\W32Time\TimeProviders\NtpClient' -Name 'SpecialPollInterval' -Value 900 -Type DWord Set-ItemProperty -Path 'HKLM:\System\CurrentControlSet\Services\W32Time\Config' -Name 'MaxPosPhaseCorrection' -Value 1800 -Type DWord Set-ItemProperty -Path 'HKLM:\System\CurrentControlSet\Services\W32Time\Config' -Name 'MaxNegPhaseCorrection' -Value 1800 -Type DWord
-
Para configurar o serviço NTP editando manualmente o registro, faça o seguinte:
- Altere o tipo de servidor para NTP:
- No Editor do Registro, navegue até:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Parameters\
- Clique em Tipo.
- Altere o valor para
NTP
e clique em OK.
- No Editor do Registro, navegue até:
-
Configure o serviço de Horário do Windows para ativar os flags
Timeserv_Announce_Yes
eReliable_Timeserv_Announce_Auto
.Para configurar, defina o parâmetro
AnnounceFlags
como 5:- No Editor do Registro, navegue até:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config\
- Clique em AnnounceFlags.
- Altere o valor para
5
e clique em OK.
- No Editor do Registro, navegue até:
- Ativa o servidor NTP:
- No Editor do Registro, navegue até:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpServer\
- Clique em Ativado.
- Altere o valor para
1
e clique em OK.
- No Editor do Registro, navegue até:
- Defina as fontes de tempo:
- No Editor do Registro, navegue até:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Parameters\
- Clique em NtpServer.
- Altere o valor para
169.254.169.254,0x9
e clique em OK.
- No Editor do Registro, navegue até:
- Definir o intervalo de sondagem:
- No Editor do Registro, navegue até:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpClient\
- Clique em SpecialPollInterval.
- Defina o valor para o intervalo no qual você deseja sincronizar o serviço de tempo. O valor é expresso em segundos. Para defini-lo como 15 minutos, defina o valor como
900
, e clique em OK.
- No Editor do Registro, navegue até:
- Defina as configurações de limite de correção de fase para restringir os limites de amostra de tempo:
- No Editor do Registro, navegue até:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config\
- Clique em MaxPosPhaseCorrection.
- Defina o valor como a diferença máxima de horário no futuro para amostras de tempo. O valor é expresso em segundos. Para defini-lo como 30 minutos, defina o valor como
1800
e clique em OK. - Clique em MaxNegPhaseCorrection.
- Defina o valor como a diferença de horário máxima no passado para amostras de tempo. O valor é expresso em segundos. Para defini-lo como 30 minutos, defina o valor como
1800
e clique em OK.
- No Editor do Registro, navegue até:
- Altere o tipo de servidor para NTP:
-
- Reinicie o serviço de tempo executando o seguinte comando em um prompt de comando:
net stop w32time && net start w32time
-
Teste a conexão com o serviço NTP executando o seguinte comando em um prompt de comando:
w32tm /query /peers
A saída será semelhante à seguinte:
#Peer: 1 Peer: 169.254.169.254,0x9 State: Active Time Remaining: 22.1901786s Mode: 3 (Client) Stratum: 0 (unspecified) PeerPoll Interval: 10 (1024s) HostPoll Interval: 10 (1024s)
Após o tempo especificado no intervalo de sondagem ter decorrido, o
State
será alterado dePending
paraActive
.