View a markdown version of this page

Mengatur referensi waktu pada instans EC2 Anda untuk menggunakan Layanan Sinkronisasi Waktu Amazon lokal - Amazon Elastic Compute Cloud

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Mengatur referensi waktu pada instans EC2 Anda untuk menggunakan Layanan Sinkronisasi Waktu Amazon lokal

Layanan Sinkronisasi Waktu Amazon menyediakan beberapa metode untuk instans Amazon EC2 Anda untuk menyinkronkan ke sumber waktu lokal. Pertama, instans Amazon EC2 apa pun dapat mencapai sumber waktu lokal melalui Network Time Protocol (NTP). Selain itu, Layanan Sinkronisasi Waktu Amazon yang disempurnakan menawarkan sumber waktu lokal dengan akurasi lebih tinggi untuk instans Amazon EC 2 yang didukung. Luncurkan instance yang didukung dalam grup penempatan dengan precision-time strategi untuk mencapai sumber NTP dengan akurasi yang lebih tinggi. Akhirnya, instance Linux yang diluncurkan dalam grup penempatan waktu presisi memiliki akses ke perangkat PTP Hardware Clock (PHC) dan kemampuan untuk mengambil cap waktu paket perangkat keras.

Instans Amazon EC2 apa pun memiliki akses ke sumber NTP lokal. Anda dapat mencapai sumber NTP melalui alamat IP link-local, yang membatasi lalu lintas ini ke dalam VPC Anda tanpa perlu perubahan konfigurasi VPC tertentu. AMI Anda mungkin sudah mengonfigurasi daemon sinkronisasi jam Anda untuk menggunakan sumber NTP lokal secara default. Sumber NTP ini tersedia melalui alamat IP berikut:

Instans Amazon EC2 yang didukung memiliki akses ke Layanan Sinkronisasi Waktu Amazon yang disempurnakan. Untuk mengakses Layanan Sinkronisasi Waktu Amazon yang disempurnakan, luncurkan instance yang didukung dalam grup penempatan dengan precision-time strategi tersebut. Anda tidak perlu mengkonfigurasi instance Anda untuk mendapatkan manfaat dari peningkatan ini jika Anda menggunakan alamat IP link-lokal NTP. Sistem operasi apa pun dapat menggunakan peningkatan ini. Anda dapat memverifikasi bahwa Anda mendapat manfaat dari sumber NTP yang disempurnakan dengan menggunakan klien NTP pilihan Anda.

Linux-based AMI, berjalan pada keluarga instans yang didukung, memiliki opsi tambahan untuk sumber waktu dari perangkat PHC. Driver ENA membuat perangkat ini tersedia. Baik sumber NTP yang disempurnakan dan perangkat PHC menggunakan sumber waktu yang sangat akurat yang sama. Akses ke sumber waktu PHC dioptimalkan, yang mengarah ke sinkronisasi instans Amazon EC2 Anda yang lebih akurat.

Pertimbangan-pertimbangan
  • Sumber waktu NTP menawarkan tampilan melompat dari skala waktu UTC, sedangkan PHC tidak mengotori waktu. Untuk informasi selengkapnya, lihat Detik kabisat.

  • Hanya instans Linux yang memiliki akses ke jam perangkat keras PTP lokal. Instans Windows harus menggunakan NTP untuk mengakses Layanan Sinkronisasi Waktu Amazon yang disempurnakan.

  • Ada batas 1024 paket per detik (PPS) untuk layanan yang menggunakan alamat link-local. Batas ini mencakup agregat permintaan Kueri DNS Resolver Route 53, permintaan Layanan Metadata Instance (IMDS), permintaan Amazon Time Sync Service Network Time Protocol (NTP), dan permintaan Layanan Lisensi Windows (untuk instans berbasis Microsoft Windows).

Akses titik akhir IPv4 dari Layanan Sinkronisasi Waktu Amazon

AMI Anda mungkin sudah mengonfigurasi Layanan Sinkronisasi Waktu Amazon secara default. Jika tidak, gunakan prosedur berikut untuk mengonfigurasi instans Anda agar menggunakan Layanan Sinkronisasi Waktu Amazon lokal melalui titik akhir IPv4.

