สิ่งที่ต้องพิจารณาเมื่อเรียกใช้เซิร์ฟเวอร์ NTP สาธารณะ


21

ดังนั้นเมื่อไม่นานมานี้เองที่ฉันมีนาฬิกา GPS 3 เรือนในเครือข่ายของฉันฉันสามารถส่งคืนและใช้เวลากับส่วนที่เหลือของโลกได้ในทางเทคนิค จนถึงตอนนี้ฉันยังไม่เห็นข้อเสียของแนวคิดนี้ แต่ฉันมีคำถามต่อไปนี้

  1. ฉันสามารถจำลองสิ่งนี้ได้หรือไม่ ฉันจะไม่ใช้จ่ายเงินและเวลาในการตั้งค่าฮาร์ดแวร์สำหรับสิ่งนี้ดังนั้นการจำลองเสมือนจึงเป็นสิ่งจำเป็น เนื่องจากเซิร์ฟเวอร์จะสามารถเข้าถึงแหล่งข้อมูลสาม stratum 1 ฉันไม่เห็นว่าจะเกิดปัญหาได้อย่างไรหากการกำหนดค่า ntpd ถูกต้อง

  2. ทราฟฟิกประเภทใดที่เซิร์ฟเวอร์ NTP สาธารณะ (ส่วนหนึ่งของ pool.ntp.org) จะเห็นได้ตามปกติ และฉันต้องใช้ VM ขนาดใหญ่เท่าไร ntpd ไม่ควรใช้ทรัพยากรมากจนเกินไป แต่ฉันอยากจะรู้ล่วงหน้า

  3. ประเด็นด้านความปลอดภัยมีอะไรบ้าง ฉันกำลังคิดว่าจะติดตั้ง ntpd บน VMs สองตัวใน DMZ อนุญาตเฉพาะ ntp ผ่าน FW และ ntp ออกจาก DMZ ไปยังเซิร์ฟเวอร์ ntp ภายในเท่านั้น ดูเหมือนว่าจะมีการตั้งค่า ntp บางอย่างที่แนะนำตามหน้าพูล NTP แต่เพียงพอหรือไม่ https://www.ntppool.org/join/configuration.html

  4. พวกเขาไม่แนะนำให้มีการตั้งค่าไดรเวอร์นาฬิกา LOCAL นี่เทียบเท่ากับการลบการกำหนดค่าแหล่งเวลา LOCAL ออกจากไฟล์กำหนดค่าหรือไม่

  5. มีอะไรให้พิจารณาอีกไหม?

คำตอบ:


22

