Những điều cần xem xét khi chạy các máy chủ NTP công cộng


21

Vì vậy, gần đây tôi nhận ra rằng vì tôi có 3 đồng hồ GPS trong mạng, về mặt kỹ thuật, tôi có thể trả lại một chút và phục vụ thời gian cho phần còn lại của thế giới. Cho đến nay tôi chưa thấy bất kỳ nhược điểm nào với ý tưởng này, nhưng tôi có những câu hỏi sau đây;

  1. Tôi có thể ảo hóa điều này? Tôi sẽ không dành tiền và thời gian để đứng lên phần cứng cho việc này, vì vậy ảo hóa là điều bắt buộc. Vì các máy chủ sẽ có quyền truy cập vào ba nguồn 1 tầng, tôi không thể thấy vấn đề này có thể là vấn đề như thế nào với điều kiện cấu hình ntpd là chính xác

  2. Loại máy chủ NTP nào (một phần của pool.ntp.org) thường thấy? Và tôi cần bao nhiêu VM lớn cho việc này? ntpd không nên quá tốn tài nguyên xa như tôi có thể thu thập, nhưng tôi muốn biết trước.

  3. Những khía cạnh bảo mật nào ở đây? Tôi nghĩ chỉ cần cài đặt ntpd trên hai máy ảo trong DMZ, chỉ cho phép ntp thông qua FW và chỉ ntp từ DMZ đến các máy chủ ntp nội bộ. Dường như cũng có một số cài đặt ntp được khuyến nghị theo trang nhóm NTP, nhưng chúng có đủ không? https://www.ntppool.org/join/configuration.html

  4. Họ khuyên bạn không nên cấu hình trình điều khiển đồng hồ LOCAL, điều này có tương đương với việc loại bỏ cấu hình nguồn thời gian LOCAL khỏi các tệp cấu hình không?

  5. Bất cứ điều gì khác để xem xét?

Câu trả lời:


22

Thứ nhất, tốt cho bạn; đó là một điều hữu ích và công khai để làm. Điều đó nói và đưa ra sự làm rõ của bạn rằng bạn đang dự định tạo một hoặc nhiều máy ảo DMZ sẽ đồng bộ hóa và cung cấp thời gian công khai từ ba máy chủ phân tầng GPS (nội bộ) Meinberg của bạn:

  1. Chỉnh sửa : Ảo hóa xuất hiện để thảo luận về danh sách nhóm theo thời gian; một cái gần đây là vào tháng 7 năm 2015, có thể được theo dõi bắt đầu từ email này . Hỏi Bjørn Hansen, trưởng dự án, đã đăng bài lên chủ đề , và không lên tiếng chống lại ảo hóa. Rõ ràng một số nhà khai thác máy chủ nhóm đang ảo hóa ngay bây giờ, vì vậy tôi không nghĩ có ai sẽ bắn bạn vì điều đó và vì một poster rõ ràng, nếu (các) máy chủ của bạn không đáng tin cậy, hệ thống giám sát nhóm sẽ đơn giản loại bỏ chúng khỏi hồ bơi. KVM dường như là công nghệ ảo hóa ưa thích; Tôi không tìm thấy ai cụ thể bằng VMWare, vì vậy không thể nhận xét về mức độ "trung thực" của ảo hóa. Có lẽ tóm tắt tốt nhất về chủ đề nói

    Các máy chủ nhóm của tôi được ảo hóa với KVM trên các máy chủ KVM của riêng tôi. Giám sát cho biết, máy chủ này khá chính xác và cung cấp thời gian ổn định trong 2-3 năm qua. Nhưng tôi sẽ không thiết lập một máy chủ nhóm trên một máy chủ ảo được thuê từ một nhà cung cấp khác.

  2. Đây là số lượng khách hàng khác nhau trung bình hàng ngày tôi nhìn thấy trên máy chủ nhóm của tôi (ở khu vực Vương quốc Anh, châu Âu và toàn cầu) trong năm qua:

    số lượng khách hàng ntp

    Điều này áp đặt gần như không tải hệ thống có thể phát hiện ( ntpddường như sử dụng từ 1% đến 2% CPU, hầu hết thời gian). Lưu ý rằng, tại một số thời điểm trong năm, tải nhanh đạt đỉnh ở mức gần một nghìn khách hàng mỗi giây (Tối đa: 849,27); Tôi giám sát tải quá mức và tất cả các báo thức đều không tắt, vì vậy tôi chỉ có thể lưu ý rằng ngay cả mức tải đó cũng không gây ra sự cố, dù chỉ là một thời gian ngắn.

  3. Các cấu hình đề xuất dự án là thực tiễn tốt nhất và làm việc cho tôi. Tôi cũng sử dụng iptablesđể xếp hạng các khách hàng giới hạn ở hai gói gửi đến trong một cửa sổ mười giây (thật đáng ngạc nhiên khi có nhiều khách hàng thô lỗ ở đó, họ nghĩ rằng họ nên tự do nổ tung để nhanh chóng đặt đồng hồ của riêng mình).

  4. Hoặc xóa bất kỳ dòng nào đề cập đến địa chỉ máy chủ bắt đầu bằng 127.127.

  5. Các hướng dẫn thực hành tốt nhất cũng đề xuất nhiều hơn ba đồng hồ, vì vậy bạn có thể muốn chọn một vài máy chủ công cộng khác hoặc máy chủ nhóm cụ thể, ngoài ba máy chủ tầng 1 của bạn.

    Tôi cũng lưu ý rằng nếu bạn dự định đặt cả hai máy ảo này trên cùng một phần cứng máy chủ, có lẽ bạn chỉ nên chạy một, nhưng gấp đôi băng thông được khai báo cho nhóm (nghĩa là chấp nhận gấp đôi số truy vấn nếu bạn muốn ).


