NTPD और ntpdate की तुलना करें


23

अपने सर्वर को सिंक्रनाइज़ करने के लिए इन दो तरीकों के बीच क्या पेशेवरों और विपक्ष हैं?

यह मुझे लगता है कि आपका सर्वर शायद हर दिन 1 सेकंड से अधिक बहाव नहीं करेगा, इसलिए एक crontab पर ntpdate ठीक होगा। लेकिन मैंने सुना है कि आप यहाँ बेमानी NTP सर्वर का उपयोग कर सकते हैं

http://www.pool.ntp.org/en/use.html

विफलता के मामले में सिंक्रनाइज़ समय बनाए रखने के लिए।

क्या तुम्हारे पास कोई सुझाव है?

जवाबों:


26

NTP एल्गोरिथ्म में आपके सर्वर की घड़ी में बहाव की गणना करने और उसे ठीक करने की अनुमति देने के लिए जानकारी शामिल है। NTPD में अपनी घड़ी को सिंक में रखने के लिए इसका उपयोग करने की क्षमता शामिल है और NTPD नहीं चलाने वाले कंप्यूटर पर एक घड़ी की तुलना में अधिक सटीक रूप से चलेगी। सटीकता को बेहतर बनाने के लिए एनटीपीडी कई सर्वरों का उपयोग करेगा।

ntpdate आपके लिए इस सेवा को करने के लिए किसी भी राज्य को नहीं रखता है, इसलिए उसी तरह की सटीकता प्रदान नहीं करेगा। यह आपको सर्वर की एक सूची प्रदान करने की अनुमति देगा, जिसका उपयोग यह आपको बेहतर परिणाम प्रदान करने का प्रयास करेगा लेकिन एनटीपीडी में उपलब्ध परिष्कृत एल्गोरिदम के लिए यह कोई विकल्प नहीं है जो समय के साथ प्रत्येक सर्वर से आपके बहाव को ट्रैक करता है।

NTPDATE तुरंत सिस्टम समय को सही करता है, जिससे कुछ सॉफ़्टवेयर के साथ समस्याएं हो सकती हैं (उदाहरण के लिए एक सत्र को नष्ट करना जो अब पुराना प्रतीत होता है)। NTPD उस समस्या से बचने के लिए जानबूझकर सिस्टम के समय को धीरे-धीरे सही करता है। आप NTPD शुरू करते समय -g स्विच को जोड़ सकते हैं, जिससे NTPD को पहली बार अपडेट करने की अनुमति मिलती है, जो NTPD शुरू करने से पहले एक बार ntpdate चलाने के बराबर है, जो एक समय में अभ्यास की सिफारिश की गई थी।

सुरक्षा चिंताओं के लिए, ntp सर्वर बिना कनेक्शन के वापस कनेक्ट नहीं होते हैं, जिसका अर्थ है कि आपका फ़ायरवॉल यह बताने में सक्षम होना चाहिए कि आपने ntp अनुरोध शुरू किया है और वापसी ट्रैफ़िक की अनुमति देता है। काम करने के लिए NTPD प्राप्त करने के लिए मनमाने कनेक्शन के लिए बंदरगाहों को खुला छोड़ने की आवश्यकता नहीं होनी चाहिए।

Ntpdate (8) मैन पेज से:

ntpdate को होस्ट घड़ी सेट करने के लिए आवश्यक रूप से चलाया जा सकता है, या इसे बूट समय पर घड़ी सेट करने के लिए होस्ट स्टार्टअप स्क्रिप्ट से चलाया जा सकता है। एनटीपी डेमॉन एनटीपीडी शुरू करने से पहले घड़ी सेट करने के लिए कुछ मामलों में यह उपयोगी है। एनटीपीडेट को क्रोन स्क्रिप्ट से चलाना भी संभव है। हालांकि, यह ध्यान रखना महत्वपूर्ण है कि कंट्रोल्ड क्रोन स्क्रिप्ट के साथ ntpdate NTP daemon का कोई विकल्प नहीं है, जो संसाधन उपयोग को कम करते हुए सटीकता और विश्वसनीयता को अधिकतम करने के लिए परिष्कृत एल्गोरिदम का उपयोग करता है। अंत में, चूंकि ntpdate ntpd की तरह होस्ट क्लॉक फ़्रीक्वेंसी को अनुशासित नहीं करता है, इसलिए ntpdate का उपयोग करने की सटीकता सीमित है।


Ntpd शुरू करने से पहले ntpdate का उपयोग करने से बेहतर है: बस -g का उपयोग करें!
एलेक्स जे।

8

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

के रूप में खुले बंदरगाहों (केली द्वारा वर्णित के रूप में) की आवश्यकता के लिए, ntpd के नए संस्करण (उदाहरण के लिए मेरे डेबियन सर्वर पर 4.2.4) को क्रिप्टोग्राफिक प्रमाणीकरण के साथ लैन पर प्रसारण / मल्टीकास्ट के लिए कॉन्फ़िगर किया जा सकता है।

संपादित करें: यह प्रश्न भी देखें ।


5

मैं आमतौर पर अनुशंसा करता हूं कि आप NTPD चलाते हैं, और अपने सर्वर को अपने संगठन में निर्दिष्ट समय सर्वर के साथ सिंक करते हैं। वह आंतरिक सर्वर आमतौर पर सार्वजनिक एनटीपी सर्वरों में से एक के साथ सिंक्रनाइज़ हो रहा होगा (जैसा कि आप से जुड़ा हुआ है)।

मैंने बिना किसी समस्या के ntpdate पद्धति का उपयोग किया है, लेकिन यह सिर्फ एक सच्चे ntpd डेमॉन को चलाने की तुलना में अधिक हैकिश लगता है।