ประการแรกดีสำหรับคุณ มันเป็นสิ่งที่มีประโยชน์และเป็นสาธารณะที่น่าทำ ดังกล่าวและให้คำชี้แจงของคุณว่าคุณวางแผนที่จะสร้าง DMZ VM ตั้งแต่หนึ่งตัวขึ้นไปซึ่งจะซิงค์และทำให้สามารถใช้งานได้แบบสาธารณะจากเซิร์ฟเวอร์ Meatberg-1 stratum-1 (ภายใน) ที่เปิดใช้งาน GPS ของ Meinberg:

  1. แก้ไข : Virtualisation เกิดขึ้นสำหรับการสนทนาในรายการสระว่ายน้ำเป็นครั้งคราว; ล่าสุดคือในเดือนกรกฎาคม 2015 ซึ่งสามารถติดตามได้เริ่มต้นจากอีเมลนี้ ถามBjørn Hansen หัวหน้าโครงการทำโพสต์ไปที่เธรดและไม่พูดกับ virtualisation เห็นได้ชัดว่ามีผู้ให้บริการพูเซิร์ฟเวอร์จำนวนมากกำลังจำลองระบบเสมือนอยู่ในขณะนี้ดังนั้นฉันไม่คิดว่าจะมีใครยิงคุณได้และในขณะที่ผู้โพสต์รายหนึ่งแจ้งให้ชัดเจนหากเซิร์ฟเวอร์ของคุณไม่น่าเชื่อถือ สระ KVM น่าจะเป็นเทคโนโลยี virtualisation ที่ต้องการ ฉันไม่พบใครโดยเฉพาะที่ใช้ VMWare ดังนั้นจึงไม่สามารถแสดงความคิดเห็นเกี่ยวกับวิธีการ "virtualisation" บางทีบทสรุปที่ดีที่สุดในเรื่องกล่าว

    พูลเซิร์ฟเวอร์ของฉันถูกจำลองเสมือนด้วย KVM บนโฮสต์ KVM ของฉันเอง การตรวจสอบกล่าวว่าเซิร์ฟเวอร์นั้นค่อนข้างแม่นยำและให้เวลาที่มั่นคงในช่วง 2-3 ปีที่ผ่านมา แต่ฉันจะไม่ตั้งค่าเซิร์ฟเวอร์พูลบนเซิร์ฟเวอร์เสมือนที่เช่าจากผู้ให้บริการรายอื่น

  2. นี่เป็นจำนวนลูกค้าเฉลี่ยรายวันต่อวินาทีที่ฉันเห็นบนเซิร์ฟเวอร์พูลของฉัน (ซึ่งอยู่ในสหราชอาณาจักรยุโรปและโซนสากล) ในปีที่ผ่านมา:

    ลูกค้านับ ntp

    สิ่งนี้ทำให้แทบจะไม่มีการโหลดระบบที่ตรวจพบได้ ( ntpdดูเหมือนจะใช้ระหว่าง 1% ถึง 2% ของ CPU ส่วนใหญ่แล้ว) โปรดทราบว่าในบางช่วงระหว่างปีโหลดจุดสูงสุดที่ลูกค้าเกือบพันรายต่อวินาที (สูงสุด: 849.27); ฉันทำการตรวจสอบการโหลดที่มากเกินไปและการเตือนไม่ได้ดับทั้งหมดดังนั้นฉันสามารถทราบได้ว่าแม้ระดับการโหลดนั้นจะไม่ทำให้เกิดปัญหา

  3. การกำหนดค่าที่แนะนำโดยโครงการคือแนวปฏิบัติที่ดีที่สุดและใช้ได้กับฉัน ฉันยังใช้iptablesในการ จำกัด อัตราไคลเอนต์สำหรับแพ็คเก็ตขาเข้าสองหน้าต่างในสิบวินาทีที่ผ่านมา (มันน่าประหลาดใจที่มีลูกค้าที่หยาบคายจำนวนมากออกไปที่นั่นซึ่งคิดว่าพวกเขาควรปล่อยระเบิดฟรี

  4. หรือลบบรรทัดใด ๆ 127.127หมายถึงที่อยู่เซิร์ฟเวอร์เริ่มต้นด้วย

  5. แนวทางปฏิบัติที่ดีที่สุดยังแนะนำให้ใช้นาฬิกามากกว่าสามนาฬิกาดังนั้นคุณอาจต้องการเลือกเซิร์ฟเวอร์สาธารณะอื่น ๆ สองสามเครื่องหรือเซิร์ฟเวอร์พูลที่เฉพาะเจาะจงเพิ่มเติมจากเซิร์ฟเวอร์ stratum-1 สามเครื่องของคุณ

    ฉันยังทราบด้วยว่าหากคุณวางแผนที่จะวาง VMs ทั้งสองนี้ลงบนฮาร์ดแวร์โฮสต์เดียวกันคุณควรจะเรียกใช้ แต่เพิ่มแบนด์วิดท์สองเท่าที่ประกาศให้กับกลุ่ม (เช่นยอมรับแบบสอบถามสองเท่าตามที่ต้องการ )


1
การแจกแจงลินุกซ์หลายรายการที่ตั้งไว้เป็นค่าiburstเริ่มต้น ...
Michael Hampton

4
iburstฉันไม่คิดมากเพราะมันใช้ได้เฉพาะเมื่อเซิร์ฟเวอร์ไม่สามารถเข้าถึงได้ burstอย่างไรก็ตามการตั้งค่าเป็นต่อต้านสังคมอย่างจริงจัง
MadHatter สนับสนุน Monica

1
ขอบคุณเพื่อนสิ่งที่ฉันอยากรู้! เพื่อชี้แจงฉันใช้ VMware ภายใต้สิ่งเหล่านี้และเป็นคลัสเตอร์แบบกระจาย นาฬิกาภายในของฉันคือเครื่องใช้ของ Meinberg และพวกเขาพูดว่า NTP อย่างไร้เดียงสา การโหลดดูสมเหตุสมผลมากนาฬิกาภายในของฉันเห็นว่าสองเท่า (แต่แล้วพวกเขาก็อยู่ที่นั่นอีกครั้งเพื่อให้อุปกรณ์ของฉันสามารถต่อต้านสังคมได้ตามที่ต้องการ)
Stuggi

@Stuggi ฉันพยายามชี้แจงคำถาม virtualisation โดยการค้นหารายชื่อผู้ประกอบการสระว่ายน้ำหวังว่าจะมีความช่วยเหลือ อย่าลังเลที่จะยอมรับคำตอบของฉันถ้าคุณคิดว่ามันเป็นคำถามทั้งหมดของคุณ! และขอขอบคุณอีกครั้งสำหรับการเรียกใช้เซิร์ฟเวอร์พูล
MadHatter สนับสนุนโมนิก้า

1
@ MadHatter เพื่อนไชโยที่ล้างมันบางส่วน ฉันต้องจัดการกับปัญหาเวลาจำนวนมากบน VMware มาก่อนและรู้วิธีจัดการกับปัญหาเหล่านั้นฉันแค่กังวลว่าแม้หลังจากปรับแต่งทุกอย่าง VM ก็ยังคงแย่เกินไปที่จะบอกเวลา NTP VMware เป็นไฮเปอร์ไวเซอร์โลหะเปลือย (aka. ไฮเปอร์ไวเซอร์คือระบบปฏิบัติการ) ในขณะที่ KVM (ถ้าฉันจำได้อย่างถูกต้อง) ทำงานบนระบบปฏิบัติการ "ปกติ" ดังนั้นจึงควรใช้งานได้ใน VMware ฉันจะลองดูว่าฉันถูกโยนออกไปจากสระน้ำได้ไหม! :)
Stuggi