1
Nhiều bản phân phối Linux được đặt ibursttheo mặc định ...
Michael Hampton

4
iburstTôi không bận tâm lắm, vì nó chỉ áp dụng khi máy chủ không truy cập được. Thiết lập burst, tuy nhiên, là hết sức chống đối xã hội.
MadHatter hỗ trợ Monica

1
Cảm ơn bạn, chính xác những gì tôi muốn biết! Để làm rõ, tôi đang chạy VMware theo những điều này và đó là một cụm phân tán. Đồng hồ bên trong của tôi là các thiết bị Meinberg, và họ nói NTP một cách ngây thơ. Tải có vẻ khá hợp lý, đồng hồ bên trong của tôi nhìn thấy khoảng hai lần (nhưng sau đó chúng lại ở đó để các thiết bị của tôi có thể chống đối xã hội như chúng muốn).
Stuggi

@Stuggi Tôi đã cố gắng làm rõ câu hỏi ảo hóa bằng cách tìm kiếm danh sách của các nhà khai thác nhóm, hy vọng đó là một số trợ giúp. Đừng chấp nhận câu trả lời của tôi nếu bạn nghĩ rằng nó đã giải quyết tất cả các câu hỏi của bạn! Và cảm ơn một lần nữa vì đã chạy một máy chủ pool.
MadHatter hỗ trợ Monica

1
@MadHatter Chúc mừng người bạn đời, đã xóa nó đi một số. Trước đây tôi đã phải đối phó với rất nhiều vấn đề về thời gian trên VMware và biết cách xử lý những vấn đề đó, tôi chỉ lo lắng rằng ngay cả sau khi điều chỉnh mọi thứ, VM vẫn sẽ quá tệ trong việc chấm công cho NTP. VMware là một trình ảo hóa kim loại trần (hay còn gọi là trình ảo hóa là HĐH), trong khi KVM (nếu tôi nhớ chính xác) chạy trên hệ điều hành "bình thường", do đó, sẽ rất tốt nếu chạy nó trong VMware. Tôi sẽ thử và xem nếu tôi bị ném ra khỏi hồ bơi! :)
Stuggi

