การทดสอบการกู้คืนคืออะไร? พร้อมตัวอย่าง
การทดสอบการกู้คืน
การทดสอบการกู้คืน คือเทคนิคการทดสอบซอฟต์แวร์ที่ตรวจสอบความสามารถของซอฟต์แวร์ในการกู้คืนจากความล้มเหลว เช่น ซอฟต์แวร์/ฮาร์ดแวร์ขัดข้อง เครือข่ายล้มเหลว เป็นต้น วัตถุประสงค์ของการทดสอบการกู้คืนคือเพื่อพิจารณาว่าการทำงานของซอฟต์แวร์สามารถดำเนินการต่อได้หรือไม่หลังจากเกิดภัยพิบัติหรือสูญเสียความสมบูรณ์ การทดสอบการกู้คืนเกี่ยวข้องกับการย้อนซอฟต์แวร์กลับไปยังจุดที่ทราบความสมบูรณ์ และประมวลผลธุรกรรมใหม่จนถึงจุดที่ล้มเหลว
ตัวอย่างการทดสอบการกู้คืน
เมื่อแอพพลิเคชั่นได้รับข้อมูลจากเครือข่าย ให้ถอดสายเชื่อมต่อออก
- หลังจากนั้นครู่หนึ่ง ให้เสียบสายเคเบิลกลับเข้าไปใหม่และวิเคราะห์ความสามารถของแอปพลิเคชันในการรับข้อมูลต่อจากจุดที่การเชื่อมต่อเครือข่ายขาดหาย
- รีสตาร์ทระบบในขณะที่เบราว์เซอร์เปิดเซสชันตามจำนวนที่แน่นอน และตรวจสอบว่าเบราว์เซอร์สามารถกู้คืนเซสชันทั้งหมดได้หรือไม่
ในวิศวกรรมซอฟต์แวร์ การทดสอบความสามารถในการกู้คืนเป็นประเภทที่ไม่ การทดสอบสมรรถนะ- (การทดสอบที่ไม่ใช้งานหมายถึงลักษณะของซอฟต์แวร์ที่อาจไม่เกี่ยวข้องกับฟังก์ชันเฉพาะหรือการกระทำของผู้ใช้ เช่น ความสามารถในการขยายขนาดหรือความปลอดภัย)
เวลาที่ใช้ในการฟื้นตัวขึ้นอยู่กับ:
- จำนวนจุดรีสตาร์ท
- ปริมาณการใช้งาน
- การฝึกอบรมและทักษะของผู้ดำเนินกิจกรรมการฟื้นฟูและเครื่องมือสำหรับการฟื้นฟู
เมื่อมีความล้มเหลวหลายครั้ง แทนที่จะดูแลความล้มเหลวทั้งหมด การทดสอบการกู้คืนควรทำในรูปแบบที่มีโครงสร้าง ซึ่งหมายความว่าการทดสอบการกู้คืนควรทำสำหรับส่วนหนึ่งและอีกส่วนหนึ่ง
ดำเนินการโดยผู้ทดสอบมืออาชีพ ก่อนการทดสอบการกู้คืนข้อมูล จะมีการเก็บสำรองข้อมูลที่เพียงพอไว้ในสถานที่ที่ปลอดภัย เพื่อให้แน่ใจว่าสามารถดำเนินการต่อได้แม้จะเกิดภัยพิบัติ
วงจรชีวิตของกระบวนการกู้คืน
วงจรชีวิตของกระบวนการฟื้นฟูสามารถแบ่งออกเป็น 5 ขั้นตอนดังต่อไปนี้:
- ดำเนินการตามปกติ
- การเกิดภัยพิบัติ
- การหยุดชะงักและล้มเหลวของการดำเนินงาน
- การกวาดล้างภัยพิบัติผ่านกระบวนการฟื้นฟู
- การปรับโครงสร้างกระบวนการและข้อมูลทั้งหมดเพื่อให้ระบบทั้งหมดดำเนินไปตามปกติ
เรามาหารือเกี่ยวกับ 5 ขั้นตอนเหล่านี้โดยละเอียด-
- ระบบที่ประกอบด้วยฮาร์ดแวร์ ซอฟต์แวร์ และเฟิร์มแวร์ที่บูรณาการเข้าด้วยกันเพื่อบรรลุเป้าหมายร่วมกัน จะถูกทำให้ทำงานได้เพื่อบรรลุเป้าหมายที่กำหนดไว้อย่างชัดเจน ระบบจะถูกเรียกใช้งานตามปกติเพื่อดำเนินงานที่ออกแบบไว้โดยไม่หยุดชะงักภายในระยะเวลาที่กำหนด
- การหยุดชะงักอาจเกิดขึ้นเนื่องจากการทำงานผิดพลาดของซอฟต์แวร์ เนื่องจากสาเหตุหลายประการ เช่น การทำงานผิดพลาดที่เริ่มต้นของอินพุต ซอฟต์แวร์หยุดทำงานเนื่องจากความล้มเหลวของฮาร์ดแวร์ ความเสียหายเนื่องจากไฟไหม้ การโจรกรรม และการหยุดงาน
- ระยะการหยุดชะงักเป็นระยะที่เจ็บปวดที่สุด ซึ่งนำไปสู่การสูญเสียทางธุรกิจ ความสัมพันธ์ที่ย่ำแย่ การสูญเสียโอกาส การสูญเสียเวลาทำงาน และการสูญเสียทางการเงินและชื่อเสียงทางธุรกิจ หน่วยงานที่ชาญฉลาดทุกแห่งควรมีแผนสำหรับการฟื้นฟูจากภัยพิบัติเพื่อลดระยะการหยุดชะงักให้เหลือน้อยที่สุด
- หากแผนสำรองและกระบวนการลดความเสี่ยงอยู่ในตำแหน่งที่ถูกต้องก่อนที่จะเผชิญกับภัยพิบัติและการหยุดชะงัก การกู้คืนก็สามารถทำได้โดยไม่ต้องเสียเวลา ความพยายาม และพลังงานมากนัก ควรกำหนดบุคคลที่ได้รับมอบหมายพร้อมกับทีมงานที่มีบทบาทที่ได้รับมอบหมายของบุคคลเหล่านี้แต่ละคนเพื่อแก้ไขความรับผิดชอบและช่วยให้องค์กรรอดพ้นจากการหยุดชะงักอันยาวนาน
- การสร้างใหม่อาจต้องมีการดำเนินการหลายเซสชันเพื่อสร้างโฟลเดอร์ทั้งหมดพร้อมไฟล์การกำหนดค่าใหม่ ควรมีเอกสารประกอบและกระบวนการสร้างใหม่ที่เหมาะสมเพื่อการกู้คืนที่ถูกต้อง
กลยุทธ์การฟื้นฟู
ทีมกู้คืนควรมีกลยุทธ์เฉพาะตัวในการกู้รหัสและข้อมูลที่สำคัญเพื่อให้การทำงานของหน่วยงานกลับคืนสู่ภาวะปกติ
กลยุทธ์นี้อาจแตกต่างกันไปในแต่ละองค์กรโดยพิจารณาจากความสำคัญของระบบที่พวกเขาจัดการอยู่
กลยุทธ์ที่เป็นไปได้สำหรับระบบที่สำคัญสามารถมองเห็นได้ดังนี้:
- ให้มีการสำรองข้อมูลเดียวหรือมากกว่าหนึ่ง
- หากต้องการสำรองข้อมูลหลายรายการในที่เดียวหรือต่างกัน
- หากต้องการสำรองข้อมูลออนไลน์หรือสำรองข้อมูลออฟไลน์
- การสำรองข้อมูลสามารถทำได้โดยอัตโนมัติตามนโยบายหรือด้วยตนเองหรือไม่
- เพื่อให้มีทีมงานบูรณะหรือทีมพัฒนาอิสระสามารถนำไปใช้ในการทำงานได้
แต่ละกลยุทธ์เหล่านี้มีปัจจัยด้านต้นทุนที่เกี่ยวข้อง และทรัพยากรจำนวนมากที่จำเป็นสำหรับการสำรองข้อมูลหลายรายการอาจใช้ทรัพยากรทางกายภาพมากกว่าหรืออาจต้องการทีมงานอิสระ
บริษัทหลายแห่งอาจได้รับผลกระทบเนื่องจากการพึ่งพาข้อมูลและโค้ดกับหน่วยงานนักพัฒนาที่เกี่ยวข้อง เช่น ถ้า Amazon AWS ลงไปมันปิด 25 ของอินเทอร์เน็ต การฟื้นฟูโดยอิสระถือเป็นสิ่งสำคัญในกรณีเช่นนี้
วิธีทำการทดสอบการกู้คืน
ขณะดำเนินการทดสอบการกู้คืน ควรพิจารณาสิ่งต่อไปนี้
- เราต้องสร้างเตียงทดสอบให้ใกล้เคียงกับสภาพการใช้งานจริงมากที่สุด การเปลี่ยนแปลงอินเทอร์เฟซ โปรโตคอล เฟิร์มแวร์ ฮาร์ดแวร์ และซอฟต์แวร์ควรใกล้เคียงกับสภาพจริงมากที่สุดหากไม่ใช่สภาวะเดียวกัน
- ผ่านการทดสอบอย่างละเอียดถี่ถ้วนอาจใช้เวลานานและมีค่าใช้จ่ายสูง การกำหนดค่าที่เหมือนกันและการตรวจสอบที่สมบูรณ์ควรดำเนินการ
- หากเป็นไปได้ ควรทำการทดสอบกับฮาร์ดแวร์ที่เราจะกู้คืนในที่สุด โดยเฉพาะอย่างยิ่งหากเรากำลังกู้คืนไปยังเครื่องอื่นที่ไม่ใช่เครื่องที่สร้างการสำรองข้อมูล
- ระบบสำรองข้อมูลบางระบบคาดว่าฮาร์ดไดรฟ์จะมีขนาดเท่ากันทุกประการกับขนาดที่สำรองข้อมูลมา
- ความล้าสมัยควรได้รับการจัดการเนื่องจากเทคโนโลยีไดรฟ์กำลังก้าวหน้าอย่างรวดเร็ว และไดรฟ์เก่าอาจเข้ากันไม่ได้กับเทคโนโลยีใหม่ วิธีหนึ่งในการจัดการปัญหาคือการคืนค่าเป็น เครื่องเสมือน- ผู้จำหน่ายซอฟต์แวร์การจำลองเสมือน เช่น VMware Inc. สามารถกำหนดค่าเครื่องเสมือนเพื่อเลียนแบบฮาร์ดแวร์ที่มีอยู่ รวมถึงขนาดดิสก์และการกำหนดค่าอื่นๆ
- ระบบสำรองข้อมูลออนไลน์ไม่ใช่ข้อยกเว้นสำหรับการทดสอบ ผู้ให้บริการสำรองข้อมูลออนไลน์ส่วนใหญ่ปกป้องเราไม่ให้ประสบปัญหาสื่อโดยตรงโดยวิธีที่พวกเขาใช้ระบบจัดเก็บข้อมูลที่ทนทานต่อข้อผิดพลาด
- แม้ว่าระบบสำรองข้อมูลออนไลน์จะมีความน่าเชื่อถืออย่างยิ่ง แต่เราต้องทดสอบด้านการกู้คืนของระบบเพื่อให้แน่ใจว่าไม่มีปัญหากับฟังก์ชันการดึงข้อมูล ความปลอดภัย หรือการเข้ารหัส
ขั้นตอนการทดสอบหลังการบูรณะ
องค์กรขนาดใหญ่ส่วนใหญ่มีผู้ตรวจสอบอิสระเพื่อทำการทดสอบการฟื้นตัวเป็นระยะ
ค่าใช้จ่ายในการบำรุงรักษาและทดสอบแผนการกู้คืนความเสียหายที่ครอบคลุมอาจมีจำนวนมาก และอาจเป็นสิ่งต้องห้ามสำหรับธุรกิจขนาดเล็ก
ความเสี่ยงที่น้อยกว่าอาจขึ้นอยู่กับการสำรองข้อมูลและแผนการจัดเก็บข้อมูลนอกสถานที่เพื่อบันทึกไว้ในกรณีที่เกิดภัยพิบัติ
หลังจากคืนค่าโฟลเดอร์และไฟล์แล้ว สามารถทำการตรวจสอบต่อไปนี้เพื่อให้แน่ใจว่าไฟล์ได้รับการกู้คืนอย่างถูกต้อง:
- เปลี่ยนชื่อโฟลเดอร์เอกสารที่เสียหาย
- นับไฟล์ในโฟลเดอร์ที่กู้คืนและจับคู่กับโฟลเดอร์ที่มีอยู่
- เปิดไฟล์บางไฟล์และตรวจสอบให้แน่ใจว่าสามารถเข้าถึงได้ อย่าลืมเปิดด้วยแอปพลิเคชันที่ปกติใช้งาน และตรวจสอบให้แน่ใจว่าคุณสามารถเรียกดูข้อมูล อัปเดตข้อมูล หรือสิ่งที่คุณทำตามปกติได้
- ทางที่ดีควรเปิดไฟล์หลายประเภท รูปภาพ mp3 เอกสาร และบางไฟล์ใหญ่และเล็ก
- ส่วนมาก ระบบปฏิบัติการ มียูทิลิตี้ที่คุณสามารถใช้เพื่อเปรียบเทียบไฟล์และไดเร็กทอรี
สรุป
ในบทช่วยสอนนี้ เราได้เรียนรู้แง่มุมต่างๆ ของการทดสอบการกู้คืนซึ่งช่วยให้เข้าใจว่าระบบหรือโปรแกรมตรงตามข้อกำหนดหลังจากเกิดความล้มเหลวหรือไม่