12

ประการแรกขอแสดงความยินดีกับคำถาม NTP ที่เป็นเนื้อหาที่ไม่ใช่ใบหน้า :-) ฉันได้รวมกราฟที่ด้านล่างของโพสต์นี้เพื่อให้คุณรู้สึกถึงสิ่งต่างๆ คำถาม VM ถูกตั้งค่าเป็น 100 Mbps ในแผงควบคุมพูลและอยู่ในสหราชอาณาจักรยุโรปและพูลส่วนกลาง

  1. ฉันคิดว่า MadHatter ครอบคลุมเรื่องนี้ดี - ระบบเสมือนจริงควรใช้ได้ อย่างที่คุณพูดถ้าพวกมันกำลังป้อนข้อมูลจากสแตรทรัม 1 ที่เชื่อมต่อกับ GPS ของคุณพวกมันน่าจะสมเหตุสมผล จากประสบการณ์ของฉัน VMs มีแนวโน้มที่จะน่ากลัวกว่าโลหะเปลือยเล็กน้อยในแง่ของความถี่ (ดูกราฟด้านล่าง) แต่นั่นคือสิ่งที่คุณคาดหวัง - พวกเขากำลังจัดการกับเลเยอร์จำลองนาฬิกา (หวังว่ามีประสิทธิภาพค่อนข้างดี) และอาจมีเสียงดัง เพื่อนบ้าน หากคุณไม่ต้องการเห็นความน่ากลัวแบบนั้นบางทีคุณอาจใช้เซิร์ฟเวอร์เก่าหรือเดสก์ท็อปที่ไม่ได้ใช้เป็น DMZ Stratum 2 ของคุณแทน

  2. VM นี้เป็น 1 คอร์, 2 GB RAM, ใช้ Ubuntu 16.04 LTS, เสมือนจริงใน OpenStack (KVM hypervisor) อย่างที่คุณเห็น RAM นั้นอยู่ด้านบนเล็กน้อย

  3. การตั้งค่าที่แนะนำ - รวมถึงการไม่ได้ติดตั้งไดรเวอร์ในเครื่อง - เป็นค่าเริ่มต้นใน Ubuntu 16.04 ฉันทำงานใกล้เคียงกับการกำหนดค่าหุ้นนอกเหนือจากรายการเพียร์

  4. (ดูด้านบน)

  5. ฉันอาจเริ่มแบนด์วิดท์ที่ด้านล่างและเพิ่มแบนด์วิดท์หลังจากที่คุณตรวจสอบแล้วสำหรับบิต หาก VMs ของคุณอยู่ใกล้ ๆ กันและอยู่ใกล้กับ stratum 1s ของคุณในแง่ของเวลาแฝงเครือข่ายฉันอาจให้ VMs ทั้งหมดพูดคุยกับ stratum 1 ทั้งหมดและอาจตรวจดูพวกมันด้วยกันและเปิดโหมดเด็กกำพร้าด้วย