12

Đầu tiên, xin chúc mừng một câu hỏi về NTP không phải là tài liệu hướng dẫn. :-) Tôi đã bao gồm một số biểu đồ ở cuối bài đăng này để cho bạn cảm nhận về mọi thứ. VM đang được đề cập được đặt thành 100 Mbps trong bảng điều khiển nhóm và nằm ở Anh, Châu Âu và các nhóm toàn cầu.

  1. Tôi nghĩ MadHatter bảo vệ tốt điều này - ảo hóa sẽ ổn thôi. Giống như bạn nói, nếu chúng đang kiếm ăn từ tầng 1 được kết nối GPS của bạn, chúng sẽ rất chắc chắn. Theo kinh nghiệm của tôi, máy ảo có xu hướng tăng vọt hơn một chút so với kim loại trần về tần số (xem biểu đồ bên dưới), nhưng đó là những gì bạn mong đợi - chúng đang xử lý một lớp mô phỏng đồng hồ (hy vọng khá hiệu quả) và có khả năng gây ồn người hàng xóm. Nếu bạn không muốn thấy sự tăng vọt đó, có thể sử dụng các máy chủ cũ hơn hoặc máy tính để bàn không sử dụng làm tầng 2 DMZ của bạn.

  2. VM này là 1 lõi, RAM 2 GB, chạy Ubuntu 16.04 LTS, được ảo hóa trong OpenStack (KVM hypanneror). Như bạn có thể thấy, RAM là một chút trên đầu trang.

  3. Các cài đặt được đề xuất - bao gồm không có trình điều khiển cục bộ được cấu hình - là mặc định trong Ubuntu 16.04. Tôi đang chạy rất gần với cấu hình chứng khoán, ngoài danh sách ngang hàng.

  4. (xem ở trên)

  5. Có lẽ tôi sẽ bắt đầu băng thông ở phía thấp và tăng cường băng thông sau khi bạn theo dõi nó một chút. Nếu các máy ảo của bạn ở gần nhau và gần tầng 1 của bạn về độ trễ mạng, có lẽ tôi sẽ có tất cả các máy ảo nói chuyện với tất cả các tầng 1 và có thể ngang hàng với nhau và cũng bật chế độ mồ côi.

Dưới đây là các biểu đồ - tất cả chúng đều có cùng khoảng thời gian khoảng 3 tuần, ngoại trừ mạng thứ nhất, có một vài đột biến do sao lưu. Khi mạng tăng đột biến, tôi thậm chí không thể thấy lưu lượng NTP bình thường, vì vậy tôi phóng to một chút để hiển thị nền thông thường.

CPU Bộ nhớ CPU Offset hệ thống tần số Ký ức mạngMạngTần sốHệ thống bù đắp


Ooooh, câu trả lời hay - +1 từ tôi!
MadHatter hỗ trợ Monica

1
Nhờ giao phối, hơn đó là thực sự hữu ích, tôi chạy ít hơn 3 ms độ trễ giữa các máy ảo và thiết bị NTP vật lý, được phân phối về mặt địa lý trong vòng 50 dặm của cơ sở hạ tầng máy ảo, vì vậy tôi nghĩ rằng tôi sẽ được ok!
Stuggi

3

Một số điều cần xem xét với NTP

Đã có câu trả lời tốt ở đây. Tôi chỉ thêm một vài suy nghĩ cho sự hoàn thiện vì lợi ích của chính tôi.

Tôi sẽ đề nghị cho phép ghi nhật ký và chỉnh sửa đồng hồ biểu đồ NTP trên kim loại trần so với VM khi nó liên quan đến cuộc thảo luận đó nếu đó là một vấn đề đáng lo ngại. Tôi không tin điều này có thể được khái quát hóa dễ dàng vì phần cứng và cấu hình khác nhau giữa các lần triển khai. Có thể là tốt nhất để có được số của riêng bạn trên số đó.

