استخدام کارشناس سرور (مشکل در تنظیم ساعت سرور با سرویس ntp)
سلام دوستان،
من یک VPS خریدم از ایران، تا یک اسکریپت php رو در زمان کاملاً مشخصی و در هر روز اجرا کنم. دقت اجرای این اسکریپت به حدی هست که می بایست با دقتی در حدود 0.01 ثانیه اجرا بشه.
برای اینکار از سرویس ntp استفاده کردیم، اما مشکل اساسی این هست که این سرویس به درستی ران نمیشه و بعد از اینکه یک روز میگذره، ساعت سرور در حدود 6 تا 15 ثانیه عقب میزنه و این باعث میشه که عملاً کار ما با مشکل مواجه بشه.
کاری که ما تا الان انجام دادیم و تایم سرور رو با سرور های زیر (که مد نظر ماست) تنظیم می کردیم:
سرور های فایل کانفیگ ntp:
server ntp1.hetzner.de iburst
server ntp2.hetzner.com iburst
server ntp3.hetzner.net iburst
دستور
ntpdate ntp1.hetzner.de
پاسخ زیر را می دهد:
no server suitable for synchronization found
و با سوییچ u (پشتیانی سایت بعد از چند روز که نفهمیدم مشکل چیه، عنوان کرده که دستور فقط با این سوییچ انجام میشه) ساعت رو با اختلاف زمانی حدود 0.1 ثانیه تنظیم می کنه (offset=0.1).
دستور ntpstat پاسخ زیر رو میده:
unsynchronised
time server re-starting
polling server every 8 s
اما مشکل اصلی عقب زدن ساعت هست که اگر الان سرور سینک بشه، فردا 15 ثانیه عقب می زنه.
پشتیبانی سرور بعد از چند روز بررسی مشکل پاسخ زیر رو داده:
«با بررسی های بعمل آمده، نگهداشتن offset زیر 0.01 ثانیه در سرورهای مجازی دشوار و شاید غیر عملی است
مجازی سازی انجام شده از نوع kvm است و در این مجازی سازی سرورهای guest از timesource نوع kvm-clock استفاده می کنند، که با یک ntp server که در سرور اصلی مرکزی قرار دارد تنظیم می گردد
و این مورد بدلیل intrruptهای متعددی که برای سروراصلی رخ میدهند و همچنین پروسسهای ntp فعال مختلفی که در سرورهای مجازی دیگر فعال هستند، این offset ایجاد شده تقریبا اجتناب ناپذیر است
ولی در صورتی که تمایل داشته باشید می توانید هر 5 دقیقه ntpdate را آپدیت کنید که البته با توجه به مطالعات انجام شده؛ توصیه نمی شود»
البته ما یک VPS دیگه خریداری کردیم و کارهایی که قبلاً روی سرور قبلی انجام دادیم، روی این سرور هم انجام دادیم و مشکل روی سرور جدید وجود نداره، بنابراین بر خلاف نظر پشتیبانی سرور، تنظیم نگهداشتن ساعت سرور کاملاً عملی هست.
خواهش دارم از دوستانی که توانایی بالایی در لینوکس و دستورات SSH دارن، محبت کنند و یک بررسی روی سرور ما داشته باشند، در صورتی که موفق به حل مشکل بشن، حق الزحمه کارشون رو دریافت خواهند کرد.
تشکر