Untuk bantuan memecahkan masalah, lihat Memecahkan masalah sinkronisasi NTP pada instans Linux atau Memec ahkan masalah waktu pada inst ans Windows.

Amazon Linux

AL2023 dan versi terbaru Amazon Linux 2 dikonfigurasi untuk menggunakan titik akhir IPv4 Layanan Sinkronisasi Waktu Amazon secara default. Jika Anda mengonfirmasi bahwa instance Anda sudah dikonfigurasi, Anda dapat melewati prosedur berikut.

Untuk memverifikasi bahwa chrony dikonfigurasi untuk menggunakan titik akhir IPv4

Jalankan perintah berikut. Dalam output, baris yang dimulai dengan ^* menunjukkan sumber waktu yang disukai.

[ec2-user ~]$ chronyc sources -v | grep -F ^*
^* 169.254.169.123 3 4 377 13 -4325ns[-9201ns] +/- 401us
Untuk mengkonfigurasi chrony agar terhubung ke titik akhir IPv4 pada versi Amazon Linux 2 yang lebih lama
  1. Hubungkan ke instans Anda dan hapus instalasi layanan NTP.

    [ec2-user ~]$ sudo yum erase 'ntp*'
  2. Instal paket chrony.

    [ec2-user ~]$ sudo yum install chrony
  3. Buka/etc/chrony.conf file menggunakan editor teks (sepertivim ataunano ). Tambahkan baris berikut sebelum pool pernyataan server atau pernyataan lain yang mungkin ada dalam file, dan simpan perubahan Anda:

    server 169.254.169.123 prefer iburst minpoll 4 maxpoll 4
  4. Mulai ulang daemon chrony (chronyd).

    [ec2-user ~]$ sudo service chronyd restart
    Starting chronyd: [ OK ]
    catatan

    Di RHEL dan CentOS (hingga versi 6), nama layanannya adalah chrony, bukan chronyd.

  5. Untuk mengonfigurasi chronyd agar dimulai di setiap boot sistem, gunakan perintah chkconfig.

    [ec2-user ~]$ sudo chkconfig chronyd on
  6. Pastikan bahwa chrony menggunakan titik akhir IPv4 169.254.169.123 untuk menyinkronkan waktu.

    [ec2-user ~]$ chronyc sources -v | grep -F ^*

    Dalam output, ^* menunjukkan sumber waktu yang disukai.

    ^* 169.254.169.123 3 6 17 43 -30us[ -226us] +/- 287us
  7. Verifikasi metrik sinkronisasi waktu yang dilaporkan oleh chrony.

    [ec2-user ~]$ chronyc tracking
    Reference ID : A9FEA97B (169.254.169.123) Stratum : 4 Ref time (UTC) : Wed May 06 00:39:14 2026 System time : 0.000002191 seconds fast of NTP time Last offset : +0.000002164 seconds RMS offset : 0.000082968 seconds Frequency : 3.710 ppm slow Residual freq : +0.002 ppm Skew : 0.504 ppm Root delay : 0.000362541 seconds Root dispersion : 0.000225028 seconds Update interval : 16.1 seconds Leap status : Normal
Ubuntu
Untuk mengkonfigurasi chrony untuk terhubung ke titik akhir IPv4 di Ubuntu
  1. Hubungkan ke instans Anda dan gunakan apt untuk memasang paket chrony.

    ubuntu:~$ sudo apt install chrony
    catatan

    Jika perlu, perbarui instans Anda terlebih dahulu dengan menjalankan sudo apt update.

  2. Buka file /etc/chrony/chrony.conf menggunakan editor teks (seperti vim atau nano). Tambahkan baris sebelum server yang lain atau pernyataan pool yang sudah ada di file, dan simpan perubahan Anda.

    server 169.254.169.123 prefer iburst minpoll 4 maxpoll 4
  3. Mulai ulang layanan chrony.

    ubuntu:~$ sudo /etc/init.d/chrony restart
    Restarting chrony (via systemctl): chrony.service.
  4. Pastikan bahwa chrony menggunakan titik akhir IPv4 169.254.169.123 untuk menyinkronkan waktu.

    ubuntu:~$ chronyc sources -v | grep -F ^*

    Dalam output, baris yang dimulai dengan ^* menunjukkan sumber waktu yang disukai.

    ^* 169.254.169.123 3 6 17 12 +15us[ +57us] +/- 320us
  5. Verifikasi metrik sinkronisasi waktu yang dilaporkan oleh chrony.

    ubuntu:~$ chronyc tracking
    Reference ID : A9FEA97B (169.254.169.123) Stratum : 4 Ref time (UTC) : Wed May 06 00:39:14 2026 System time : 0.000002191 seconds fast of NTP time Last offset : +0.000002164 seconds RMS offset : 0.000082968 seconds Frequency : 3.710 ppm slow Residual freq : +0.002 ppm Skew : 0.504 ppm Root delay : 0.000362541 seconds Root dispersion : 0.000225028 seconds Update interval : 16.1 seconds Leap status : Normal
