2008-09-22 23 views
20

Đồng hồ máy ảo của tôi bị trôi khá đáng kể. Có tài liệu về việc xử lý vấn đề này, nhưng dường như không có gì hoạt động tốt.Làm thế nào tôi có thể giải quyết đồng hồ trôi cho Máy ảo của mình?

Bất cứ ai có bất cứ đề nghị, điều mà làm việc tốt cho họ, ...

Giả sử là cập nhật thường xuyên thông qua NTP không phải là một giải pháp tốt.

+1

Bạn muốn biết tại sao ntp không phải là một ý tưởng hay? – cagcowboy

+0

Máy ảo của bạn đang chạy trên hệ điều hành nào? –

+0

về giải pháp ntp: tôi phải thừa nhận rằng tôi không thể nhớ tại thời điểm lý do tại sao ntp không được khuyến khích. tôi nghĩ có lẽ nó đã làm với ý tưởng sử dụng các phương pháp khác nhau cùng một lúc và làm thế nào điều này sẽ là xấu. – carrier

Trả lời

10

vmware có a really good PDF doc về sự cố này.

Về cơ bản, máy chủ lưu trữ sẽ quét ve được gửi tới khách của bạn vì có thể. Không chạy NTP hoặc hẹn giờ hoặc rác như vậy. Chỉ cần cài đặt vmware-guestd và để cho máy chủ lưu trữ quét ve của bạn. Nếu bạn vẫn còn bị mất bọ ve, thì bất kỳ giải pháp nào khác cũng sẽ bị trôi dạt lớn.

Nếu có thể, hãy sử dụng hệ điều hành khách có tần suất đánh dấu tần suất thấp. Phiên bản mới hơn của Linux đi kèm với 1000Hz ve, nhưng nó chỉ được sử dụng để được 100Hz. Điều đó có vẻ dễ dàng hơn cho các máy chủ để cung cấp. Một hạt nhân xây dựng lại thường là cần thiết để thay đổi giá trị HZ.

+2

Tính đến cuối, nhiều hạt nhân (hầu hết?) Được phân phối thực sự là "vô dụng", một khái niệm tôi không thể giải thích nhưng luồng này có thể: http://kerneltrap.org/node/6750 –

+3

Điều này đúng 10 năm trước. Theo KB mới nhất: "VMware khuyến nghị sử dụng NTP thay vì đồng bộ hóa thời gian của VMware Tools", hãy xem http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1006427 –

+0

Đã thử theo dõi chủ đề tại kerneltrap.org nhưng liên kết đã chết. – jesusduarte

0

Không cài đặt các bổ sung máy ảo (công cụ) đồng bộ hóa đồng hồ giữa khách và hệ điều hành máy chủ?

-1

Bạn có thể sử dụng cmd và

net time \\computer_name /set 

để đặt đồng hồ remotly (hoặc trong một kịch bản ví dụ)

0

Giả sử là cập nhật thường xuyên thông qua NTP không phải là một giải pháp tốt

Đó là giải pháp tôi khuyên bạn nên sử dụng. Tại sao nó không được coi là tốt ở vị trí của bạn?

0

Cài đặt NTP nếu bạn chưa có.

ntpdate sẽ đặt đồng hồ chính xác, sau đó ntpd có thể giữ đồng hồ chính xác.

NTP pool project cung cấp một nhóm lớn các máy chủ NTP để chọn.

Chỉnh sửa chỉ nhận thấy bạn đã nói rằng bạn nghĩ rằng NTP không phải là giải pháp tốt - tại sao? Nếu bạn lo lắng về hiệu ứng của đồng hồ thay đổi, NTP là lý tưởng, vì ntpd không nhảy đồng hồ về phía trước hoặc ngược, thay vào đó nó "xoay" đồng hồ bằng cách tăng tốc nó lên/xuống một chút cho đến khi nó trở lại phù hợp với thời gian chính xác.

+0

nếu tôi chạy ntpdate -u nó sẽ cập nhật đồng hồ ... tuy nhiên, sau 1 phút tôi sẽ bị tắt 5 giây, vì vậy tôi sẽ phải chạy bản cập nhật khá thường xuyên. tôi đã không biết, tuy nhiên, tính năng xoay. tất cả tôi đã sử dụng là ntpdate -u nhảy. – carrier

1

Không có câu trả lời dứt khoát vì một số phương pháp tồn tại, mỗi phương pháp đều có ưu và khuyết điểm của nó. Điều cần chọn phụ thuộc vào nhiệm vụ của bạn, tải trên máy chủ, hệ điều hành, v.v.

Đọc vmware_timekeeping.pdf để hiểu rõ vấn đề.

công thức nấu ăn nhanh dành cho Linux có thể được tìm thấy trong một riêng biệt KB article

0

tôi đã cùng một vấn đề và giải quyết nó bằng cách

  1. cài đặt vmware-guestd
  2. gửi kernel một tùy chọn clocksource = acpi_pm
  3. chạy hwclock -s hàng giờ làm gốc.
8

