▮▮Coloprice

การย้าย · Runbook

Runbook Cutover

ระลูก migration เดียว ตั้งแต่การ freeze สองสัปดาห์ไปถึงการตรวจสอบย้อนหลัง เวลาด้านล่างถือว่าหน้าต่าง weekend และ migration 10–30 racks; ระลูกที่ใหญ่กว่าจะถูกแยกแทนที่จะขยาย สองอย่างที่ทำให้นี่เป็น runbook ไม่ใช่แผน: ทุกขั้นตอนมีเจ้าของที่ระบุชัด และเกณฑ์ go/no-go ตัดสินใจสัปดาห์ก่อนคืนที่ไม่มีใครคิดได้ชัด

Tเวลาการดำเนินเจ้าของรายละเอียด
T-14dสองสัปดาห์ก่อนอนุมัติการเปลี่ยนแปลง ระลูกล็อกแล้วผู้นำการอพย้ายคำขออนุมัติการเปลี่ยนแปลง เนื้อหาระลูกตรึงแล้ว ทุกอย่างที่ไม่อยู่ในรายการที่ T-14 จะไม่ migrate ในระลูกนี้ — การเพิ่มเติมช่วงท้ายคือวิธีที่ระลูกสะอาดกลายเป็น incident
T-7dหนึ่งสัปดาห์ก่อนTarget ติด rack, ต่อสาย, ให้ power, เข้าถึงได้วิศวกรรมภาคสนามระบบแทนที่หรือระบบรับ ติดตั้งที่เป้าหมาย บนวงจรที่ถูกต้อง พร้อม out-of-band access ที่ได้ทดสอบจากนอกเครือข่ายองค์กร
T-72hวันอังคารDry run การ validation scriptเจ้าของแอปพลิเคชันรัน post-move checks เทียบกับ production estate ปัจจุบัน หากการตรวจสอบล้มเหลวตอนนี้ มันไม่ใช่ migration failure เวลา 2 a.m. วันเสาร์ — มันเป็น broken check
T-48hวันพุธDNS TTL ลดเหลือ 300 วินาทีวิศวกรรมเครือข่ายลดล่วงหน้าเพียงพอ เพื่อให้ resolver ทุกตัวรับ TTL สั้นก่อน cutover
T-24hวันพฤหัสบดีBackup เต็มจำนวนและทดสอบการ restoreทีม Backupยืนยัน restorable แล้ว ไม่ใช่เพียงเสร็จสิ้น Backup ที่ไม่มีใครพยายาม restore คือความเชื่อ ไม่ใช่การควบคุม
T-4hวันศุกร์ 17:00Change freeze เริ่มต้น bridge เปิดผู้นำ Migrationหยุด change ที่ไม่เกี่ยวข้องทั้งหมดทั่วระบบ Bridge call เปิดกับเจ้าของ infrastructure, network, application และทีม on-site
T-0วันศุกร์ 21:00Go / no-go #1ผู้นำ Migration + business sponsorตรวจสอบเกณฑ์ออกเสียง: backup ยืนยันแล้ว target ถึงได้ ทีมครบ ไม่มี P1 ที่อื่น No หนึ่งก็ไม่ได้เลย เลื่อนไปเสียสุดสัปดาห์ แต่ดำเนินการบน no ที่ไม่มั่นใจ เสียไตรมาส
T+0:15วันศุกร์ 21:15Graceful shutdown, delta sync สุดท้ายเจ้าของ applicationหยุด application ตามลำดับ dependency delta replication สุดท้าย flush แล้ว ระบบต้นทาง mark read-only เพื่อไม่ให้มีการเขียนข้อมูลไปยัง site ที่กำลังจะว่าง
T+1:00วันศุกร์ 22:00Decommission จากต้นทาง โหลด ขนส่งวิศวกรรมภาคสนามติดป้ายชื่อ rail และสาย cable เมื่อออกมา ถ่ายรูปด้านหน้าและด้านหลัง cabinet ทั้งหมดก่อนปลดเชื่อมใดๆ — เครื่องมือ rollback ที่เร็วที่สุด
T+4:00วันเสาร์ 01:00รับ ติด rack เคเบิล เปิดระบบวิศวกรรมสนามเปิดระบบจ่ายไฟแบบจัดกลุ่มทีละรอบแทนการเปิดพร้อมกันทั้งหมด เพื่อให้ breaker ที่ tripped สามารถระบุตัวเองได้แทนที่จะทำให้ row ล่มสลาย
T+7:00วันเสาร์ 04:00Go / No-go #2 — นาฬิกา Rollbackผู้นำการโยกย้ายจุดสุดท้ายที่ rollback ยังเป็นไปได้ภายในช่วงเวลาที่ตั้งไว้ หากระบบไม่ได้รับไฟและไม่สามารถเข้าถึงได้ตามเวลาที่กำหนด ให้ทำการ rollback — การตัดสินใจได้ทำไปแล้วที่ T-14 ไม่ใช่ตอนนี้
T+8:00วันเสาร์ 05:00Network Cutover, DNS ชี้ไปยังจุดใหม่วิศวกรรมเครือข่ายRouting เปลี่ยนแปลง, นโยบาย Firewall ถูกเปิดใช้งาน, DNS records ชี้ไปยังจุดใหม่. Monitoring ควรแสดงสีเขียวจากเซิร์ฟเวอร์ใหม่ก่อนที่จะบอกให้ใครรู้ว่ามันทำงานได้
T+10:00วันเสาร์ 07:00ผ่านการตรวจสอบอัตโนมัติเจ้าของ ApplicationScript เดียวกันจาก dry run ใช้กับ target เดี๋ยวนี้ ผ่านหรือไม่ผ่าน ไม่ใช่ความคิดเห็น
T+14:00วันเสาร์ 11:00การตรวจสอบและลงนามอนุมัติทางธุรกิจผู้สนับสนุนทางธุรกิจผู้ใช้ที่ระบุชื่อทำการธุรกรรมจริง ลงนามอนุมัติเป็นลายลักษณ์อักษรสำหรับแต่ละ Application และมันเป็นความรับผิดชอบของเจ้าของแอปพลิเคชันมากกว่า Migration Team
T+24:00วันอาทิตย์ 21:00ปลดเปิด Freeze, Hypercare เริ่มต้นผู้นำการโยกย้ายปลดเปิด Freeze, ให้การสนับสนุนระดับสูงเป็นเวลา 5 วันทำการ และระบบต้นทางรักษาไว้ตามเดิมจนกว่า Hypercare จะปิด
T+7dศุกร์ถัดไปบทวิจารณ์ย้อนหลัง, Runbook อัปเดตผู้นำการโยกย้ายการแก้ไขที่บันทึกในรันบุ๊ก ขณะที่รายละเอียดยังชัดเจน Wave ทุกครั้งในภายหลังจะสืบทอดการแก้ไขเหล่านี้