SUSE Linux

Dimulai dengan SUSE Linux Enterprise Server 15, chrony adalah implementasi default NTP.

Untuk mengkonfigurasi chrony untuk terhubung ke titik akhir IPv4 di SUSE Linux
  1. Buka file /etc/chrony.conf menggunakan editor teks (seperti vim atau nano).

  2. Pastikan bahwa file tersebut berisi baris berikut:

    server 169.254.169.123 prefer iburst minpoll 4 maxpoll 4

    Jika baris ini tidak ada, tambahkan.

  3. Komentari baris server atau kolam lainnya.

  4. Buka YaST dan aktifkan layanan chrony.

Windows

Sejak rilis Agustus 2018, AMI Windows menggunakan Layanan Amazon Time Sync secara default. Konfigurasi lebih lanjut tidak diperlukan untuk instans yang diluncurkan dari AMI ini dan Anda dapat melewatkan prosedur berikut.

Jika Anda menggunakan AMI yang tidak memiliki Amazon Time Sync Service yang dikonfigurasi secara default, verifikasi terlebih dahulu konfigurasi NTP Anda saat ini. Jika instans Anda sudah menggunakan titik akhir IPv4 dari Layanan Amazon Time Sync, konfigurasi lebih lanjut tidak diperlukan. Jika instans Anda tidak menggunakan Layanan Amazon Time Sync, selesaikan prosedur untuk mengubah server NTP agar menggunakan Layanan Amazon Time Sync.

Untuk memverifikasi konfigurasi NTP
  1. Dari instans Anda, buka jendela Command Prompt.

  2. Dapatkan konfigurasi NTP saat ini dengan mengetikkan perintah berikut:

    w32tm /query /configuration

    Perintah ini mengembalikan pengaturan konfigurasi saat ini untuk instans Windows dan akan ditampilkan jika Anda terhubung ke Layanan Amazon Time Sync.

  3. (Opsional) Dapatkan status konfigurasi saat ini dengan mengetik perintah berikut:

    w32tm /query /status

    Perintah ini mengembalikan informasi seperti terakhir kali instans disinkronkan dengan server NTP dan interval polling.

Untuk mengubah server NTP agar menggunakan Layanan Amazon Time Sync
  1. Dari jendela Command Prompt, jalankan perintah berikut:

    w32tm /config /manualpeerlist:169.254.169.123 /syncfromflags:manual /update
  2. Verifikasi pengaturan baru Anda dengan menggunakan perintah berikut:

    w32tm /query /configuration

    Dalam output yang dikembalikan, pastikan bahwa NtpServer menampilkan titik akhir IPv4 169.254.169.123.

Pengaturan NTP default untuk AMI Amazon Windows

Amazon Machine Image (AMI) umumnya mematuhi pengaturan bawaan siap pakai kecuali jika perubahan diperlukan untuk berfungsi pada infrastruktur EC2. Pengaturan berikut telah ditetapkan agar bekerja dengan baik di lingkungan virtual, serta untuk menjaga agar setiap perbedaan waktu tetap dalam akurasi satu detik:

  • Interval Pembaruan - Mengatur seberapa sering layanan waktu akan menyesuaikan waktu sistem menuju akurasi. AWS mengkonfigurasi interval pembaruan untuk terjadi setiap dua menit sekali.

  • Server NTP – Sejak rilis Agustus 2018, AMI menggunakan Layanan Amazon Time Sync secara default. Layanan waktu ini dapat diakses dari mana saja Wilayah AWS di titik akhir IPv4 169.254.169.123. Selain itu, bendera 0x9 menunjukkan bahwa layanan waktu bertindak sebagai klien, dan untuk menggunakan SpecialPollInterval untuk menentukan seberapa sering pemeriksaan dengan server waktu yang dikonfigurasi.

  • Tipe - "NTP" berarti bahwa layanan bertindak sebagai klien NTP mandiri, alih-alih bertindak sebagai bagian dari domain.

  • Diaktifkan dan InputProvider - Layanan waktu diaktifkan dan memberikan waktu ke sistem operasi.

  • Interval Polling Khus us - Memeriksa terhadap Server NTP yang dikonfigurasi setiap 900 detik (15 menit).

    catatan

    Untuk AMI Windows Server 2025, nil SpecialPollInterval ainya adalah 1024 detik, bukan 900 detik.