นี่คือกราฟ - พวกมันทั้งหมดครอบคลุมช่วงเวลาเดียวกันประมาณ 3 สัปดาห์ยกเว้นเครือข่ายหนึ่งซึ่งมี spikes สองสามอันเนื่องมาจากการสำรองข้อมูล เมื่อมีเครือข่ายแหลมอยู่ที่นั่นฉันไม่เห็นแม้แต่การรับส่งข้อมูล NTP ปกติดังนั้นฉันจึงซูมเล็กน้อยเพื่อแสดงพื้นหลังตามปกติ

CPU Offset ระบบ ความถี่ เครือข่ายซีพียู หน่วยความจำหน่วยความจำเครือข่ายความถี่ระบบออฟเซ็ต


Ooooh คำตอบที่ดี - +1 จากฉัน!
MadHatter สนับสนุน Monica

1
ขอบคุณเพื่อนที่เป็นประโยชน์จริง ๆ ฉันกำลังใช้เวลาแฝงน้อยกว่า 3 ms ระหว่าง VM และอุปกรณ์ NTP ทางกายภาพซึ่งกระจายทางภูมิศาสตร์ภายใน 50 ไมล์ของโครงสร้างพื้นฐาน VM ดังนั้นฉันคิดว่าฉันจะโอเค!
Stuggi

3

บางสิ่งที่ต้องพิจารณาด้วย NTP

มีคำตอบที่ดีอยู่แล้วที่นี่ ฉันแค่เพิ่มความคิดเล็ก ๆ น้อย ๆ เพื่อความสมบูรณ์ตามประสบการณ์ของตัวเอง

ฉันขอแนะนำให้เปิดใช้งานการบันทึก NTP และกราฟนาฬิกาและการแก้ไขบนโลหะเปลือยเทียบกับ VM เนื่องจากเกี่ยวข้องกับการสนทนานั้นหากเป็นเรื่องที่น่ากังวล ฉันไม่เชื่อว่าสิ่งนี้สามารถทำให้เป็นเรื่องปกติได้ง่าย ๆ เนื่องจากฮาร์ดแวร์และการกำหนดค่าจะแตกต่างกันระหว่างการนำไปใช้งาน มันอาจเป็นการดีที่สุดที่จะรับหมายเลขของคุณเอง

ฉันมักจะแนะนำให้ผู้ใช้เลือกบทบาทระบบของเซิร์ฟเวอร์หรืออุปกรณ์เครือข่ายที่มีเวลา CPU ค่อนข้างคงที่และนั่นไม่ใช่เคอร์เนลที่ไม่มีค่าตอบแทนหรือมีการเปิดใช้งานโหมดประหยัดพลังงาน โดยเฉพาะอย่างยิ่งหลีกเลี่ยง daemons line cpuspeed หรือ govenor speed หรือการประหยัดพลังงานขั้นสูงบนเซิร์ฟเวอร์ NTP แม้ว่าจะเป็น stratum 2 ในฟาร์มของคุณก็ตาม ความมั่นคงบางอย่างสามารถทำได้โดยไม่ลงลึกไปกว่า C-State 1 แต่การใช้พลังงานของคุณจะเพิ่มขึ้น

