حافظ على مزامنة الوقت بين الخوادم دون الاتصال بالإنترنت

StackOverflow https://stackoverflow.com/questions/3121766

  •  30-09-2019
  •  | 
  •  

سؤال

لدي 5 خوادم على شبكة LAN دون اتصال بالإنترنت.أحتاجهم لإبقاء الساعة متزامنة فيما بينهم.

يمكنني تكوينهم كأقران NTP، وتعيين طبقة عالية للساعة المحلية لأحدهم.وبهذه الطريقة، سيتم مزامنة الأربعة الآخرين مع تلك الساعة.

ما أريده بالفعل هو أن يتفقوا على وقت باستخدام جميع الساعات المحلية الخمس (أي الساعة 10:00 مساءً).القيام بنوع من المتوسط) لأسباب تتعلق بالمتانة والدقة.هل من الممكن مع NTP؟

ملاحظة:أفعل لا تريد استخدام مصدر ساعة خارجي.

يحرر:ولا توجد برمجة نصية خارج ميزات NTP، مما قد يؤدي إلى تفاقم الدقة :)

هل كانت مفيدة؟

المحلول

إذا كان لديك في المتوسط ​​5 ساعات منجرفة، فإن الشيء الوحيد الذي ستحصل عليه هو ساعة منجرفة أخرى يصعب تصحيحها.لن يكون الأمر أكثر دقة.يستخدم NTP خوادم متعددة لزيادة الدقة لأنه يأخذ زمن وصول الشبكة في الاعتبار.نظرًا لأن جميع أنظمتك موجودة على شبكة محلية سريعة، فأنت تحتاج فقط إلى خادم واحد.

قم بإعداد نظامين ليكونا خادم NTP، أحدهما أساسي، والآخر احتياطي إذا شعرت بالحاجة إليه.اجعل جميع الأنظمة الأخرى متزامنة معها.سيكون إعداد هذا أسهل بكثير من حل متوسط ​​الساعة، ولن تضطر إلى تطوير أي نصوص برمجية مجنونة.

نصائح أخرى

قد تتمكن من جعل أحدهم يستمع للأوقات من كل جهاز كمبيوتر، ويقوم بإجراء متوسط، وتعيين المتوسط ​​كوقت خاص به، وبث ذلك الوقت لجميع أجهزة الكمبيوتر الأخرى.يبدو الأمر مبالغًا فيه بعض الشيء.

يمكنك إعداد واحد منهم كخادم ntp والذي سيبث وقته على الشبكة المحلية والآخرين كعبيد للاستماع على الشبكة المحلية

يحرر:فاتني الجزء المتوسط.حسنًا، في هذه الحالة، ربما يمكنك كتابة برنامج نصي على الخادم المحلي لجمع الأوقات من جميع العبيد والحصول على المتوسط ​​وتحديث الوقت الخاص بهذه القيمة.قد ترغب أيضًا في التخلص من ntp في هذه الحالة واستخدام البرنامج النصي فقط لتحديث الوقت على كافة الخوادم

أتمنى أن أقدم اقتراحًا محددًا، لكني لا أعرف ما يكفي عن بيئتك.بغض النظر عما ستفعله على الأرجح بنوع من نصوص الكونغ فو.

إذا كان نظام التشغيل Unix/Linux، فسأقوم بإعداد الجميع بمفاتيح SSH المعتمدة لاستطلاع آراء بعضهم البعض date +%s (للحصول على العصر)، قم بمتوسط ​​تلك الأوقات باستخدام awk أو شيء من هذا القبيل، ثم قم بتعيين التاريخ المحلي الخاص بالجهاز.

أو ربما يكون الأمر أكثر أمانًا (وأكثر موثوقية) أن يكون هناك جهاز موثوق به يتحقق من وقت الجميع في نفس المزرعة، ويحسب متوسطه، ثم يزود نفسه وكل مضيف آخر بهذا المتوسط.

على نظام التشغيل Windows، من المحتمل أن تبحث في VBScript وWMI.

يحرر:قد تواجه بعض المشكلات الغريبة إذا تحركت ساعة أي شخص للأمام من المتوسط، وأعتقد أن نصفهم تقريبًا سيفعلون ذلك؛).يمكن أن تكون الطوابع الزمنية المستقبلية غريبة إلى حد ما.سيكون الأمر متروكًا لك لتحديد عدد المرات التي يجب أن تحدث فيها هذه المزامنة.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top