Jalur registri Nama kunci Data

HKL M:\System\\ layananCurrentControlSet\ w32time\ Konfigurasi

UpdateInterval

120

HKL M:\System\\ layananCurrentControlSet\ w32time\ Parameter

NtpServer

169.254.169.123,0x9

HKL M:\System\\ layananCurrentControlSet\ w32time\ Parameter

Tipe

NTP

HKL M:\System\\ layananCurrentControlSet\ w32waktu\\ TimeProviders NtpClient

Aktif

1

HKL M:\System\\ layananCurrentControlSet\ w32waktu\\ TimeProviders NtpClient

InputProvider

1

HKL M:\System\\ layananCurrentControlSet\ w32waktu\\ TimeProviders NtpClient

SpecialPollInterval

900 (Windows Server 2016, 2019, dan 2022) atau 1024 (Windows Server 2025)

Akses titik akhir IPv6 dari Layanan Sinkronisasi Waktu Amazon

Bagian ini menjelaskan perbedaan langkah-langkah yang dijelaskan dalam Akses titik akhir IPv4 dari Layanan Sinkronisasi Waktu Amazon jika Anda mengonfigurasi instans untuk menggunakan Layanan Amazon Time Sync lokal melalui titik akhir IPv6. Bagian ini tidak menjelaskan seluruh proses konfigurasi Layanan Amazon Time Sync.

Titik akhir IPv6 hanya dapat diakses pada Nitro-based instance.

Kami tidak menyarankan menggunakan entri titik akhir IPv4 dan IPv6 secara bersamaan. Paket NTP IPv4 dan IPv6 berasal dari server lokal yang sama untuk instans Anda. Konfigurasi titik akhir IPv4 dan IPv6 tidak diperlukan dan tidak akan meningkatkan akurasi waktu pada instans Anda.

Linux

Bergantung pada distribusi Linux yang Anda gunakan, ketika Anda mencapai langkah untuk mengedit chrony.conf file, Anda akan menggunakan titik akhir IPv6 dari Amazon Time Sync Service (fd00:ec2::123) daripada titik akhir IPv4 (): 169.254.169.123

server fd00:ec2::123 prefer iburst minpoll 4 maxpoll 4

Simpan file dan verifikasi bahwa chrony menggunakan titik akhir fd00:ec2::123 IPv6 untuk menyinkronkan waktu:

[ec2-user ~]$ chronyc sources -v

Dalam output, jika Anda melihat titik akhir fd00:ec2::123 IPv6, konfigurasi selesai.

Windows

Ketika Anda mencapai langkah untuk mengubah server NTP untuk menggunakan Amazon Time Sync Service, Anda akan menggunakan titik akhir IPv6 dari Amazon Time Sync Service (fd00:ec2::123) daripada titik akhir IPv4 (): 169.254.169.123

w32tm /config /manualpeerlist:fd00:ec2::123 /syncfromflags:manual /update

Pastikan pengaturan baru Anda menggunakan titik akhir fd00:ec2::123 IPv6 untuk menyinkronkan waktu:

w32tm /query /configuration

Dalam output, verifikasi bahwa NtpServer menampilkan titik akhir fd00:ec2::123 IPv6.

Akses Layanan Sinkronisasi Waktu Amazon yang disempurnakan

