क्या मुझे हर वीएम में एक एनटीपी सर्वर चलाने की आवश्यकता है?


18

क्या मेहमान किसी तरह मेजबान के सिस्टम समय को प्राप्त नहीं कर सकते हैं?

एक ही मशीन को कई बार एक ही परिणाम प्राप्त करने के लिए एक ही डेमॉन को चलाने के लिए यह एक तरह का व्यर्थ लगता है लेकिन मुझे केवीएम या एक्सएन लेख पढ़ने पर समय से संबंधित कुछ भी नहीं मिला। मेरी समझ यह है कि अतिथि को बूट पर मेजबान समय मिलता है, लेकिन यह तब अलग हो सकता है। क्या वो सही है ?



1
मुझे लगता है कि तुम एक NTP ग्राहक मतलब है?
माइकल हैम्पटन

1
@ मिचेल हैम्पटन: हां, एनटीपी क्लाइंट और सर्वर के बीच का अंतर कभी भी मेरे लिए स्पष्ट नहीं था क्योंकि एनटीपी पैकेज हमेशा दोनों प्रदान करता है।
जिंबाटम

2
इस प्रश्न से संबंधित: डेबियन और डेरिवेटिव पर, openntpपैकेज की तुलना में बहुत अधिक लाइट-वेट है ntp। यह डिफ़ॉल्ट रूप से बांधता नहीं है और इसलिए केवल एक ग्राहक के रूप में कार्य करता है जो वास्तव में हमारे यहां आवश्यक है।
जिंबाटम

जवाबों:


13

यह सही है। यह ध्यान दिया जाना चाहिए कि समय न केवल "बहाव" कर सकता है, बल्कि इस तथ्य के कारण दूर हो जाएगा कि टाइमर के बीच का अंतराल (जो ओएस पर टाइमकीपिंग अक्सर आधारित होता है) फैला हुआ है और संपीड़ित होता है क्योंकि हाइपरवाइजर फिट दिखाई देगा।

अधिकांश वर्चुअलाइजेशन प्लेटफार्मों (हाइपर-वी एकीकरण सेवाओं, वीएमवेयर टूल्स) में आमतौर पर लिया जाने वाला वर्कअराउंड अतिथि पर एक डेमॉन चला रहा है जो समय-समय पर वीएम होस्ट के साथ घड़ियों को सिंक्रनाइज़ करता है। जैसा कि आपके प्रश्न के लिए एक टिप्पणी में हाउक द्वारा उल्लेख किया गया है, केवीएम अतिरिक्त रूप से एक paravirtualized घड़ी प्रदान करता है जिसे संबंधित ओएस पर काम करने के लिए संबंधित ड्राइवर को लोड करने की आवश्यकता होगी।

आगे की पढाई:

VMWare वर्चुअल मशीन (vmware.com)
केवीएम मेहमान घड़ी तुल्यकालन (s19n.net) में टाइमकीपिंग


बहुत बहुत धन्यवाद। EC2 पर उन लोगों के लिए, Xen एक घड़ी स्रोत भी प्रदान करता है: cat /sys/devices/system/clocksource/clocksource0/current_clocksource=> xen
zimbatm

फिर भी chronyd की सिफारिश की जाती है, भले ही kvm- घड़ी होस्ट के साथ सर्वर के रूप में और VM क्लाइंट के रूप में उपयोग की जाती हो।
अकोस्टैडिनोव

21

एक संपूर्ण दुनिया में, आपके वीएम मेहमान सही समय रखते हैं, या कम से कम मेजबान प्रदान करता है। दुर्भाग्य से हम एक आदर्श दुनिया में नहीं रहते हैं।

आदमी को ज्ञात लगभग हर हाइपरवाइजर के साथ अपने अनुभव के आधार पर, मैं हमेशा अपवाद के बिना वर्चुअल मशीनों में एक एनटीपी क्लाइंट चलाता हूं। मेरा सामान्य सेटअप ntpd है -g विकल्प के साथ, या पुराने सिस्टम के लिए ntpdate शुरू करने से ठीक पहले, घड़ी को चलाने के लिए (जो सिस्टम बूट में सिंक से बहुत दूर हो सकता है)।

KVM के पास लगभग पूर्ण सेटअप है, इसकी paravirtualized realtime घड़ी के साथ ; उपयुक्त ड्राइवर वाले मेहमान (सभी हाल ही में लिनक्स, कम से कम) मेजबान के साथ-साथ समय भी रखेंगे। लेकिन फिर भी चीजें यहां गलत हो जाती हैं: उदाहरण के लिए, मेजबान एनटीपी नहीं चल रहा हो सकता है, मेजबान के पास गलत समय क्षेत्र सेट हो सकता है, मेजबान की घड़ी बस सादा गलत हो सकती है, आदि।

बीच में वीएमवेयर और हाइपर-वी आते हैं। प्रत्येक में एक उपकरण होता है जिसे अतिथि पर चलाया जाता है जो घड़ी को समय-समय पर होस्ट के साथ सिंक करता है, लेकिन फिर से, यह मेजबान घड़ी के साथ किसी भी मौजूदा समस्या के लिए कमजोर है।

मेरे परीक्षण हाइपर-वी सर्वर पर मेहमानों ने कुछ अजीब व्यवहार का प्रदर्शन भी किया: एकीकरण सेवाओं के साथ भी, अतिथि घड़ी 500 पीपीएम से अधिक तेजी से बहती है, एनटीपीडी को काम करने से रोकती है ( अगर यह इससे तेज गति से चलता है तो घड़ी की घड़ी समझता है )। मुझे इन मेहमानों को क्रोनी में बदलना पड़ा , जो इस मूल्य को समायोजित करने की अनुमति देता है।