3

मैंने ntpd चलाने वाली वर्चुअल मशीनों पर क्लॉक स्क्यू के साथ मुद्दों के बारे में सुना है। मैंने नियमित क्रोन नौकरियों को चलाकर लोगों को इस मुद्दे को ठीक करने के बारे में भी सुना है जो कि पूल सर्वरों में से कई के खिलाफ ntpdate कहते हैं। मुझे ये समस्याएँ नहीं हैं, लेकिन मैंने कई बार उनके बारे में सुना है।


1
वे VM
goo

1
ईएमएक्स वीएम पर वीएमवेयर टूल सॉफ्टवेयर समय को सिंक्रनाइज़ करने का ख्याल रखता है, इसलिए वीएमवेयर टूल के साथ वीएम पर एनटीपीडी का उपयोग न करें। इसके बजाय मेजबान पर NTPD सेटअप करें और VMware टूल को बाकी काम करने दें।
dunxd

3

जैसा कि कहीं और उल्लेख किया गया है, NTP एक सुचारु समय सुधार प्रदान करता है। अगर आपके सर्वर पर मौजूद एप्लिकेशन के पास पूरे सेकंड मिस नहीं होते हैं, या फिर वही सेकंड्स दोबारा कर रहे हैं, तो ntpd आपको ntpdate पर अधिक लाभ नहीं देता है।

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

मेरे MythTV बॉक्स के लिए घर पर, मैं नोटिस करता हूं कि जब मेरा केबल प्रदाता समय मानता है, तो यह कुछ सेकंड का है, इसलिए मैं उस पर एनटीपी का उपयोग करता हूं। काम पर यूपीएस मॉनिटर सर्वर के लिए मैं काइल होडसन के लिए एक ही कारण के लिए crontabbed ntpdate का उपयोग करता हूं, क्योंकि यह एक गढ़ मेजबान है मैं नहीं चाहता कि बंदरगाह खुला हो, भले ही मैंने आवेदन को बंद कर दिया हो; उस एप्लिकेशन के सही होने का एक दूसरा कारण नहीं है।

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


1

एक सर्वर पर जहां पहुंच और सख्त होना महत्वपूर्ण है, मैंने तर्क का उपयोग किया है कि xntpd, जिस ntpd के संस्करण पर मैं भरोसा कर रहा था, उसे एक खुला UDP पोर्ट 123 की आवश्यकता थी। जैसा कि मैंने केवल tcp 22 और 80 को खोलने के लिए पसंद किया है, मैंने ntpdate का उपयोग किया है बजाय एक crontab में। मैंने कभी भी इसके लिए एक अच्छा कारण नहीं सुना है कि इसकी आवश्यकता क्यों है, या नहीं कि मुझे याद है।

एक crontab'ed ntpdate कॉल का उपयोग करने के विपक्ष में से एक यह है कि यह प्रभावी ढंग से बहाव सुधार को संभाल नहीं सकता है। ntpdate, iirc, घड़ी को अपडेट करता है जैसे ही यह बता सकता है कि आप पुराने हैं - ntp डेमॉन आमतौर पर धीरे से बहाव को सही करते हैं। इसका यह लाभ है कि आपके लॉग्स को समझदार रखा जाता है - आप उदाहरण के लिए, एक व्यस्त वेब सर्वर पर कल्पना कर सकते हैं, कि अगर RTC कुछ मिनटों के लिए सूख गया, तो अगले दिन वेब लॉग्स पढ़ने से यह अनुमान लग सकता है कि लोग सुरक्षित हिट करने में सक्षम थे इससे पहले कि वे हिट करते हैं, URL URL क्रम से बाहर हो जाएगा।


1

ntpdate एकबारगी अपडेट के लिए अभिप्रेत है, यदि आप नियमित रूप से सिंक्रनाइज़ होने के लिए समय चाहते हैं, तो उस उद्देश्य के लिए सेवा का उपयोग करें, ntpd।

जहाँ तक मैं बता सकता हूँ ntpd का उपयोग न करने का कोई अनिवार्य कारण नहीं है


0

आपको crontab का उपयोग करने की आवश्यकता नहीं है, यही ntpd के लिए है।

प्रारंभ में जब आपका समय समाप्त हो जाता है, तो एक तरीका बस ntpd को रोकना है, फिर ntpdate ntp.server.comइसे सिंक में वापस लाने के लिए चलाएं , फिर ntp को फिर से शुरू करें।

यदि आपके पास एक बड़ा नेटवर्क है, तो मैं शायद स्थानीय ntp सर्वर के कुछ जोड़े रखूँगा, और सभी होस्ट को उनका उपयोग करने के लिए मिलूँगा।


0

"Ntpdate" अभी भी वांछित है और उपयोग में है, यह समझने के लिए इस चर्चा को देखें ।

इसे योग करने के लिए: बड़े पैमाने पर समय समायोजन करते समय, -g विकल्प के साथ भी ntpd तुलना में धीमा है।


-3

घरेलू उपयोग के लिए, ntpdate वास्तव में कोई बिग्गी नहीं है .. एक कारण है कि यह "धीमा" है। कोई भी जो उत्पादन उद्यम वातावरण में ntpdate के साथ क्रोन का उपयोग करता है, वह केवल एक बेवकूफ है।


2
उपयोग हैं। इस तरह के सर्वर के साथ किसी भी तरह के कम से कम खुले पोर्ट की आवश्यकता होती है और +/- 1000ms या तो, cron + ntpdate की समय-रिज़ॉल्यूशन आवश्यकताओं को समय सिंक बनाए रखने के लिए एक पूरी तरह से मान्य तरीका है।
sysadmin1138
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.