ฉันยังพยายามที่จะทำให้แน่ใจว่าคนเลือกเซิร์ฟเวอร์ stratum 1 ที่อยู่ห่างจากขอบเครือข่ายของพวกเขาไม่ถึง 40ms จากนั้นแบ่งพวกเขาข้ามเซิร์ฟเวอร์ NTP ของคุณและให้แน่ใจว่าไม่มีเซิร์ฟเวอร์ 2 หลัง SNAT เดียวกันในเครือข่ายของคุณ ไปยังเซิร์ฟเวอร์ stratum 1 เดียวกัน ในบรรทัดเดียวกันburstนั้นมันไม่ฉลาดที่จะมีเซิร์ฟเวอร์หลายหลัง SNAT เดียวกันโดยใช้เซิร์ฟเวอร์ upstream เดียวกันเนื่องจากมันจะปรากฏให้พวกเขาเห็นว่าคุณเปิดใช้งานการส่งข้อมูลต่อเนื่องแม้ว่าคุณจะไม่มี

คุณควรให้เกียรติkodแพ็กเก็ตจากเซิร์ฟเวอร์อัปสตรีมเสมอและมีเครื่องมือตรวจสอบการตรวจสอบเวลาออฟเซ็ตและการเข้าถึงของเซิร์ฟเวอร์อัพสตรีม

คุณอาจต้องการพิจารณาให้มีแหล่งเวลาที่ถูกต้องในศูนย์ข้อมูลสองสามแห่งเพื่อตรวจดูหรือถอยกลับในกรณีที่ไม่น่าเป็นไปได้ที่ GPS SA จะเปิดใช้งานโดยกองทัพ มีเครื่องใช้ไฟฟ้าที่คุ้มค่าโดยเฉพาะสำหรับเรื่องนี้ แม้ว่าคุณจะอยู่ในสภาพแวดล้อม "กรง" และไม่มีศูนย์ข้อมูลของคุณเองสิ่งอำนวยความสะดวกในการโฮสต์บางอย่างอาจรองรับสิ่งนี้


Stuggi ได้กล่าวไปแล้วว่าเครือข่ายดังกล่าวมีนาฬิกา GPS 3 เรือน
Paul Gear

ใช่. ฉันกำลังพูดถึงการใช้นาฬิกาซีเซียมในพื้นที่โดยเฉพาะซึ่งจะไม่ล่องลอยในกรณีที่ไม่น่าจะเป็นที่ GPS ถูกปิดการใช้งาน สิ่งนี้ควรเกิดขึ้นในช่วงเหตุการณ์ทหารขนาดใหญ่ แต่คุณไม่มีทางรู้
แอรอน

2

ดูเอกสารการจับเวลาของ vmware ที่http://www.vmware.com/pdf/vmware_timekeeping.pdf

การใช้ NTP daemon ใน VM อาจไม่ใช่ความคิดที่ดีโดยเฉพาะถ้าคุณต้องการเวลาที่เชื่อถือได้


3
แม้ว่าจะไม่ใช่คำตอบที่ถูกต้อง แต่สิ่งนี้ทำให้เกิดข้อกังวลที่ถูกต้อง Ala "TL; DR: ใช่มีปัญหาเกี่ยวกับ virtualization"
rackandboneman

ฉันตระหนักถึงปัญหาเหล่านั้นที่ต้องได้รับการจัดการฉันคิดว่าถ้าเป็นไปได้
Stuggi

1
Re: "การเรียกใช้ NTP daemon ใน VM อาจไม่ใช่ความคิดที่ดีโดยเฉพาะถ้าคุณต้องการเวลาที่เชื่อถือได้" - ฉันไม่คิดว่ามันจะเป็นจริงสำหรับไฮเปอร์ไวเซอร์สมัยใหม่ เอกสารที่คุณเชื่อมโยงโดยเฉพาะกล่าวว่าการใช้ NTP ใน VM เป็นตัวเลือก กราฟที่ฉันรวมอยู่ในการตอบกลับของฉันแสดงให้เห็นว่า VM สามารถรักษาเวลาที่ดีบน KVM และฉันคาดหวังว่าระบบ ESXi ที่ใหม่กว่าจะทำแบบเดียวกัน
พอลเกียร์

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.