อัปเกรด
อัปเกรดแพลตฟอร์มเป็นเวอร์ชันใหม่ด้วย awhere upgrade และดูความคืบหน้าที่หน้าระบบ
หน้านี้อธิบายการอัปเกรดแพลตฟอร์มเป็นเวอร์ชันใหม่ด้วย awhere upgrade ถ้าแพลตฟอร์มยังเป็น v4 ให้เริ่มที่อัปเกรดจาก v4
ก่อนอัปเกรด
- อ่านหมายเหตุประจำเวอร์ชันของทุกเวอร์ชันที่อยู่ระหว่างเวอร์ชันปัจจุบันกับเวอร์ชันที่จะอัปเกรดไป
- สำรองฐานข้อมูลทั้งสี่และ env file ของแพลตฟอร์มไว้ ถ้าเวอร์ชันใหม่มี migration แบบ
contractการกู้คืนจากข้อมูลที่สำรองไว้เป็นทางเดียวที่จะย้อนกลับได้ (ย้อนกลับ) - เลือกช่วงที่ไม่มีคนใช้งาน เพราะระหว่างอัปเกรด แต่ละคอนเทนเนอร์จะหยุดให้บริการจนกว่าตัวใหม่จะพร้อม
อัปเกรด
-
รันคำสั่งอัปเกรด พร้อมเลขเวอร์ชันที่ต้องการ
awhere upgrade 5.1.0คำสั่งนี้จะดาวน์โหลดอิมเมจของเวอร์ชันนั้น แล้วรัน Preflight ทุกโหนด ถ้าตรวจไม่ผ่าน ระบบจะยังไม่แก้อะไรเลย ถ้าผ่านทั้งหมด จึงเปลี่ยนคอนเทนเนอร์เป็นตัวใหม่ทีละตัว โดยเริ่มจาก
core-servicesถ้าเวอร์ชันที่เลือกข้ามเวอร์ชันที่ห้ามข้าม คำสั่งจะแจ้งตั้งแต่ก่อนเริ่ม -
ตรวจผล
awhere status
ดูความคืบหน้าที่หน้าระบบ
เปิดหน้า ระบบ ใน Configuration (ระบบ) หน้านี้รีเฟรชเองทุก 10 วินาที
- ข้อความ "โหนดใช้เวอร์ชันไม่ตรงกัน" เป็นเรื่องปกติระหว่างอัปเกรด และจะหายไปเมื่อเปลี่ยนครบทุกโหนด
- migration ที่ขึ้นว่า หยุดชั่วคราว จะทำต่อเองเมื่อโหนดของบริการนั้นเริ่มทำงานอีกครั้ง ส่วนที่ขึ้นว่า ล้มเหลว ระบบจะลองใหม่เอง
- ถ้า migration ขึ้นว่า เสร็จแล้ว แต่มีข้อมูลที่ข้ามไป ต้องมีคนเปิดแถวนั้นดูว่าข้ามอะไรไปบ้าง
ถ้าอัปเกรดค้างกลางทาง
แพลตฟอร์มจะมีคอนเทนเนอร์ทั้งเวอร์ชันเก่าและใหม่ปนกัน แต่ยังไม่เสีย ให้ดูสาเหตุจาก awhere logs <component> แล้วรันคำสั่ง awhere upgrade เดิมซ้ำ หรือจะย้อนกลับด้วย awhere rollback ก็ได้
ระบบบันทึกอะไรไว้
ไฟล์ /etc/awhere/release เก็บเวอร์ชันที่แพลตฟอร์มใช้อยู่ ส่วน /etc/awhere/release.history เก็บประวัติเวอร์ชันที่เคย deploy ซึ่ง awhere rollback ใช้ดูว่าจะย้อนกลับไปเวอร์ชันไหน