เกณฑ์ No-go

ตกลงกันในการอนุมัติการเปลี่ยนแปลง อ่านออกมาดังๆ ในแต่ละ go/no-go ครั้ง การละเมิดเกณฑ์ใดเกณฑ์หนึ่งคือการหยุดดำเนินการ ประเด็นของการบันทึกไว้ล่วงหน้าคือ ในเวลา 4 โมงเช้า ข้อโต้แย้งได้รับการแก้ไขแล้ว

  • ไม่ได้ยืนยันว่าสำรองข้อมูลสามารถกู้คืนได้
  • ไซต์เป้าหมายไม่สามารถเข้าถึงได้ผ่าน out-of-band
  • ผู้จัดการที่ระบุชื่อหายไปจาก bridge
  • มี P1 ที่ยังดำเนินอยู่ที่ใดก็ตามในระบบ
  • วงจรของผู้ให้บริการยังไม่ได้รับการยืนยันว่าใช้งานได้
  • เส้นทาง rollback ไม่ได้ทดสอบตั้งแต่การเปลี่ยนแปลงครั้งสุดท้าย

นาฬิกา rollback

Rollback จึงสามารถดำเนินการได้จริงเมื่อมันพอดีกับหน้าต่างเวลาที่เหลือ วัดเวลาในระหว่าง pilot: ใช้เวลานานเท่าใดในการ re-rack, re-cable, เปิดพาวเวอร์ และ re-point DNS ไปยังไซต์ต้นทาง ลบเวลานั้นออกจากจุดสิ้นสุดของหน้าต่างเวลา และคุณจะได้เวลาตัดสินใจที่แน่นอน — go/no-go ครั้งที่สอง ถ้าถึงเวลานั้นโดยไม่มีไซต์เป้าหมายที่เปิดใช้งานและเข้าถึงได้ หมายความว่าต้อง rollback โดยไม่คำนึงถึงความรู้สึกของทีมว่าใกล้เสร็จ ทีมที่ข้ามขั้นตอนนี้ไม่ได้หลีกเลี่ยง rollback; พวกเขาค้นพบในเวลา 7 โมงเช้า ว่าพวกเขาไม่มีตัวเลือก rollback อีกต่อไป

สิ่งที่ควรนำมา

ก่อนรันบุ๊ก มาที่แผน

Cutover จึงเกิดขึ้นได้ดีเมื่อการค้นหา (discovery) เกิดขึ้นได้ดี ทำตามรายการตรวจสอบ migration checklist ก่อน จำลองโปรแกรมด้วย cost calculator และสร้างรายชื่อเป้าหมายจาก facility catalog

ใบเสนอราคาสำหรับไซต์เป้าหมาย

บอกเราขนาด wave และตลาด — เราจะส่งคืนสิ่งอำนวยความสะดวกที่เหมาะสมและราคาเปรียบเทียบ

เราตอบกลับภายในหนึ่งวันทำการ ไม่มีสแปม ไม่ขายข้อมูลติดต่อของคุณ