Layanan Sinkronisasi Waktu Amazon yang disempurnakan menawarkan sumber waktu lokal akurasi yang lebih tinggi untuk instans Amazon EC2 yang didukung. Instans yang diluncurkan dalam grup penempatan dengan precision-time strategi dapat mengakses sumber lokal ini. Kami merekomendasikan grup penempatan waktu presisi untuk aplikasi yang memerlukan waktu yang lebih akurat baik dari sumber NTP link-local, atau perangkat Jam Perangkat Keras PTP (PHC) pada instance Linux. Saat Anda meluncurkan instans ke grup penempatan waktu presisi, AWS tempatkan instans pada perangkat keras yang didukung dengan akses langsung ke sumber waktu presisi tinggi di AWS infrastruktur.

Manfaat utama
  • Sumber NTP yang ditingkatkan secara default - Instans Anda memiliki akses langsung ke sumber waktu NTP lokal yang ditingkatkan, jika Anda menggunakan alamat IP link-lokal NTP seperti yang dijelaskan di bagian sebelumnya.

  • Microsecond-accurate sinkronisasi jam — Konfigurasikan instans Amazon EC2 Linux Anda untuk menggunakan perangkat Jam Perangkat Keras PTP dan mencapai sinkronisasi jam yang akurat mikrodetik.

  • Penerapan yang disederhanakan — Strategi penempatan tunggal memastikan semua instans memiliki kemampuan waktu yang presisi.

  • Timestamp paket perangkat keras — Akses stempel waktu paket tingkat rendah untuk pengukuran jaringan.

  • Tidak ada biaya tambahan - Grup penempatan waktu presisi tersedia tanpa biaya tambahan.

Aturan dan batasan
  • Grup penempatan waktu presisi tersedia di semua Wilayah AWS Komersil.

  • Grup penempatan waktu presisi mendukung rangkaian instans Amazon EC2 Gen7 dan versi lebih baru berikut:

    • Tujuan umum: M7a, M7g,, M7gd, M7i M7g-flex,, M8a, M8g, M7i-flex M8g-flex

    • Komputasi dioptimalkan: C7a, C7gd, C7i,, C8g,, C8gd C7i-flex C8g-flex

    • Memori dioptimalkan: R7a, R7g, R7i, R7id, R8g, X8adez,,, X8ADZs, X8AeZ,,, X8aEZ, X8az, X8g X8adz-3tb X8adz-6tb, X8ge X8aedz-3tb X8aedz-6tb

    • Penyimpanan dioptimalkan: i8G, i8GE

  • Jika Anda memulai atau meluncurkan instance dalam grup penempatan waktu presisi dan perangkat keras tidak cukup untuk memberikan akses ke Layanan Sinkronisasi Waktu Amazon yang disempurnakan, permintaan gagal.

  • Jika Anda menghentikan instance dalam grup penempatan waktu presisi dan kemudian memulainya lagi, instans masih berjalan di grup penempatan. Namun, awal mungkin gagal jika perangkat keras tidak mencukupi untuk memberikan akses ke Layanan Sinkronisasi Waktu Amazon yang ditingkatkan.

  • Amazon EC2 terus menambahkan perangkat keras yang mendukung Layanan Sinkronisasi Waktu Amazon yang ditingkatkan. Jika permintaan Anda gagal karena kapasitas yang tidak mencukupi, coba lagi nanti atau coba Zona Ketersediaan yang berbeda. Untuk informasi selengkapnya, lihat Memecahkan masalah peluncuran instans Amazon EC2.

  • Aturan dan batasan kelompok penempatan berlaku. Untuk informasi selengkapnya, lihat Grup penempatan untuk instans Amazon EC2 Anda

Buat grup penempatan waktu presisi

Anda dapat membuat grup penempatan waktu presisi menggunakan AWS CLI, AWS Management Console, atau AWS SDK, dengan menentukan precision-time strategi.

Penggunaan AWS CLI

Jalankan perintah berikut:

aws ec2 create-placement-group \ --group-name my-precision-time-pg \ --strategy precision-time

Perintah mengembalikan grup penempatan ARN yang Anda gunakan saat membuat reservasi kapasitas, dan nama grup atau ID grup yang Anda gunakan saat meluncurkan instance dan menautkan grup penempatan.

Luncurkan sebuah instans

Setelah Anda membuat grup penempatan waktu presisi, tentukan grup tersebut saat meluncurkan instans untuk mengakses Layanan Sinkronisasi Waktu Amazon yang disempurnakan:

