View a markdown version of this page

Setel 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.

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

Layanan Sinkronisasi Waktu Amazon menyediakan beberapa metode agar instans Amazon EC2 Anda disinkronkan ke sumber waktu lokal. Pertama, setiap instans Amazon EC2 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 EC2 yang didukung. Luncurkan instans yang didukung dalam grup penempatan dengan precision-time strategi untuk mencapai sumber NTP dengan akurasi lebih tinggi. Akhirnya, instance Linux yang diluncurkan dalam grup penempatan waktu presisi memiliki akses ke perangkat PTP Hardware Clock (PHC) dan kemampuan untuk mengambil stempel waktu paket perangkat keras.

Setiap instans Amazon EC2 memiliki akses ke sumber NTP lokal. Anda dapat mencapai sumber NTP melalui alamat IP link-lokal, 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 instans yang didukung dalam grup penempatan dengan precision-time strategi tersebut. Anda tidak perlu mengonfigurasi instans Anda untuk mendapatkan manfaat dari peningkatan ini jika Anda menggunakan alamat IP lokal tautan 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, yang 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 yang lebih akurat.

Pertimbangan-pertimbangan

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 membantu mengatasi masalah masalah, lihat Memecahkan masalah sinkronisasi NTP pada instance Linux atau Memecahkan masalah waktu pada instance Windows.

Amazon Linux

AL2023 dan versi terbaru Amazon Linux 2 dikonfigurasi untuk menggunakan titik akhir Amazon Time Sync Service IPv4 secara default. Jika Anda mengonfirmasi bahwa instans Anda sudah dikonfigurasi, Anda dapat melewati prosedur berikut.

Untuk memverifikasi bahwa chrony dikonfigurasi untuk menggunakan titik akhir IPv4

Jalankan perintah berikut. Dalam output, garis 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 mengonfigurasi 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 pernyataan lain server atau pool pernyataan 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, garis 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 Layanan Sinkronisasi Waktu Amazon yang dikonfigurasi secara default, pertama-tama verifikasi 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 Amazon Windows AMI

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 terhadap akurasi. AWS mengonfigurasi interval pembaruan untuk terjadi setiap dua menit sekali.

  • Server NTP – Sejak rilis Agustus 2018, AMI menggunakan Layanan Amazon Time Sync secara default. Layanan kali 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 menyediakan waktu ke sistem operasi.

  • Interval Poll Khusus - Memeriksa Server NTP yang dikonfigurasi setiap 900 detik (15 menit).

    catatan

    Untuk AMI Windows Server 2025, SpecialPollInterval nilainya 1024 detik, bukan 900 detik.

Jalur registri Nama kunci Data

HKL M:\System\\ layananCurrentControlSet\ w32time\ Config

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\ w32time\\ TimeProviders NtpClient

Aktif

1

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

InputProvider

1

HKL M:\System\\ layananCurrentControlSet\ w32time\\ 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 instance. Nitro-based

Kami tidak menyarankan untuk 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

Saat Anda mencapai langkah untuk mengubah server NTP untuk menggunakan Layanan Sinkronisasi Waktu Amazon, 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

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

w32tm /query /configuration

Dalam output, verifikasi yang 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 dengan akurasi yang lebih tinggi untuk instans Amazon EC2 yang didukung. Instans yang diluncurkan dalam grup penempatan dengan precision-time strategi dapat mengakses sumber-sumber lokal ini. Kami merekomendasikan grup penempatan waktu presisi untuk aplikasi yang memerlukan waktu yang lebih akurat baik dari sumber NTP link-lokal, atau perangkat PTP Hardware Clock (PHC) pada instance Linux. Saat Anda meluncurkan instans ke grup penempatan waktu presisi, letakkan instans AWS tersebut 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 disempurnakan, jika Anda menggunakan alamat IP lokal tautan 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 akurat mikrodetik.

  • Penyebaran yang disederhanakan — Strategi penempatan tunggal memastikan semua instance memiliki kemampuan waktu presisi.

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

  • Tanpa 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 keluarga instans Gen7 dan Amazon EC2 yang 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 yang dioptimalkan: R7a, R7g, R7i, R7id, R8g, X8adez,,, X8ADZs, X8aedez,, 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 mencukupi 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, itu masih berjalan di grup penempatan. Namun, permulaan mungkin gagal jika perangkat keras tidak mencukupi untuk memberikan akses ke Layanan Sinkronisasi Waktu Amazon yang disempurnakan.

  • Amazon EC2 terus menambahkan perangkat keras yang mendukung Layanan Sinkronisasi Waktu Amazon yang disempurnakan. Jika permintaan Anda gagal karena kapasitas yang tidak mencukupi, coba lagi nanti atau coba Availability Zone 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 strategi. precision-time

Penggunaan AWS CLI

Jalankan perintah berikut:

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

Perintah mengembalikan ARN grup penempatan 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 saat meluncurkan instance 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 Anda dalam grup penempatan waktu presisi, Anda mendapatkan keuntungan dari sumber waktu NTP yang disempurnakan.

Misalnya, jika Anda menggunakan daemon chronyd pada instans 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 logam telanjang yang didukung dan instans Amazon EC2 tervirtualisasi yang diluncurkan dalam grup penempatan waktu presisi. Perangkat PHC saat ini hanya dapat diakses di instance Linux. Bagian berikut menjelaskan cara mengatur dan memverifikasi perangkat PHC pada instance Linux Anda.

Persyaratan

  • Driver ENA versi 2.10.0 atau setelahnya diinstal pada sistem operasi yang didukung.

  • Instans Amazon EC2 yang menjalankan Linux. Untuk informasi selengkapnya tentang sistem operasi yang didukung, lihat prasyarat driver di. GitHub

  • Instans Amazon EC2 diluncurkan dalam grup penempatan waktu presisi (lihatAkses Layanan Sinkronisasi Waktu Amazon yang disempurnakan).

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.

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

  • Akses lama didukung Local Zones: 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 ENA GitHubuntuk informasi khusus untuk sistem operasi Anda. Berikut ini adalah ikhtisar langkah-langkah untuk Amazon Linux.

Sebelum Anda mulai, pastikan instance Anda memenuhiPersyaratan.

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 instruksi untuk menginstal driver dan mengaktifkan opsi phc_enable saat reboot, lihat driver ENA README aktif. GitHub

Verifikasi konfigurasi perangkat PTP

Verifikasi bahwa 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 yang 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, lompat 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 symlink untuk mengidentifikasi perangkat. /dev/ptp_ena

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 stempel waktu paket perangkat keras. Anda dapat memverifikasi dukungan untuk fungsi ini dengan menggunakan ethtool -T interface perintah.

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

[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 Kemampuan, stempel waktu paket perangkat keras tersedia di instans Anda.