Làm thế nào đến nay là quá xa ra khỏi phạm vi đối với ntpd? Nó có thể đến đó bằng một cú nhảy bất ngờ để tải nặng không? Điều này có thể được ghi đè?


21

Trong nhiều đoạn mồi trên ntpd, như bài này , luôn có một cảnh báo rằng ntpd sẽ ngừng đặt lại đồng hồ "[nếu] đồng hồ của bạn quá xa."

Bao xa là "quá xa"?

Ngoài ra, nếu một máy chủ đột ngột chuyển sang tải nặng, ví dụ từ tổng số nhàn rỗi đến CPU 100%, liệu sự tăng nhiệt độ có khiến đồng hồ bị lệch "quá xa" không?

Ntpd có thể được cấu hình để đặt lại đồng hồ ngay cả khi thời gian "quá xa" hoặc ít nhất là làm cho "quá xa" một chút xa hơn?


How far off is "too far off"?Phụ thuộc. Cụ thể bạn đang sử dụng hệ điều hành / phân phối nào?
Vô vọngN00b

@ HoplessN00b máy chủ Ubuntu. Tôi cho rằng thật khó để xác định vì sự phức tạp của thuật toán, vì vậy tôi có thể sống với một nhân vật sân bóng.

Tất cả các câu hỏi của bạn là các biến mà bạn có thể đặt trong cấu hình
Jacob

@Jacob Cảm ơn Jacob! Bạn có phiền chỉ cho tôi ở đâu không? Tôi chưa bao giờ thấy bất cứ điều gì mở rộng băng tần thiết lập lại và tất cả những gì tôi có thể tìm thấy cho tần số đồng bộ hóa cao hơn là burstđiều khiến bạn bị cấm. :/ Cảm ơn trước!

Tôi không nghĩ tải CPU hay nhiệt độ sẽ ảnh hưởng đến đồng hồ của bạn. Tất cả các bộ định thời trên một máy tính thông thường cuối cùng đến từ một bộ tạo dao động, theo như tôi biết, nằm ngoài gói CPU và không bị ảnh hưởng bởi bất cứ điều gì CPU đang làm.
Nate Eldredge

Câu trả lời:


19

Trước hết, sự khác biệt tối đa mặc định là 1000 như những người khác đã đề cập. Như @kyle đã nói, bạn chỉ có thể sử dụng -gcờ để bỏ qua MỘT lần này để đặt đồng hồ ban đầu.

Sau đó, bạn thực sự không nên thấy đồng hồ của mình trôi 1000 giây giữa các bản cập nhật ngay cả dưới tải trọng lớn và nếu bạn thực sự cần phải thay thế đồng hồ. Các cài đặt trong cấu hình bạn cần là minpollmaxpoll. Những thứ này sẽ cho phép bạn đặt thời lượng khoảng thời gian thành lũy thừa 2 (ví dụ 10 có nghĩa là 2 10 = 1024 s).

Xin lưu ý rằng hệ thống của bạn có thể sẽ không bị trôi đáng kể ngay cả khi tải cao và các cài đặt mặc định sẽ kiểm tra nó. Bạn không muốn bắn phá các máy chủ NTP bằng các bản cập nhật mỗi giây vì bạn đang lãng phí tài nguyên, nó sẽ khiến bạn bị chặn và rất có thể là một cuộc gọi đến ISP NOC của bạn. Nếu bạn thực sự cần thời gian cực kỳ chính xác, hãy sử dụng GPS hoặc thiết lập máy chủ NTP của riêng bạn.


2
Tùy thuộc vào những gì bạn làm, vài ms nó có thể trôi dạt mỗi ngày là "đáng kể" đối với mọi người.
PlasmaHH

2
@PlasmaHH Sau đó, tôi sẽ đề nghị sử dụng một nguồn thời gian tốt hơn như GPS.
Jacob