इस संबंध में एक्सएन सबसे खराब है; इसमें पूरी तरह से सिंक्रनाइज़ेशन नहीं है और मेहमानों के लिए एनटीपी चलाना बहुत आवश्यक है। (मुझे बताया गया है कि Xen के हाल के संस्करणों में कुछ प्रकार के सिंक्रनाइज़ेशन हैं, लेकिन व्यक्तिगत रूप से अभी तक इसके साथ काम नहीं किया है।)

यदि होस्ट हाइपरवाइजर आपके नियंत्रण में नहीं है, तो चीजें बहुत खराब हो जाती हैं, जैसे कि सार्वजनिक क्लाउड। आप मेजबान घड़ी के संबंध में प्रदाता की दया पर हैं, और यदि वे इसे सिंक्रनाइज़ रखने में मेहनती नहीं हैं, तो आप हार जाते हैं।

उस सब के साथ, यदि आपकी अर्ध-सटीक घड़ी की आवश्यकता है, तो आपके वर्चुअल मशीनों में एनटीपी क्लाइंट चलाना बहुत आवश्यक है। एनबी: यदि आप विंडोज वर्चुअल मशीन चलाते हैं, तो एक तीसरी पार्टी एनटीपी क्लाइंट प्राप्त करें जो लगातार घड़ी को समायोजित करता है; विंडोज के साथ आने वाले ग्राहक के लिए खराब बहाना केवल सप्ताह में एक बार घड़ी को समायोजित करता है , जो पूरी तरह से हास्यास्पद है।


क्या ntpdateएक दैनिक क्रोन नौकरी में चल रहा है या क्या यह एनटीपी डेमॉन होना चाहिए?
AngerClown

4
आपको घड़ी को लगातार सिंक करने के लिए वास्तव में कुछ चाहिए, क्योंकि यह एक दिन में सिंक से काफी दूर जा सकता है जिससे आपको समस्या हो सकती है। और कुछ कार्यक्रम घड़ी की तरह कदम नहीं रखते हैं।
माइकल हैम्पटन

Ntp डेमॉन के साथ मुद्दा यह है कि यह मुख्य रूप से दूसरों को समय प्रदान करने के लिए है और इस तरह काम करना बंद कर देगा यदि समय बहुत अधिक अलग हो जाता है। मैं वास्तव में चाहता हूँ कि ntpdate की तरह कुछ और भी हो जो निरंतर चले और किसी भी बंदरगाह को न बांधें।
जिंबाटम

1
@JonasPfenniger यदि ntpd आपके लिए काम नहीं कर रहा है, तो इसके बजाय क्रोनी का उपयोग करने का प्रयास करें (जैसा कि ऊपर बताया गया है)। यह वर्चुअल मशीनों के साथ हमारे द्वारा देखे जाने वाले अजीब परिदृश्यों को समायोजित करने के लिए ntpd से काफी अधिक ट्यून किया जा सकता है।
माइकल हैम्पटन

3
जबकि मैं आपके द्वारा कही गई 95% बातों से सहमत हूं, मैं सिर्फ यह बताना चाहता था कि NTP का उपयोग करने वाला एक विंडोज क्लाइंट प्रति सप्ताह एक घड़ी परिवर्तन तक सीमित नहीं है। निम्नलिखित reg कुंजी आपको अपडेट अंतराल को प्रभावी ढंग से परिभाषित करने की अनुमति देती है: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config\UpdateIntervalमान सेकंड में परिभाषित किया गया है और आमतौर पर 360000 (100 घंटे) पर सेट होता है, लेकिन आप इसे हर 15 मिनट में 900 तक सेट कर सकते हैं यदि आपके आवेदन विशेष रूप से संवेदनशील हैं। बाद में W32Time सेवा को पुनरारंभ करना याद रखें।
कयाज

3

मैं एनटीपी का उपयोग करने की सिफारिश करूंगा क्योंकि यह अच्छी तरह से जाना जाता है और लंबे समय से है। घड़ी को समायोजित करना तुच्छ नहीं है। NTP ने इस मुद्दे को हल कर दिया है।

VMware की आधिकारिक लाइन एक तंत्र का उपयोग करना है, NTP के साथ पसंद किया जाता है क्योंकि यह अधिक महीन होता है और समय को समायोजित करने के लिए छोटे कदम उठाता है। आंतरिक VMware समाधान बड़ा कदम लेता है। जब आप दोनों चलाते हैं तो वे एक-दूसरे से लड़ सकते हैं। आंतरिक VMware समाधान के साथ एक बड़ा कदम और फिर NTP इसे समायोजित कर रहा है और इसे थोड़ा वापस ले रहा है।

व्यवहार में हालांकि हम एक ही समय में दोनों चलाते हैं और मैंने अभी तक कोई समस्या नहीं देखी है।

$ ntpq   
ntpq> peers
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
something.org  172.2.1.5          2 u   57   64  377    1.597   -2.409   5.952


$  vmware-toolbox-cmd  timesync status
Enabled


$ vmware-toolbox-cmd help timesync
timesync: functions for controlling time synchronization on the guest OS
Usage: vmware-toolbox-cmd timesync <subcommand>

Subcommands:
  enable: enable time synchronization
  disable: disable time synchronization
  status: print the time synchronization status
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.