本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
在EC2執行個體上設定時間參考以使用本機 Amazon 時間同步服務
本機 Amazon 時間同步服務可以使用網路時間通訊協定 (NTP),或在支援的執行個體上提供本機精確時間協定 (PTP) 硬體時鐘。PTP硬體時鐘支援NTP連線 (Linux 和 Windows 執行個體) 或直接PTP連線 (僅限 Linux 執行個體)。NTP和直接PTP連接使用相同的高度準確的時間來源,但直接PTP連接比NTP連接更準確。與 Amazon 時間同步服務的NTP連線支援飛躍塗抹,而與PTP硬體時鐘的PTP連線不會塗抹時間。如需詳細資訊,請參閱閏秒。
您的執行個體可以存取本機 Amazon Time Sync Service,如下所示:
-
透過NTP下列 IP 位址端點:
-
IPv4:
169.254.169.123
-
IPv6:
fd00:ec2::123
(僅可由建置於 AWS 硝基系統。)
-
-
(僅限 Linux)通過直接PTP連接連接到本地PTP硬件時鐘:
-
PHC0
-
Amazon Linux AMIs AMIs、Windows 和大多數合作夥伴將您的執行個體AMIs設定為預設使用NTPIPv4端點。這是大多數客戶工作負載的建議設定。從這些執行個體啟動的執行個體不需要進一步的設定,AMIs除非您想要使用IPv6端點或直接連線至PTP硬體時鐘。
NTP和PTP連線不需要變更任何VPC設定,而且您的執行個體不需要存取網際網路。
注意
對於使用連結本機位址的服務,每秒有 1024 個封包 (PPS) 限制。此限制包括 Route 53 解析器DNS查詢、執行個體中繼資料服務 (IMDS) 請求、Amazon 時間服務網路時間通訊協定 (NTP) 請求以及 Windows 授權服務 (適用於 Microsoft Windows 執行個體)
請求的彙總。 只有 Linux 執行個體可以使用直接PTP連線來連線到本機PTP硬體時鐘。Windows 執行個體用NTP來連線到本機PTP硬體時鐘。
Connect 到 Amazon 時間同步服務的IPv4端點
本節說明如何將執行個體設定為透過IPv4端點使用本機 Amazon 時間同步服務。
請遵循於執行個體作業系統的指示。
AL2023 和最新版本的 Amazon Linux 2 和 Amazon Linux 設定AMIs為預設使用 Amazon 時間同步服務IPv4端點。從這些執行個體啟動的執行個體不需要進一步AMIs的組態,您可以略過下列程序。
如果您使用的是AMI預設情況下未設定 Amazon 時間同步服務,請使用下列其中一個程序,使用用chrony
戶端在執行個體上設定 Amazon 時間同步服務。須編輯 chrony
組態檔,新增 Amazon Time Sync Service 的伺服器項目。
請遵循於執行個體作業系統的指示。
從 2018 年 8 月發行版本開始,Windows 預設會AMIs使用 Amazon 時間同步服務。從這些執行個體啟動的執行個體不需要進一步AMIs的組態,您可以略過下列程序。
如果您使用的是AMI預設情況下未設定 Amazon 時間同步服務的,請先驗證您目前的NTP組態。如果您的執行個體已在使用 Amazon 時間同步服務的IPv4端點,則無需進一步設定。如果您的執行個體未使用 Amazon 時間同步服務,請完成變更NTP伺服器以使用 Amazon 時間同步服務的程序。
驗證組NTP態
-
從執行個體中,開啟命令提示視窗。
-
輸入下列命令以取得目前的NTP組態:
w32tm /query /configuration
此命令會傳回 Windows 執行個體目前的組態設定,並顯示是否已連接至 Amazon Time Sync Service。
-
(選用) 輸入下列命令,以取得目前組態的狀態:
w32tm /query /status
這個命令會傳回執行個體上次與NTP伺服器同步的時間,以及輪詢間隔等資訊。
若要變更NTP伺服器以使用 Amazon 時間同步服務
-
從命令提示視窗,執行下列命令:
w32tm /config /manualpeerlist:169.254.169.123 /syncfromflags:manual /update
-
使用下列命令,確認新設定:
w32tm /query /configuration
在傳回的輸出中,確認是否
NtpServer
顯示169.254.169.123
IPv4端點。
Amazon 視窗的預設網路時間通訊協定 (NTP) 設定 AMIs
Amazon 機器映像 (AMIs) 通常會遵守 out-of-the-box預設值,除非需要變更才能在EC2基礎設施上運作。下列設定已確認在虛擬化環境中運作良好,以及可將任何時鐘漂移保持在一秒的準確度內:
-
更新間隔 — 控制時間服務調整系統時間以達到精確度的頻率。 AWS 設定每兩分鐘進行一次更新間隔。
-
NTP伺服器 — 從 2018 年 8 月發行版本開始,依預設AMIs使用 Amazon 時間同步服務。這次服務可以從任何訪問 AWS 區域 在 169.254.169.123 端IPv4點。此外,0x9 標記表示時間服務正作為用戶端,並使用
SpecialPollInterval
來判定以設定的時間伺服器進行查入的頻率。 -
類型 — "NTP" 表示服務充當獨立NTP用戶端,而不是做為網域的一部分。
-
啟用和 InputProvider — 計時服務已啟用,並提供作業系統的時間。
-
特殊輪詢間隔 — 每 900 秒 (15 分鐘) 對設定的NTP伺服器進行檢查。
登錄檔路徑 | 金鑰名稱 | 資料 |
---|---|---|
HKLM:\ 系統\\ 服務CurrentControlSet\ w32 時間\ Config |
UpdateInterval |
120 |
HKLM:\ 系統\\ 服務CurrentControlSet\ w32 時間\ 參數 |
NtpServer |
169.254.169.123,0x9 |
HKLM:\ 系統\\ 服務CurrentControlSet\ w32 時間\ 參數 |
Type |
NTP |
HKLM:\ 系統\CurrentControlSet\ 服務\ w32 時間\\ TimeProviders NtpClient |
已啟用 |
1 |
HKLM:\ 系統\CurrentControlSet\ 服務\ w32 時間\\ TimeProviders NtpClient |
InputProvider |
1 |
HKLM:\ 系統\CurrentControlSet\ 服務\ w32 時間\\ TimeProviders NtpClient |
SpecialPollInterval |
900 |
Connect 到 Amazon 時間同步服務的IPv6端點
本節說明如果您將執行個體設定為透過IPv6端點使用本機 Amazon 時間同步服務,中所述的步驟有何Connect 到 Amazon 時間同步服務的IPv4端點不同。它不會說明整個 Amazon Time Sync Service 組態程序。
IPv6端點只能在建置於 AWS 硝基系統。
注意
我們不建議同時使用IPv4和IPv6端點項目。IPv4和IPv6NTP封包來自執行個體的相同本機伺服器。不需要同時設定IPv4和IPv6端點,也不會改善執行個體上的時間準確性。
請遵循於執行個體作業系統的指示。
根據您使用的 Linux 發行版,當您到達編輯時間 .conf 檔案的步驟時,您將使用 Amazon 時間同步服務 (fd00:ec2::123
) 的IPv6端點,而不是IPv4端點 ():169.254.169.123
server fd00:ec2::123 prefer iburst minpoll 4 maxpoll 4
儲存檔案並確認chrony
是否正在使用fd00:ec2::123
IPv6端點同步處理時間:
[ec2-user ~]$
chronyc sources -v
在輸出中,如果您看到fd00:ec2::123
IPv6端點,表示組態已完成。
當您到達變更NTP伺服器以使用 Amazon 時間同步服務的步驟時,您將使用 Amazon 時間同步服務 (fd00:ec2::123
) 的IPv6端點,而不是IPv4端點 (169.254.169.123
):
w32tm /config /manualpeerlist:fd00:ec2::123 /syncfromflags:manual /update
確認您的新設定正在使用fd00:ec2::123
IPv6端點同步處理時間:
w32tm /query /configuration
在輸出中,確認是否NtpServer
顯示fd00:ec2::123
IPv6端點。
Connect 到PTP硬件時鐘
PTP硬件時鐘是 AWS Nitro System,因此無需使用任何客戶資源,即可直接在受支援的裸機和虛擬化EC2執行個體上存取。
PTP硬體時鐘的NTP端點與一般 Amazon 時間同步服務的端點相同。如果您的執行個PTP體有硬體時鐘,且您已設定NTP連線 (IPv4或IPv6端點),您的執行個體時間就會自動從PTP硬體時脈取得NTP。
對於 Linux 實例,您可以配置直接PTP連接,這將為您提供比NTP連接更準確的時間。Windows 執行個體僅支援與PTP硬體時鐘的NTP連線。
要求
當符合下列需求時,即可在執行個體上使用PTP硬體時鐘:
-
支援 AWS 區域:美國東部 (維吉尼亞北部)、美國東部 (俄亥俄)、亞太區域 (馬來西亞) 和亞太區域 (東京)
-
支援的執行個體系列:
-
一般用途:兆 7 安培,兆 7 克,兆平方米,M7
-
計算最佳化:C7 安培、C7gD、C7 i
-
最佳化記憶體:7 安培、R7 克、R7 公升、R7 公克
-
-
(僅限 Linux) 在支援的作業系統上安裝的ENA驅動程式版本 2.10.0 或更新版本。如需有關支援作業系統的詳細資訊,請參閱的驅動程式先決條件GitHub
。
本節說明如何將 Linux 執行個體設定為透過直接PTP連線透過PTP硬體時鐘使用本機 Amazon 時間同步服務。它需要在chrony
配置文件中添加PTP硬件時鐘的服務器條目。
設定與PTP硬體時鐘的直接PTP連線 (僅限 Linux 執行個體)
-
Connect 至您的 Linux 執行個體並執行下列動作:
-
安裝彈性網路介面卡 (ENA) 2.10.0 版或更新版本的 Linux 核心驅動程式。
-
啟用PTP硬體時鐘。
如需安裝指示,請參閱上的彈性網路介面卡 (ENA) 系列的 Linux 核心驅動程式GitHub
。 -
-
確認
/dev/ptp0
裝置顯示在執行個體上。[ec2-user ~]$
ls /dev/ptp0
預期的輸出如下:如果
/dev/ptp0
不在輸出中,則表示ENA驅動程式未正確安裝。請參閱此程序中的步驟 1 以安裝驅動程式。/dev/ptp0
-
使用文字編輯器編輯
/etc/chrony.conf
,然後在檔案中的任何位置新增以下行。refclock PHC /dev/ptp0 poll 0 delay 0.000010 prefer
-
重新啟動計時。
[ec2-user ~]$
sudo systemctl restart chronyd
-
確認 chrony 正在使用PTP硬體時鐘來同步此執行個體上的時間。
[ec2-user ~]$
chronyc sources
預期的輸出結果
MS Name/IP address Stratum Poll Reach LastRx Last sample =============================================================================== #* PHC0 0 0 377 1 +2ns[ +1ns] +/- 5031ns
在傳回的輸出中,
*
指出偏好的時間來源。PHC0
對應於PTP硬件時鐘。重新啟動 chrony 之後,可能需要等待幾秒鐘,星號才會出現。