Cảm ơn Jacob rất nhiều! Bạn có tình cờ biết giới hạn tỷ lệ phổ biến nhất là gì không? Tôi muốn duy trì thời gian tốt trong dải 10ms được hiển thị ở đây ntp.org/ntpfaq/NTP-s-algo.htmlm#Q-ACCURATE-CLOCK mà không cần phần cứng đắt tiền. Cảm ơn bạn rất nhiều trước!

1
@Gracchus Tùy thuộc vào các máy chủ NTP riêng lẻ và bạn phải liên hệ với họ. Theo tôi, bạn đang cố gắng sử dụng NTP như một cái nạng cho thứ gì đó mà bạn cần thời gian chính xác cao. Vì vậy, bạn nên sử dụng một giải pháp tốt hơn (như GPS) để có được nó hơn là thêm tải vào một dịch vụ miễn phí.
Jacob

3
@Gabe: Thay thế ở đây cũng có nghĩa là thêm một đồng hồ khác vào hệ thống. Ngoài ra có khá nhiều tùy chọn để thêm các loại đồng hồ khác nhau như thẻ pci.
PlasmaHH

12

NTPD có thể điều chỉnh đồng hồ của bạn ở mức tăng chậm nếu tắt, xoay vòng đồng hồ. Ý tưởng đằng sau đó là các bước chậm sẽ không gây ra sự cố với bộ định thời phần mềm, các lỗ hổng lạ trong tệp nhật ký, v.v.

Tốc độ quay tối đa có thể được giới hạn ở mức 500 phần triệu (PPM) bởi hạt nhân Unix. Do đó, đồng hồ có thể mất 2000 giây cho mỗi giây đồng hồ nằm ngoài phạm vi chấp nhận được.

Theo trang hướng dẫn ntpd sẽ không hoạt động nếu đồng hồ của bạn tắt hơn 1000 giây.

Vì xoay vòng đồng hồ để điều chỉnh 1000 giây sẽ mất ít nhất 3 tuần và trong thời gian đó, tất cả các ngày / dấu thời gian vẫn tắt, điều đó dường như không hợp lý.

Các ntpdatelệnh có -b switch chỉ đơn giản là điều chỉnh thời gian mà không cần xoay. Điều này rất hữu ích trong trường hợp đồng hồ hệ thống cục bộ lệch quá nhiều so với thời gian "chính xác".


9

Điều này được chỉ định trong man ntpdvà bạn ghi đè lên -gtùy chọn mà bạn có thể quan tâm đến tùy chọn (Lưu ý "mặc định là 1000 giây":

-g Thông thường, ntpdthoát với thông báo tới nhật ký hệ thống nếu phần bù vượt quá ngưỡng hoảng loạn, mặc định là 1000 giây. Tùy chọn này cho phép thời gian được đặt thành bất kỳ giá trị nào mà không hạn chế; tuy nhiên, điều này chỉ có thể xảy ra một lần. Nếu vượt quá ngưỡng sau đó, ntpdsẽ thoát với thông báo đến nhật ký hệ thống. Tùy chọn này có thể được sử dụng với -q-xcác tùy chọn. Xem tinkerlệnh cho các tùy chọn khác.

Bạn có thể điều chỉnh này trong ntpd.conf. Nếu bạn muốn tắt nó, bạn có thể thiết lập tinker panic 0. Xem tài liệu Tùy chọn khác để tìm hiểu thêm.


Hoàn hảo! Cuối cùng đã tìm thấy minpollmaxpoll. Cảm ơn bạn!

Kyle này là sai. Đây là một lệnh tắt và sẽ không giải quyết các vấn đề trong tương lai. Bạn cũng không đề cập đến minpollhoặc maxpoll.
Jacob

1
Để làm việc này với tôi, tôi đã phải sử dụng các bước sau 'dịch vụ sudo ntp stop' 'ntpq -gq' và 'sudo service ntp start'
Terry Horner
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.