Tôi luôn đề nghị mọi người chọn vai trò hệ thống của máy chủ hoặc thiết bị mạng có thời gian CPU khá ổn định và đó không phải là hạt nhân không tích cực hoặc có bật chế độ tiết kiệm năng lượng. Đặc biệt tránh sử dụng cpuspeed dòng tốc độ hoặc tốc độ hoặc tiết kiệm năng lượng tiên tiến trên các máy chủ NTP, ngay cả khi chúng chỉ là tầng 2 trong trang trại của bạn. Một số ổn định có thể đạt được bằng cách không bao giờ đi sâu hơn C-State 1, nhưng mức tiêu thụ năng lượng của bạn sẽ tăng lên.

Tôi cũng cố gắng đảm bảo rằng mọi người chọn một số ít máy chủ tầng 1 nằm cách rìa mạng của họ dưới 40ms, sau đó phân chia chúng qua các máy chủ NTP cạnh của bạn và đảm bảo rằng không có 2 máy chủ nào phía sau cùng một SNAT trong mạng của bạn đang nói chuyện đến cùng một tầng 1 máy chủ. Dọc theo cùng một dòng burst, sẽ không khôn ngoan khi có nhiều máy chủ đằng sau cùng một SNAT sử dụng cùng một máy chủ ngược dòng, vì nó sẽ xuất hiện với chúng mà bạn đã bật nổ ngay cả khi bạn không.

Bạn phải luôn luôn tôn trọng kodgói tin từ máy chủ ngược dòng và có các công cụ giám sát kiểm tra thời gian bù và khả năng tiếp cận của máy chủ ngược dòng.

Bạn có thể muốn xem xét việc có các nguồn thời gian chính xác của mình trong một vài trung tâm dữ liệu của mình để ngang hàng hoặc quay trở lại trong trường hợp không chắc là GPS SA được quân đội kích hoạt. Có các thiết bị hiệu quả chi phí đặc biệt cho việc này. Ngay cả khi bạn ở trong môi trường "lồng" và không có trung tâm dữ liệu của riêng mình, một số cơ sở lưu trữ có thể chứa điều này.


Stuggi đã đề cập rằng mạng được đề cập có 3 đồng hồ GPS.
Paul Gear

Vâng. Tôi đặc biệt nói về việc sử dụng đồng hồ Caesium cục bộ sẽ không trôi trong trường hợp không chắc là GPS bị vô hiệu hóa. Điều đó chỉ xảy ra trong một sự kiện quân sự quy mô lớn, nhưng bạn không bao giờ biết.
Aaron

2

Xem tài liệu chấm công vmware tại http://www.vmware.com/pdf/vmware_timekeep.pdf

Chạy một daemon NTP trong VM có lẽ không phải là một ý tưởng hay, đặc biệt nếu bạn cần thời gian đáng tin cậy.


3
Mặc dù không phải là một câu trả lời chính xác, nhưng điều này đặt ra một mối quan tâm hợp lệ "TL; DR: có, có những vấn đề cần giải quyết liên quan đến ảo hóa".
rackandboneman

Tôi nhận thức được những vấn đề cần được giải quyết, tôi suy nghĩ nhiều hơn nếu có thể.
Stuggi

1
Re: "Chạy một daemon NTP trong VM có lẽ không phải là một ý tưởng hay, đặc biệt nếu bạn cần thời gian đáng tin cậy." - Tôi không nghĩ rằng điều này đúng với bất kỳ nhà ảo thuật hiện đại nào. Tài liệu bạn liên kết với cụ thể nói rằng sử dụng NTP trong VM là một tùy chọn. Các biểu đồ tôi đưa vào trong phản hồi của mình cho thấy VM có thể giữ thời gian tốt trên KVM và tôi mong muốn các hệ thống ESXi mới hơn sẽ làm như vậy.
Paul Gear

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.