aws ec2 run-instances \ --image-id ami-0abcdef1234567890 \ --instance-type r7g.2xlarge \ --placement GroupId=pg-0aaa1111111111111

Verifikasi akses ke Layanan Sinkronisasi Waktu Amazon yang disempurnakan

Setelah meluncurkan instans dalam grup penempatan waktu presisi, Anda mendapat manfaat dari sumber waktu NTP yang disempurnakan.

Misalnya, jika Anda menggunakan daemon chronyd pada instance Anda, Anda dapat memverifikasi bahwa sumber waktu NTP sekarang disebut sebagai Stratum 1 dan telah meningkatkan metrik akurasi jam:

[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

Verifikasi metrik sinkronisasi waktu yang dilaporkan oleh 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

Akses Jam Perangkat Keras PTP (PHC)

PTP Hardware Clock (PHC) adalah bagian dari Sistem AWS Nitro. Ini dapat diakses langsung pada instans bare metal yang didukung dan instans Amazon EC2 virtual yang diluncurkan dalam grup penempatan waktu presisi. Perangkat PHC saat ini hanya dapat diakses pada instans Linux. Bagian berikut menjelaskan cara mengatur dan memverifikasi perangkat PHC pada instance Linux Anda.

Persyaratan

catatan

Layanan Sinkronisasi Waktu Amazon yang disempurnakan dan perangkat PHC tetap dapat diakses tanpa grup penempatan waktu presisi di wilayah berikut dan untuk keluarga instans tertentu. Untuk pengalaman terbaik, sebaiknya luncurkan instans Amazon EC2 dalam grup penempatan presisi sebagai gantinya.

  • Akses lama didukung Wilayah AWS: AS Timur (Virginia Utara), AS Timur (Ohio), Asia Pasifik (Malaysia), Asia Pasifik (Thailand), Asia Pasifik (Tokyo), dan Eropa (Stockholm)

  • Akses lama didukung Zona Lokal: AS Timur (Kota New York)

  • Keluarga instans yang didukung akses lama:

    • Tujuan umum: M7a, M7g, M7i

    • Memori dioptimalkan: R7a, R7g, R7i

    • Penyimpanan dioptimalkan: i8G, i8GE

Kompilasi dan aktifkan driver ENA dengan dukungan PHC

Selalu tinjau instruksi terbaru dari versi driver Elastic Network Adapter (ENA) terbaru dalam dokumentasi driver https://github.com/amzn/amzn-drivers/tree/master/kernel/linux/ena#ptp-hardware-clock-phc ENA GitHub untuk informasi khusus untuk sistem operasi Anda. Berikut ini adalah ikhtisar langkah-langkah untuk Amazon Linux.

Sebelum Anda mulai, pastikan instans Anda memenuhi persyaratanPersyaratan.

Untuk mengkompilasi dan mengaktifkan driver ENA dengan dukungan PHC
  1. Instal prasyarat.

    [ec2-user ~]$ sudo yum update [ec2-user ~]$ sudo yum install kernel-devel-$(uname -r) git [ec2-user ~]$ sudo reboot
  2. Muat modul ptp yang diperlukan.

    [ec2-user ~]$ sudo modprobe ptp
  3. Ambil versi driver ENA terbaru (versi 2.10.0 atau yang lebih baru).

    [ec2-user ~]$ git clone https://github.com/amzn/amzn-drivers.git /tmp/amzn-drivers
  4. Bangun driver ENA ena.ko dengan dukungan PHC.

    [ec2-user ~]$ cd /tmp/amzn-drivers/kernel/linux/ena [ec2-user ~]$ ENA_PHC_INCLUDE=1 make
  5. Muat ulang driver ENA dan aktifkan perangkat PHC.

    [ec2-user ~]$ sudo rmmod ena && sudo insmod ena.ko phc_enable=1
  6. Validasi driver ENA yang dimuat memiliki dukungan PHC.

    [ec2-user ~]$ modinfo ena | grep -E "phc_enable"
    parm: phc_enable:Enable PHC.
  7. Validasi dukungan PHC diaktifkan dengan driver ENA.

    [ec2-user ~]$ cat /sys/module/ena/parameters/phc_enable
    1

Untuk petunjuk untuk menginstal driver dan mengaktifkan opsi phc_enable saat reboot, lihat READ ME driver ENA aktif. GitHub

Verifikasi konfigurasi perangkat PTP

Pastikan perangkat jam perangkat keras ENA PTP muncul di instans Anda.

[ec2-user ~]$ for file in /sys/class/ptp/*; do echo -n "$file: "; cat "$file/clock_name"; done

Output yang diharapkan

/sys/class/ptp/ptp<index>: ena-ptp-<PCI slot>

Di mana:

  • indexadalah indeks jam perangkat keras PTP yang terdaftar di kernel.

  • PCI slotadalah slot PCI pengontrol ethernet ENA. Ini adalah slot yang sama seperti yang ditunjukkan padalspci | grep ENA.

Contoh Output

/sys/class/ptp/ptp0: ena-ptp-05

Jika ena-ptp-<PCI slot> tidak ada dalam output, driver ENA tidak akan diinstal dengan benar. Tinjau langkah-langkahnyaKompilasi dan aktifkan driver ENA dengan dukungan PHC.

Perangkat PTP biasanya diberi nama/dev/ptp0,/dev/ptp1, dan seterusnya, dengan indeksnya tergantung pada urutan inisialisasi perangkat keras. Membuat symlink memastikan bahwa aplikasi seperti chrony secara konsisten mereferensikan perangkat yang benar, terlepas dari perubahan indeks.

AMI Amazon Linux 2023 terbaru menyertakan udev aturan yang membuat /dev/ptp_ena symlink, menunjuk ke /dev/ptp entri yang benar terkait dengan host ENA.

Pertama, periksa apakah symlink hadir dengan menjalankan perintah berikut.

[ec2-user ~]$ ls -l /dev/ptp*

Contoh Output

crw------- 1 root root 245, 0 Jan 31 2025 /dev/ptp0 lrwxrwxrwx 1 root root 4 Jan 31 2025 /dev/ptp_ena -> ptp0

Di mana:

  • /dev/ptp<index>adalah jalur ke perangkat PTP.

  • /dev/ptp_enaadalah symlink konstan, yang menunjuk ke perangkat PTP yang sama.

Jika /dev/ptp_ena symlink ada, lewati keKonfigurasikan daemon chronyd untuk menggunakan perangkat PHC. Jika hilang, lakukan hal berikut:

Untuk membuat symlink PTP
  1. Tambahkan udev aturan berikut.

    [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
  2. Muat ulang udev aturan, baik dengan me-reboot instance, atau dengan menjalankan perintah berikut.

    [ec2-user ~]$ sudo udevadm control --reload-rules && sudo udevadm trigger

Konfigurasikan daemon chronyd untuk menggunakan perangkat PHC

Daemon sinkronisasi jam chronyd harus dikonfigurasi untuk menggunakan perangkat PHC sebagai sumber waktu tambahan, menggunakan /dev/ptp_ena symlink untuk mengidentifikasi perangkat.

Untuk mengkonfigurasi daemon chronyd untuk menggunakan perangkat PHC
  1. Edit /etc/chrony.conf menggunakan editor teks dan tambahkan baris berikut:

    refclock PHC /dev/ptp_ena poll 0 delay 0.000010 prefer
  2. Mulai ulang chrony.

    [ec2-user ~]$ sudo systemctl restart chronyd
  3. Verifikasi bahwa chrony menggunakan jam perangkat keras PTP. Perangkat PHC0 harus menjadi sumber waktu yang disukai dengan nilai Stratum 0. Sumber waktu NTP lokal (jika dikonfigurasi) harus memiliki nilai Stratum 1.

    [ec2-user ~]$ chronyc sources
    MS 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

Verifikasi stempel waktu paket perangkat keras

Driver ENA yang dimuat dengan dukungan PHC menyediakan akses ke timestamp paket perangkat keras. Anda dapat memverifikasi dukungan untuk fungsi ini dengan menggunakan ethtool -T interface perintah.

Untuk informasi selengkapnya tentang menggunakan stempel waktu paket perangkat keras, lihat dokumentasi paket timestamp Linux.

[ec2-user ~]$ sudo ethtool -T ens5
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

Jika output ditampilkan hardware-receive dalam daftar Capabilities, timestamp paket perangkat keras tersedia di instans Anda.