สมมติว่าฉันซื้อ Intel Xeon สองตัวและติดตั้งลงในฮาร์ดแวร์ระดับเซิร์ฟเวอร์ ... หาก CPU ตัวใดตัวหนึ่งล้มเหลวตัวอื่น ๆ ก็ยังใช้งานได้และหยิบสายหย่อน
สิ่งนี้ดูเหมือนจะไม่น่าเป็นไปได้ แต่ฉันคิดว่าฉันจะถามแทนที่จะทำข้อสันนิษฐาน
สมมติว่าฉันซื้อ Intel Xeon สองตัวและติดตั้งลงในฮาร์ดแวร์ระดับเซิร์ฟเวอร์ ... หาก CPU ตัวใดตัวหนึ่งล้มเหลวตัวอื่น ๆ ก็ยังใช้งานได้และหยิบสายหย่อน
สิ่งนี้ดูเหมือนจะไม่น่าเป็นไปได้ แต่ฉันคิดว่าฉันจะถามแทนที่จะทำข้อสันนิษฐาน
คำตอบ:
ในระบบซ็อกเก็ตดูอัลซ็อกเก็ตปกติไม่มีแม้ว่าจะมีเซิร์ฟเวอร์ที่อนุญาตการสลับหน่วยประมวลผลและ RAM ดังนั้นสิ่งเหล่านี้ทำอยู่ แต่พวกเขากำลังที่มากระดับ high-end ของตลาด
ไม่ใช่ทุกอย่างในเซิร์ฟเวอร์ของคุณที่ล้มเหลวตัวประมวลผลอยู่ด้านล่างของรายการถัดจากตัวยกทองเหลืองตัวเล็ก ๆ ที่ยึดมาเธอร์บอร์ดไว้นอกแชสซี
พูดคุยเกี่ยวกับฮาร์ดแวร์สินค้าโภคภัณฑ์ x86 หากระบบทำงานและ CPU ล้มเหลวทุกสิ่งจะหยุดชะงักตามปกติ อย่างไรก็ตามระบบจะทำงานได้ดีหลังจากรีบูตถึงแม้ว่าจะค่อนข้างช้า
ซีพียูหลายตัวนั้นส่วนใหญ่จะมีการประมวลผลแบบขนานไม่ใช่เพื่อความผิดปกติ แต่มันก็ดีที่มีระบบที่ยังคงบู๊ต CPU (หรือมากกว่า) ที่ล้มเหลว
ฉันจะบอกว่ามันเป็นไปได้มากที่ CPU ของคุณจะล้มเหลวกว่าที่ Mark Henderson แนะนำ แต่ก็ยังไม่น่าเป็นไปได้ จากประสบการณ์ของฉันส่วนใหญ่มันเกิดขึ้นเมื่อระบบมีความร้อนสูงเกินไปและปิดตัวเองบ่อยครั้ง (มันค่อนข้างง่ายในห้องเซิร์ฟเวอร์สำนักงานที่มีสภาพอากาศไม่ดี) ซีพียูมักไม่ค่อยชอบสิ่งนั้นมากนัก
แน่นอนถ้าคุณมีเมนเฟรมของไอบีเอ็มที่ดีหรือคล้าย ๆ กันการเปลี่ยนซีพียูที่ร้อนแรงนั้นเป็นเรื่องง่าย
หาก CPU ล้มเหลว - ซึ่งไม่น่าเป็นไปได้อย่างยิ่งสำหรับคำตอบอื่น ๆ - ไม่มีสิ่งใดที่ระบบสามารถกู้คืนได้ ขึ้นอยู่กับวิธีที่ล้มเหลวมันอาจทำให้หน่วยความจำเสียหายในรูปแบบแปลก ๆ หรือทำลายตารางกระบวนการหรือใครจะรู้อะไรอีก หากคุณต้องมีระบบการตรวจสอบที่ใช้งานอยู่ซึ่งคอยดูแลแท็บบนซีพียูเพื่อให้แน่ใจว่ามันทำงานได้ดี (และสามารถพูดย้อนกลับการเปลี่ยนแปลงใด ๆ ที่เกิดจากซีพียูในระหว่างช่วงเวลามรณะ) ซึ่งจะเป็นระบบอื่น ที่สามารถล้มเหลวและการพิจารณาความล้มเหลวของซอฟต์แวร์โดยทางโปรแกรมนั้นค่อนข้างยาก (โดยทั่วไปวิธีเดียวที่คุณสามารถทำได้คือให้ CPU อื่นทำสิ่งเดียวกันในเวลาเดียวกันและเปรียบเทียบผลลัพธ์ - ซึ่งจะทำให้สิ่งต่าง ๆ ช้าลง ลงเช่นนั้นมี
ที่กล่าวไว้ว่าหายากเหมือนความล้มเหลวของ CPU คือการเพิ่มจำนวน CPU ในระบบจริง ๆ แล้วจะทำให้อัตราความล้มเหลวของคุณเพิ่มขึ้นตามที่คุณมีหลาย ๆ สิ่งที่สามารถล้มเหลวได้ คุณยังมีระบบย่อยอื่น ๆ ที่สามารถล้มเหลวได้เช่นระบบที่เก็บแคชของ CPU ให้ตรงกันและการเพิ่มขึ้นของการใช้พลังงานและการระบายความร้อนก็มีส่วนทำให้ปัจจัยเบื้องหลังความล้มเหลวของระบบโดยรวม (และแน่นอนพัดลมระบายความร้อนที่ใช้งานอยู่ จุดความล้มเหลว)
คุณจะต้องกำหนดประเภทของความล้มเหลวที่คุณต้องการจัดการ หากเราพิจารณาคอลเลกชันของคอร์ / ซีพียู / คอมพิวเตอร์ที่ทำงานร่วมกันเป็นเครือข่ายความล้มเหลวประเภทหนึ่งคือโหนดจะหยุดตอบรับ ความล้มเหลวที่รุนแรงมากขึ้นคือเมื่อโหนดเริ่มข้อมูลเสียหายและส่งข้อมูลที่ผิดพลาดไปยังผู้อื่น สิ่งนี้เรียกว่าความล้มเหลวของไบแซนไทน์และในกรณีที่เลวร้ายที่สุดมันขัดขวางการทำงานของเครือข่ายผ่าน "การโกหก" เชิงกลยุทธ์ มันค่อนข้างง่ายที่จะแสดงว่าไม่มีระบบใดสามารถจัดการกับโหนดที่สามหรือมากกว่านั้นไปยัง Byzantine
สิ่งที่คุณต้องทำคือการตัดสินใจว่าความล้มเหลวแบบใดที่คุณคาดหวังและออกแบบระบบของคุณโดยคำนึงถึงสิ่งนั้นและยอมรับความจริงที่ว่าปัญหาในการจัดการกับจำนวนโหนดที่ประสงค์ร้ายนั้นไม่สามารถแก้ไขได้ ในกรณีของคุณคุณต้องการซีพียูอย่างน้อยสี่ตัวหากมีข้อผิดพลาดเกิดขึ้น
ในหมายเหตุด้าน: ในควอนตัมฟิสิกส์ไม่มีความเป็นไปไม่ได้ แต่ถ้าต้องรอนานกว่าอายุของเอกภพเพื่อสถิติมีโอกาสสังเกตพฤติกรรมบางอย่างเราไม่ต้องบอกว่าเป็นไปได้ พึงระลึกไว้เสมอว่าเมื่อคุณออกแบบระบบของคุณ ;)
ความล้มเหลวของ CPU นั้นอาจหายาก ความล้มเหลวอาจส่งผลให้เกิดปัญหาอื่น ๆ ในระดับระบบปฏิบัติการ ฉันจะไม่คิดว่านี่เป็นรูปแบบใดของการยอมรับความผิด
ในขณะที่คำตอบอื่น ๆ นั้นหายากมากที่ CPU ทำงานล้มเหลวและในเซิร์ฟเวอร์โดยเฉลี่ยคุณไม่สามารถทำ hot swap ได้สิ่งที่คุณสามารถทำได้คือปล่อยให้เซิร์ฟเวอร์มี CPU หนึ่งตัวจนกว่าจะแทนที่อันที่ล้มเหลวแน่นอน ขั้นตอนทั้งหมดออฟไลน์และคุณต้องหยุดเซิร์ฟเวอร์