การบูตจากอิมเมจเพียงครั้งเดียวไม่ได้ทำให้ Pi เป็นเครื่องที่สร้างใหม่ได้ สิ่งที่ต้องมีคือชุดอินพุตเล็ก ๆ ที่นำกลับมาใช้ได้: ฐานที่ได้รับการดูแล การกำหนดค่าที่ประกาศไว้ ข้อมูลถาวรของแอปพลิเคชัน และตัวตนของอุปกรณ์ที่เป็นของบอร์ดนั้นเพียงอย่างเดียว หากละเลยสิ่งสุดท้าย การเปลี่ยนทุกครั้งจะกลายเป็นสำเนาของข้อมูลรับรอง

ขั้นตอนด้านล่างเป็นลำดับการทำงาน ไม่ใช่คำแนะนำเครื่องมือ ระบบกำหนดค่าใดก็ได้ที่แสดงออกได้ก็นับว่าใช้ได้

ก่อนอื่นให้ระบุอินพุตสี่ประเภท

อิมเมจฐานและแพ็กเกจของมันกำหนดระบบปฏิบัติการ สถาปัตยกรรม และที่มาของการอัปเดต และตัวสร้างอิมเมจจะช่วยได้ก็ต่อเมื่อเครื่องมือที่มันระบุยังได้รับการดูแลสำหรับรุ่นของคุณ การกำหนดค่าที่ประกาศไว้คือส่วนที่มนุษย์ตรวจทาน: บทบาทเครือข่าย การตั้งค่าบริการ และการดำเนินการตามวงจรชีวิตที่แต่ละบริการต้องใช้ ข้อมูลถาวรของแอปพลิเคชันคือทุกสิ่งที่บริการสร้างใหม่ไม่ได้ และตำแหน่งตลอดจนวิธีการสำรองข้อมูลเป็นของแอปพลิเคชันนั้น ไม่ใช่อิมเมจ ตัวตนของอุปกรณ์และความลับคืออินพุตที่สี่ และเป็นสิ่งที่ผู้คนลืมเมื่อโคลนการ์ดที่ใช้งานได้

เขียนรายการทั้งสี่ก่อนสร้างใหม่สิ่งใด รายการที่มีแถวว่างคือการตัดสินใจที่คุณยังไม่ได้ทำ

เก็บความลับไว้นอกรีโพซิทอรีและบอกว่ามันอยู่ที่ไหน

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

บททดสอบนั้นง่าย: ถ้ารีโพซิทอรีรั่วในวันพรุ่งนี้ ผู้โจมตีจะได้อะไร เทมเพลตและบันทึกโทโพโลยีอยู่รอดได้ ตัวตนที่ใช้งานได้ไม่รอด

ให้ระบบอัตโนมัติเป็นเจ้าของสิ่งที่เรียกใช้ซ้ำได้

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

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

กู้คืนข้อมูลและตัวตนอย่างตั้งใจ

โวลุ่มของคอนเทนเนอร์คงอยู่โดยไม่ขึ้นกับวงจรชีวิตของคอนเทนเนอร์ ขณะที่ชั้นที่เขียนได้ภายในคอนเทนเนอร์ไม่คงอยู่ ดังนั้นการสร้างคอนเทนเนอร์ใหม่จากอิมเมจจึงไม่ได้สร้างสถานะที่แอปพลิเคชันใช้อยู่ขึ้นใหม่ ตามที่เอกสารโวลุ่มอธิบาย บันทึกโวลุ่ม จุดเมานต์ และบริการภายนอกที่เครื่องพึ่งพา และใช้กระบวนการสำรองและกู้คืนของแอปพลิเคชันเอง คอนเทนเนอร์ที่เริ่มทำงานโดยไม่มีข้อผิดพลาดไม่ใช่หลักฐานว่าฐานข้อมูลและไฟล์ของมันสอดคล้องกัน

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

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

อิมเมจที่บูตได้เป็นหนึ่งในสี่อินพุต และเป็นสิ่งที่ทำซ้ำได้ง่ายที่สุด

บทความที่เกี่ยวข้อง