Chỉ cần thêm một số dữ liệu về lý do tại sao NTPD không phải là giải pháp tốt. NTPD là một daemon cố gắng bù đắp cho sự trôi dạt đồng hồ cục bộ; nếu "đồng hồ bên trong" trôi đi bằng X giây trong một ngày, sau đó thay vì nhảy trước/quay lại như lệnh cưỡng bức như trong "ntpdate" NTPD cố gắng thêm/xóa một số chu kỳ vào đồng hồ sao cho thời gian, bình thường trong vòng 15 phút, đồng hồ chạy đủ chính xác và mức bồi thường vượt qua số X này trong vài giây mà các máy chủ tăng/giảm trong một ngày. Điều này có lợi thế là bạn sẽ không thấy bất kỳ thời gian nào trong ngày lặp đi lặp lại, đó là một PHẢI cho các hệ thống giao dịch. Tuy nhiên, để có thể thực hiện được điều này, NTPD yêu cầu đồng hồ cục bộ thực hiện một công việc hợp lý, điều này có nghĩa là đồng hồ địa phương sẽ không trôi dạt cách nhau hơn 42 giây một ngày (nhiều hơn hoặc ít hơn), chứ không phải chắc chắn về số chính xác). Điều này thường là một vấn đề trong Virtual Machines, vì đồng hồ được điều khiển bằng phần mềm, vì vậy nếu HOST quá tải, bạn có thể thấy đồng hồ của CLIENT sẽ chạy chậm hơn, và nếu không thì đồng hồ cũng có thể chạy Nhanh. Vấn đề ở đây đối với NTPD là đồng hồ cục bộ không đáng tin cậy và không có thời gian trôi dạt liên tục; nó có thể nhiều hơn hoặc ít hơn tùy thuộc vào tình trạng quá tải của hệ thống HOST.

Vì vậy, trong trường hợp này nó tốt hơn để cài đặt các công cụ của khách hàng như đã được đề nghị, và đồng bộ hóa đồng hồ KHÁCH HÀNG với đồng hồ của HOST (thường được gọi là "đồng hồ treo tường")

+2

Điều này đúng 10 năm trước. Theo KB mới nhất: "VMware khuyến nghị sử dụng NTP thay vì đồng bộ hóa thời gian của VMware Tools"., Xem http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1006427 –

16
  1. đọc bạn tài liệu hướng dẫn vmware cẩn thận trước khi bạn lắng nghe bất cứ ai. Chúng tôi đang chạy ESX5.

chấm công thực hành tốt nhất cho khách hàng Linux trong số những thứ khác nói: Ref: http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1006427

NTP Khuyến nghị Lưu ý: VMware khuyến cáo bạn sử dụng NTP thay vì VMware Tools kỳ đồng bộ hóa thời gian. NTP là tiêu chuẩn của ngành và đảm bảo thời gian chính xác được lưu giữ trong khách của bạn. Bạn có thể phải mở tường lửa (UDP 123) để cho phép lưu lượng truy cập NTP.

Đây là một /etc/ntp.conf mẫu:

tinker panic 0 
restrict 127.0.0.1 
restrict default kod nomodify notrap 
server 0.vmware.pool.ntp.org 
server 1.vmware.pool.ntp.org 
server 2.vmware.pool.ntp.org 
driftfile /var/lib/ntp/drift 

Đây là một mẫu (RedHat cụ thể)/etc/NTP/bước mã:

0.vmware.pool.ntp.org 
1.vmware.pool.ntp.org 

Cấu hình chỉ thị tinker hoảng loạn 0 chỉ thị cho NTP không từ bỏ nếu nó thấy một bước nhảy lớn trong thời gian. Điều này rất quan trọng để đối phó với các lần trôi dạt lớn và cũng tiếp tục các máy ảo từ trạng thái bị treo của chúng.

Lưu ý: hoảng loạn chỉ thị tinker 0 phải ở đầu tệp ntp.conf.

Điều quan trọng là không sử dụng đồng hồ địa phương làm nguồn thời gian, thường được gọi là Đồng hồ địa phương không bị kỷ luật.NTP có xu hướng quay trở lại điều này tùy thuộc vào các máy chủ từ xa khi có một lượng lớn thời gian trôi dạt.

Một ví dụ về cấu hình như vậy là:

server 127.127.1.0 
fudge 127.127.1.0 stratum 10 

Comment vào cả hai dòng.

Sau khi thực hiện thay đổi đối với cấu hình NTP, trình nền NTP phải được khởi động lại. Tham khảo tài liệu của nhà cung cấp hệ điều hành của bạn.

0

Đây là sự cố cũ nhưng gần đây đã ảnh hưởng đến chúng tôi. Những gì tôi thấy là bất kỳ vm của chúng tôi đã chạy các công cụ vmware đã bị ảnh hưởng bởi vấn đề này.

Gần đây, chúng tôi đã bắt đầu sử dụng công cụ mở vm và trên các tùy chọn đó, tùy chọn này không được đặt. Kể từ khi mở vm-công cụ được hỗ trợ đầy đủ và khuyến cáo của Vmware tôi sẽ đề nghị sử dụng nó trên công cụ vmware: http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=2073803

Nếu mở vm-công cụ là trong một kho lưu trữ mà bạn sử dụng nó cũng rất đơn giản để cài đặt qua yum install hoặc apt-get install v.v.

Các vấn đề liên quan