หากพบข้อผิดพลาดระหว่างการอัปเดตเป็น Edge 4.53.00 คุณสามารถเปลี่ยนคอมโพเนนต์ที่ทำให้เกิดข้อผิดพลาดกลับเป็นเวอร์ชันก่อนหน้า แล้วลองอัปเดตอีกครั้ง
คุณย้อนกลับ Edge 4.53.00 ไปยังเวอร์ชันย่อยต่อไปนี้ได้
- เวอร์ชัน 4.52.02
การย้อนกลับเวอร์ชันจะเกี่ยวข้องกับการย้อนกลับคอมโพเนนต์ทั้งหมดที่คุณอาจอัปเกรด นอกจากนี้ คุณควรพิจารณาเป็นพิเศษเมื่อเปลี่ยนกลับ Cassandra เป็นเวอร์ชัน 4.52.02
คุณอาจต้องการทำการย้อนกลับใน 2 สถานการณ์ต่อไปนี้
- เปลี่ยนกลับไปเป็นรุ่นหลักหรือรุ่นย่อยก่อนหน้า เช่น จาก 4.53.00 เป็น 4.52.02
- เปลี่ยนกลับไปใช้แพตช์รุ่นก่อนหน้าในรุ่นเดียวกัน เช่น จาก 4.53.00.01 ถึง 4.53.00.00
ดูข้อมูลเพิ่มเติมได้ที่กระบวนการเผยแพร่ Apigee Edge
ลำดับของการย้อนกลับ
การย้อนกลับคอมโพเนนต์ควรทําตามลําดับย้อนกลับจากการอัปเกรด ยกเว้นการย้อนกลับเซิร์ฟเวอร์การจัดการหลัง Cassandra
ลำดับทั่วไปของการย้อนกลับสำหรับ Private Cloud 4.53.00 จะมีลักษณะดังต่อไปนี้
- เปลี่ยน Postgres, Qpid และคอมโพเนนต์อื่นๆ ที่เกี่ยวข้องกับข้อมูลวิเคราะห์กลับ
- ย้อนกลับเราเตอร์และ Message Processor
- ย้อนกลับ Cassandra, Zookeeper
- เซิร์ฟเวอร์การจัดการการย้อนกลับ
ตัวอย่างเช่น สมมติว่าคุณได้อัปเกรดคลัสเตอร์ Cassandra ทั้งหมด เซิร์ฟเวอร์การจัดการทั้งหมด และ RMP 2-3 ตัวเป็นเวอร์ชัน 4.53.00 จากเวอร์ชัน 4.52.02 และต้องการย้อนกลับ ในกรณีนี้ คุณจะต้องดำเนินการดังนี้
- เปลี่ยน RMP ทั้งหมดกลับทีละรายการ
- เปลี่ยนคลัสเตอร์ Cassandra ทั้งหมดกลับโดยใช้ข้อมูลสํารอง
- เปลี่ยนกลับโหนดเซิร์ฟเวอร์การจัดการ Edge ทีละโหนด
ผู้ที่สามารถดำเนินการย้อนกลับได้
ผู้ใช้ที่ทำการย้อนกลับควรเป็นผู้ใช้เดียวกับที่อัปเดต Edge ไว้ตั้งแต่แรก หรือผู้ใช้ที่เรียกใช้ในฐานะรูท
โดยค่าเริ่มต้น คอมโพเนนต์ Edge จะทํางานในฐานะผู้ใช้ "apigee" ในบางกรณี คุณอาจใช้งานคอมโพเนนต์ Edge ในฐานะผู้ใช้คนละราย เช่น หากเราเตอร์ต้องเข้าถึงพอร์ตที่มีสิทธิ์ เช่น พอร์ตที่ต่ำกว่า 1000 คุณจะต้องเรียกใช้เราเตอร์ในฐานะรูทหรือในฐานะผู้ใช้ที่มีสิทธิ์เข้าถึงพอร์ตเหล่านั้น หรืออาจเรียกใช้คอมโพเนนต์หนึ่งในฐานะผู้ใช้รายหนึ่ง และเรียกใช้คอมโพเนนต์อื่นในฐานะผู้ใช้รายอื่น
คอมโพเนนต์ที่มีโค้ดทั่วไป
คอมโพเนนต์ Edge ต่อไปนี้ใช้โค้ดร่วมกัน ดังนั้น หากต้องการเปลี่ยนคอมโพเนนต์ใดคอมโพเนนต์หนึ่งเหล่านี้ในโหนด คุณจะต้องเปลี่ยนคอมโพเนนต์ทั้งหมดเหล่านี้ในโหนดนั้น
edge-management-server
(เซิร์ฟเวอร์การจัดการ)edge-message-processor
(Message Processor)edge-router
(เราเตอร์)edge-postgres-server
(เซิร์ฟเวอร์ Postgres)edge-qpid-server
(เซิร์ฟเวอร์ Qpid)
เช่น หากคุณติดตั้งเซิร์ฟเวอร์การจัดการ รูทเตอร์ และโปรแกรมประมวลผลข้อความในโหนด หากต้องการเปลี่ยนกลับรายการใดรายการหนึ่ง คุณต้องเปลี่ยนกลับทั้ง 3 รายการ
การย้อนกลับของ Cassandra
เมื่อทำการอัปเกรด Cassandra ครั้งใหญ่บนโหนดหนึ่งๆ Cassandra จะแก้ไขสคีมาของข้อมูลที่จัดเก็บไว้ในโหนดนั้น ด้วยเหตุนี้ การย้อนกลับในตำแหน่งเดิมโดยตรงจึงดำเนินการไม่ได้
สถานการณ์การย้อนกลับ
Cassandra 4.0.X ซึ่งพร้อมใช้งานใน Edge for Private Cloud 4.53.00 เข้ากันได้กับคอมโพเนนต์อื่นๆ ของ Private Cloud 4.52.02
โปรดดูสรุปกลยุทธ์การย้อนกลับต่างๆ ที่คุณใช้ได้ในตารางด้านล่าง
สถานการณ์ | กลยุทธ์การย้อนกลับ |
---|---|
DC เดียว อัปเกรดโหนด Cassandra บางโหนดแล้ว | ใช้ข้อมูลสํารอง |
DC เดียว อัปเกรดโหนด Cassandra ทั้งหมดแล้ว | อย่าย้อนกลับ Cassandra แต่สามารถเปลี่ยนกลับคอมโพเนนต์อื่นๆ ได้ |
DC เดียว อัปเกรดโหนดทั้งหมด (Cassandra และอื่นๆ) แล้ว | อย่าย้อนกลับ Cassandra แต่สามารถเปลี่ยนกลับคอมโพเนนต์อื่นๆ ได้ |
มีการอัปเกรด DC หลายแห่ง แต่โหนดบางโหนดใน DC เดียว | สร้างใหม่จาก DC ที่มีอยู่ |
ดีซีหลายแห่ง อัปเกรดโหนด Cassandra ทั้งหมดในบางดีซีแล้ว | สร้างใหม่จาก DC ที่มีอยู่ |
มีการอัปเกรดโหนด Cassandra ของ DC หลายแห่งใน DC ล่าสุด | ลองอัปเกรดให้เสร็จ หากดำเนินการไม่ได้ ให้เปลี่ยน DC 1 เครื่องกลับโดยใช้ข้อมูลสํารอง สร้าง DC ที่เหลือใหม่จาก DC ที่ย้อนกลับ |
DC หลายแห่ง อัปเกรดโหนด Cassandra ทั้งหมดแล้ว | อย่าย้อนกลับ Cassandra แต่สามารถเปลี่ยนกลับคอมโพเนนต์อื่นๆ ได้ |
ดีซีหลายแห่ง อัปเกรดโหนดทั้งหมด (Cassandra และอื่นๆ) แล้ว | อย่าย้อนกลับ Cassandra แต่สามารถเปลี่ยนกลับคอมโพเนนต์อื่นๆ ได้ |
ข้อควรพิจารณาทั่วไป
โปรดคำนึงถึงสิ่งต่อไปนี้เมื่อพิจารณาการย้อนกลับ
- การย้อนกลับคอมโพเนนต์รันไทม์หรือการจัดการ: หากต้องการย้อนกลับคอมโพเนนต์ เช่น edge-management-server, edge-message-processor หรือคอมโพเนนต์ที่ไม่ใช่ Cassandra ไปยังเวอร์ชัน 4.52.02 ของ Private Cloud เราขอแนะนำให้คุณอย่าย้อนกลับ Cassandra Cassandra ที่มาพร้อมกับ Private Cloud 4.53.00 เข้ากันได้กับคอมโพเนนต์ที่ไม่ใช่ Cassandra ทั้งหมดของ Edge สำหรับ Private Cloud 4.52.02 คุณย้อนกลับคอมโพเนนต์ที่ไม่ใช่ Cassandra ได้โดยใช้วิธีการที่ระบุไว้ที่นี่ขณะที่ Cassandra ยังใช้เวอร์ชัน 4.0.13
- การย้อนกลับหลังจากคลัสเตอร์ Cassandra ทั้งหมดได้รับการอัปเกรดเป็น 4.0.X: หากคลัสเตอร์ Cassandra ทั้งหมดได้รับการอัปเกรดเป็นเวอร์ชัน 4.0.X เป็นส่วนหนึ่งของการอัปเกรดเป็น Private Cloud เวอร์ชัน 4.53.00 เราขอแนะนำให้คุณตั้งค่าคลัสเตอร์นี้ต่อและอย่าย้อนกลับ Cassandra คอมโพเนนต์ต่างๆ เช่น edge-management-server, edge-message-processor, edge-router ฯลฯ ของ Private Cloud เวอร์ชัน 4.52.02 ใช้งานร่วมกับ Cassandra เวอร์ชัน 4.0.X ได้
- การย้อนกลับ Cassandra ระหว่างการอัปเกรด Cassandra: หากพบปัญหาระหว่างการอัปเกรด Cassandra คุณอาจต้องพิจารณาการย้อนกลับ คุณสามารถทำตามกลยุทธ์การย้อนกลับที่ระบุไว้ในบทความนี้ตามสถานะที่คุณอยู่ในกระบวนการอัปเกรด
- การย้อนกลับโดยใช้ข้อมูลสํารอง: ข้อมูลสํารองที่มาจาก Cassandra 4.0.X ใช้งานร่วมกับข้อมูลสํารองของ Cassandra 3.11.X ไม่ได้ หากต้องการเปลี่ยนกลับ Cassandra โดยใช้การกู้คืนข้อมูลสํารอง คุณต้องสํารองข้อมูล Cassandra 3.11.X ก่อนพยายามอัปเกรด
ย้อนกลับ Cassandra โดยใช้การสร้างใหม่
ข้อกำหนดเบื้องต้น
- คุณกำลังใช้งานคลัสเตอร์ Edge for Private Cloud 4.52.02 ในศูนย์ข้อมูลหลายแห่ง
- คุณกำลังดำเนินการอัปเกรด Cassandra จาก 3.11.X เป็น 4.0.X และพบปัญหาระหว่างการอัปเกรด
- คุณมีศูนย์ข้อมูลที่ใช้งานได้อย่างสมบูรณ์อย่างน้อย 1 แห่งในคลัสเตอร์ที่ยังคงใช้ Cassandra เวอร์ชันเก่า (Cassandra 3.11.X)
ขั้นตอนนี้อาศัยการสตรีมข้อมูลจากศูนย์ข้อมูลที่มีอยู่ การดำเนินการนี้อาจใช้เวลานานพอสมควร โดยขึ้นอยู่กับปริมาณข้อมูลที่จัดเก็บไว้ใน Cassandra คุณควรเตรียมพร้อมที่จะเปลี่ยนเส้นทางการเข้าชมรันไทม์ออกจากศูนย์ข้อมูลนี้ขณะที่การย้อนกลับกำลังดำเนินอยู่
ขั้นตอนระดับสูง
- เลือกศูนย์ข้อมูล 1 แห่ง (อัปเกรดบางส่วนหรือทั้งหมด) ที่ต้องการเปลี่ยนกลับ เปลี่ยนเส้นทางการรับส่งข้อมูลรันไทม์ไปยังศูนย์ข้อมูลอื่นที่ใช้งานได้
- ระบุโหนดต้นทางในศูนย์ข้อมูล แล้วเริ่มด้วยโหนดต้นทางรายการใดรายการหนึ่ง
- หยุด ถอนการติดตั้ง และล้างข้อมูลโหนด Cassandra
- ติดตั้ง Cassandra เวอร์ชันเก่าในโหนดและกำหนดค่าตามต้องการ
- นําการกําหนดค่าเพิ่มเติมที่เพิ่มไว้ก่อนหน้านี้ออก
- ทำตามขั้นตอนข้างต้นซ้ำสำหรับโหนดต้นทางทั้งหมดในศูนย์ข้อมูลทีละโหนด
- ทำขั้นตอนข้างต้นซ้ำสำหรับโหนด Cassandra ที่เหลือทั้งหมดในศูนย์ข้อมูลทีละโหนด
- สร้างโหนดใหม่จากศูนย์ข้อมูลที่ใช้งานได้ที่มีอยู่ทีละโหนด
- รีสตาร์ทคอมโพเนนต์ edge-* ทั้งหมดในศูนย์ข้อมูลที่เชื่อมต่อกับ Cassandra
- ทดสอบและเปลี่ยนเส้นทางการเข้าชมกลับไปที่ศูนย์ข้อมูลนี้
- ทำตามขั้นตอนข้างต้นซ้ำสำหรับศูนย์ข้อมูลแต่ละแห่งทีละแห่ง
ขั้นตอนโดยละเอียด
-
เลือกศูนย์ข้อมูล 1 แห่งที่จะอัปเกรดโหนด Cassandra ทั้งหมดหรือบางส่วน เปลี่ยนเส้นทางการรับส่งข้อมูลพร็อกซีรันไทม์และการรับส่งข้อมูลการจัดการทั้งหมดจากศูนย์ข้อมูลนี้ขณะที่ระบบกำลังเปลี่ยนกลับโหนด Cassandra ในศูนย์ข้อมูลนี้
ตรวจสอบว่าโหนด Cassandra ทั้งหมดอยู่ในสถานะ UN (ทำงาน/ปกติ) เมื่อมีการเรียกใช้คําสั่ง
nodetool ring
ในโหนด หากโหนดบางโหนดไม่ทำงาน ให้แก้ปัญหาและทำให้โหนดเหล่านั้นกลับมาทำงานอีกครั้งก่อนดำเนินการต่อดูตัวอย่างด้านล่าง
/opt/apigee/apigee-cassandra/bin/nodetool status
Datacenter: dc-1 ================ Status=Up/Down |/ State=Normal/Leaving/Joining/Moving -- Address Load Tokens Owns (effective) Host ID Rack UN DC1-1IP1 456.41 KiB 1 100.0% 78fc4ddd-2ed9-4a8c-98a2-63a38c2f1920 ra-1 UN DC1-1IP2 870.93 KiB 1 100.0% 160db01a-64ab-43a7-b9ea-3b7f8f66d52b ra-1 UN DC1-1IP3 824.08 KiB 1 100.0% 21d61543-d59e-403a-bf5d-bfe7f664baa6 ra-1 Datacenter: dc-2 ================ Status=Up/Down |/ State=Normal/Leaving/Joining/Moving -- Address Load Tokens Owns (effective) Host ID Rack UN DC2-1IP1 802.08 KiB 1 100.0% 583e0576-336d-4ce7-9729-2ae74e0abde2 ra-1 UN DC2-1IP2 844.4 KiB 1 100.0% fef794d5-f4c2-4a4e-bb05-9adaeb4aea4b ra-1 UN DC2-1IP3 878.12 KiB 1 100.0% 3894b3d9-1f5a-444d-83db-7b1e338bbfc9 ra-1คุณสามารถเรียกใช้
nodetool describecluster
ในโหนดเพื่อทําความเข้าใจสถานะปัจจุบันของคลัสเตอร์ทั้งหมด ตัวอย่างเช่น ตัวอย่างต่อไปนี้แสดงอินสแตนซ์ของคลัสเตอร์ศูนย์ข้อมูล 2 แห่งที่โหนด DC-1 ทั้งหมดใช้ Cassandra เวอร์ชัน 4 ส่วนโหนด DC-2 ทั้งหมดใช้ Cassandra เวอร์ชัน 3# On nodes where Cassandra is upgraded
/opt/apigee/apigee-cassandra/bin/nodetool describecluster
Cluster Information: Name: Apigee Snitch: org.apache.cassandra.locator.PropertyFileSnitch DynamicEndPointSnitch: enabled Partitioner: org.apache.cassandra.dht.RandomPartitioner Schema versions: 2eadcd74-0245-309a-9992-3625afa70038: [DC-1-IP1, DC-1-IP2, DC-1-IP3] 129dc15e-198e-3c11-b64c-701044a3a1ad: [DC-2-IP1, DC-2-IP2, DC-2-IP3] Stats for all nodes: Live: 6 Joining: 0 Moving: 0 Leaving: 0 Unreachable: 0 Data Centers: dc-1 #Nodes: 3 #Down: 0 dc-2 #Nodes: 3 #Down: 0 Database versions: 4.0.13: [DC-1-IP1:7000, DC-1-IP2:7000, DC-1-IP3:7000] 3.11.16: [DC-2-IP1:7000, DC-2-IP2:7000, DC-2-IP3:7000] Keyspaces: system_schema -> Replication class: LocalStrategy {} system -> Replication class: LocalStrategy {} auth -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3} cache -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3} devconnect -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3} dek -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3} user_settings -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3} apprepo -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3} kms -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3} identityzone -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3} audit -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3} analytics -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3} keyvaluemap -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3} counter -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3} apimodel_v2 -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3} system_distributed -> Replication class: SimpleStrategy {replication_factor=3} system_traces -> Replication class: SimpleStrategy {replication_factor=2} system_auth -> Replication class: SimpleStrategy {replication_factor=1} # On nodes where Cassandra is not upgraded/opt/apigee/apigee-cassandra/bin/nodetool describecluster
Cluster Information: Name: Apigee Snitch: org.apache.cassandra.locator.PropertyFileSnitch DynamicEndPointSnitch: enabled Partitioner: org.apache.cassandra.dht.RandomPartitioner Schema versions: 2eadcd74-0245-309a-9992-3625afa70038: [DC-1-IP1, DC-1-IP2, DC-1-IP3] 129dc15e-198e-3c11-b64c-701044a3a1ad: [DC-2-IP1, DC-2-IP2, DC-2-IP3] - ระบุโหนดต้นทางในศูนย์ข้อมูล: โปรดดูส่วนวิธีระบุโหนดต้นทางในภาคผนวก ทําตามขั้นตอนด้านล่างในโหนดต้นทาง 1 โหนด
- หยุด ถอนการติดตั้ง และล้างข้อมูลออกจากโหนดของ Cassandra
เลือกโหนดต้นทางแรกใน Cassandra เวอร์ชัน 4 ในศูนย์ข้อมูลนี้ หยุด
# Stop Cassandra service on the node
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra stop
# Uninstall Cassandra software/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra uninstall
# Wipe out Cassandra datarm -rf /opt/apigee/data/apigee-cassandra
- ติดตั้งซอฟต์แวร์ Cassandra เวอร์ชันเก่าในโหนดและกำหนดค่าบางอย่าง เรียกใช้ไฟล์บูตสตรีปของ Edge สำหรับ Private Cloud 4.52.02
# Download bootstrap of 4.52.02curl https://software.apigee.com/bootstrap_4.52.02.sh -o /tmp/bootstrap_4.52.02.sh -u uName:pWord
# Execute bootstrap of 4.52.02sudo bash /tmp/bootstrap_4.52.02.sh apigeeuser=uName apigeepassword=pWord
ตั้งค่า Cassandra
- สร้างหรือแก้ไขไฟล์
/opt/apigee/customer/application/cassandra.properties
- เพิ่มเนื้อหาต่อไปนี้ลงในไฟล์
ipOfNode
คือที่อยู่ IP ของโหนดที่ Cassandra ใช้เพื่อสื่อสารกับโหนด Cassandra อื่นๆ ดังนี้conf_jvm_options_custom_settings=-Dcassandra.replace_address=ipOfNode -Dcassandra.allow_unsafe_replace=true
- ตรวจสอบว่าผู้ใช้ apigee เป็นเจ้าของและอ่านไฟล์ได้ โดยทำดังนี้
chown apigee:apigee /opt/apigee/customer/application/cassandra.properties
- ติดตั้งและตั้งค่า Cassandra โดยทำดังนี้
- ติดตั้ง Cassandra เวอร์ชัน 3.11.X
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra install
- ตั้งค่า Cassandra ด้วยการส่งไฟล์การกําหนดค่ามาตรฐาน โดยทําดังนี้
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra setup -f configFile
- ตรวจสอบว่าได้ติดตั้ง Cassandra 3.11.X และบริการทํางานอยู่ โดยทำดังนี้
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra version
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra status
- ติดตั้ง Cassandra เวอร์ชัน 3.11.X
- ยืนยันว่าโหนดเริ่มทำงานแล้ว ตรวจสอบคําสั่งต่อไปนี้บนโหนดนี้และโหนดอื่นๆ ในคลัสเตอร์ โหนดควรรายงานว่าอยู่ในสถานะ "UN" (ทำงาน/ปกติ) ดังนี้
/opt/apigee/apigee-cassandra/bin/nodetool status
- นำการกำหนดค่าเพิ่มเติมที่เพิ่มไว้ก่อนหน้านี้ออกจากไฟล์
/opt/apigee/customer/application/cassandra.properties
- ทำขั้นตอนที่ 3 ถึง 6 ซ้ำบนโหนดต้นทางของ Cassandra ทั้งหมดในศูนย์ข้อมูลทีละโหนด
- ทำขั้นตอนที่ 3 ถึง 6 ซ้ำกับโหนด Cassandra ที่เหลือทั้งหมดในศูนย์ข้อมูลทีละโหนด
- สร้างโหนดทั้งหมดในศูนย์ข้อมูลอีกครั้งจากศูนย์ข้อมูลที่ใช้ Cassandra เวอร์ชันเก่า ทําขั้นตอนนี้ทีละโหนด
/opt/apigee/apigee-cassandra/bin/nodetool rebuild -dc <name of working DC>
ขั้นตอนนี้อาจใช้เวลาสักครู่ คุณปรับstreamingthroughput
ได้หากจำเป็น ตรวจสอบสถานะโดยใช้วิธีต่อไปนี้/opt/apigee/apigee-cassandra/bin/nodetool netstats
- รีสตาร์ทคอมโพเนนต์ edge-* ทั้งหมดในศูนย์ข้อมูลทีละรายการ ดังนี้
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
/opt/apigee/apigee-service/bin/apigee-service edge-router restart
/opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
/opt/apigee/apigee-service/bin/apigee-service edge-qpid-server restart
/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart
- ตรวจสอบและเปลี่ยนเส้นทางการเข้าชมกลับไปยังศูนย์ข้อมูลนี้ เรียกใช้การตรวจสอบบางอย่างสําหรับการรับส่งข้อมูลรันไทม์และ API การจัดการในศูนย์ข้อมูลนี้ และเริ่มเปลี่ยนเส้นทางการรับส่งข้อมูลพร็อกซีและ API การจัดการกลับไปที่ศูนย์ข้อมูลนี้
- ทำตามขั้นตอนข้างต้นซ้ำสำหรับแต่ละศูนย์ข้อมูลที่ต้องการเปลี่ยนกลับ
เปลี่ยนกลับ Cassandra โดยใช้ข้อมูลสํารอง
ข้อกำหนดเบื้องต้น
- คุณกำลังดำเนินการอัปเกรด Cassandra จาก 3.11.X เป็น 4.0.X และพบปัญหาระหว่างการอัปเกรด
- คุณมีข้อมูลสํารองของโหนดที่จะเปลี่ยนกลับ ข้อมูลสํารองสร้างขึ้นก่อนที่จะพยายามอัปเกรดจาก 3.11.X เป็น 4.0.X
ขั้นตอน
เลือกโหนดที่ต้องการย้อนกลับ 1 โหนด หากคุณจะเปลี่ยนกลับโหนดทั้งหมดในศูนย์ข้อมูลโดยใช้ข้อมูลสํารอง ให้เริ่มด้วยโหนดต้นทางก่อน โปรดดูส่วน "วิธีระบุโหนดต้นทาง" ในภาคผนวก
หยุด ถอนการติดตั้ง และล้างข้อมูลโหนด Cassandra โดยทำดังนี้
# Stop Cassandra service on the node
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra stop
# Uninstall Cassandra software/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra uninstall
# Wipe Cassandra datarm -rf /opt/apigee/data/apigee-cassandra
ติดตั้งซอฟต์แวร์ Cassandra เวอร์ชันเก่าในโหนดและกำหนดค่า ดังนี้
- เรียกใช้ไฟล์ Bootstrap สำหรับ Edge for Private Cloud 4.52.02
# Download bootstrap for 4.52.02
curl https://software.apigee.com/bootstrap_4.52.02.sh -o /tmp/bootstrap_4.52.02.sh -u ‘uName:pWord’
# Execute bootstrap for 4.52.02sudo bash /tmp/bootstrap_4.52.02.sh apigeeuser=uName apigeepassword=pWord
- สร้างหรือแก้ไขไฟล์
/opt/apigee/customer/application/cassandra.properties
- ตรวจสอบว่าไฟล์เป็นของผู้ใช้ apigee และอ่านได้
- ติดตั้งและตั้งค่า Cassandra
หยุดบริการ Cassandra และกู้คืนข้อมูลสํารอง ดูรายละเอียดเพิ่มเติมในเอกสารประกอบเกี่ยวกับการสํารองและกู้คืนข้อมูล
# Stop Cassandra service on the node
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra stop
# Wipe the data directory in preparation for restorerm -rf /opt/apigee/data/apigee-cassandra/data
# Restore the backup taken before the upgrade attempt/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restore backupFile
เมื่อกู้คืนข้อมูลสํารองแล้ว ให้นําการกําหนดค่าเพิ่มเติมออก ดังนี้
นำการกำหนดค่าที่เพิ่มไว้ก่อนหน้านี้ออกจากไฟล์
/opt/apigee/customer/application/cassandra.properties
เริ่มบริการ Cassandra ในโหนดโดยทำดังนี้
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra start
ทำขั้นตอนเหล่านี้ซ้ำทีละโหนดใน Cassandra ที่ต้องการเปลี่ยนกลับโดยใช้ข้อมูลสํารอง
เมื่อกู้คืนโหนด Cassandra ทั้งหมดแล้ว ให้รีสตาร์ทคอมโพเนนต์ edge-* ทั้งหมดทีละรายการ ดังนี้
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
/opt/apigee/apigee-service/bin/apigee-service edge-router restart
/opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
/opt/apigee/apigee-service/bin/apigee-service edge-qpid-server restart
/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart
conf_jvm_options_custom_settings=-Dcassandra.replace_address=ipOfNode -Dcassandra.allow_unsafe_replace=true
chown apigee:apigee /opt/apigee/customer/application/cassandra.properties
# Install Cassandra version 3.11.X/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra install
# Set up Cassandra with the standard configuration file/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra setup -f configFile
# Verify Cassandra version and check service status/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra version
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra status
ยืนยันว่าโหนดเริ่มทำงานแล้ว ตรวจสอบคําสั่งต่อไปนี้บนโหนดนี้และโหนดอื่นๆ ในคลัสเตอร์ โหนดควรรายงานว่าโหนดนี้อยู่ในสถานะ "UN"
/opt/apigee/apigee-cassandra/bin/nodetool status
การเพิ่มประสิทธิภาพการสำรองข้อมูล (ตัวเลือกขั้นสูง)
คุณอาจลด (หรือหลีกเลี่ยง) ข้อมูลสูญหายขณะกู้คืนข้อมูลสำรองได้หากมีข้อมูลจำลองที่มีข้อมูลล่าสุด หากมีข้อมูลจำลอง ให้เรียกใช้การซ่อมในโหนดที่กู้คืนแล้วหลังจากกู้คืนข้อมูลสำรอง
ภาคผนวก
วิธีระบุโหนดต้นทาง
เรียกใช้คําสั่งต่อไปนี้บนโหนด Cassandra ในศูนย์ข้อมูล
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra configure -search conf_cassandra_seeds
คำสั่งจะแสดงผลหลายบรรทัด มองหาบรรทัดสุดท้ายของเอาต์พุต ที่อยู่ IP ที่แสดงในบรรทัดสุดท้ายคือโหนดต้นทาง ในตัวอย่างด้านล่าง DC-1-IP1
, DC-1-IP2
, DC-2-IP1
และ DC-2-IP2
คือ IP ของโหนดต้นทาง
Found key conf_cassandra_seeds, with value, "127.0.0.1", in /opt/apigee/apigee-cassandra/token/default.properties Found key conf_cassandra_seeds, with value, 127.0.0.1, in /opt/apigee/apigee-cassandra/token/application/cassandra.properties Found key conf_cassandra_seeds, with value, "DC-1-IP1, DC-1-IP2, DC-2-IP1, DC-2-IP2", in /opt/apigee/token/application/cassandra.properties apigee-configutil: apigee-cassandra: # OK
เปลี่ยนกลับไปเป็นรุ่นหลักหรือรุ่นย่อยก่อนหน้า
หากต้องการเปลี่ยนกลับไปเป็นรุ่นหลักหรือรุ่นย่อยก่อนหน้า ให้ทําดังนี้ในแต่ละโหนดที่โฮสต์คอมโพเนนต์
-
ดาวน์โหลดไฟล์
bootstrap.sh
สำหรับเวอร์ชันที่ต้องการย้อนกลับ โดยทำดังนี้- หากต้องการเปลี่ยนกลับไปใช้ 4.52.02 ให้ดาวน์โหลด
bootstrap_4.52.02.sh
curl https://software.apigee.com/bootstrap_4.52.02.sh -o /tmp/bootstrap_4.52.02.sh
- หากต้องการเปลี่ยนกลับไปใช้ 4.52.02 ให้ดาวน์โหลด
- วิธีหยุดคอมโพเนนต์เพื่อเปลี่ยนกลับ
- หากต้องการเปลี่ยนกลับคอมโพเนนต์ที่มีโค้ดทั่วไปในโหนด คุณต้องหยุดคอมโพเนนต์ทั้งหมดดังที่แสดงในตัวอย่างต่อไปนี้
/opt/apigee/apigee-service/bin/apigee-service edge-management-server stop
/opt/apigee/apigee-service/bin/apigee-service edge-router stop
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor stop
/opt/apigee/apigee-service/bin/apigee-service edge-qpid-server stop
/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop
- หากต้องการเปลี่ยนกลับคอมโพเนนต์อื่นๆ ในโหนด ให้หยุดเฉพาะคอมโพเนนต์นั้น โดยทำดังนี้
/opt/apigee/apigee-service/bin/apigee-service component stop
- หากต้องการเปลี่ยนกลับคอมโพเนนต์ที่มีโค้ดทั่วไปในโหนด คุณต้องหยุดคอมโพเนนต์ทั้งหมดดังที่แสดงในตัวอย่างต่อไปนี้
- หากต้องการเลิกใช้การสร้างรายได้ ให้ถอนการติดตั้งจากเซิร์ฟเวอร์การจัดการและโหนดข้อความประมวลผลทั้งหมด ดังนี้
/opt/apigee/apigee-service/bin/apigee-service edge-mint-gateway uninstall
- ถอนการติดตั้งคอมโพเนนต์เพื่อเปลี่ยนกลับในโหนด โดยทำดังนี้
- หากต้องการเปลี่ยนกลับคอมโพเนนต์ที่มีโค้ดทั่วไปในโหนด คุณต้องถอนการติดตั้งทั้งหมดโดยถอนการติดตั้งกลุ่มคอมโพเนนต์
edge-gateway
ดังที่แสดงในตัวอย่างต่อไปนี้/opt/apigee/apigee-service/bin/apigee-service edge-gateway uninstall
- หากต้องการเปลี่ยนกลับคอมโพเนนต์อื่นๆ ในโหนด ให้ถอนการติดตั้งเฉพาะคอมโพเนนต์นั้น ดังตัวอย่างต่อไปนี้
/opt/apigee/apigee-service/bin/apigee-service component uninstall
โดยที่ component คือชื่อคอมโพเนนต์
- หากต้องการเปลี่ยนกลับเราเตอร์ Edge คุณต้องลบเนื้อหาของไฟล์
/opt/nginx/conf.d
นอกเหนือจากการถอนการติดตั้งกลุ่มคอมโพเนนต์edge-gateway
ดังนี้cd /opt/nginx/conf.d
rm -rf *
- หากต้องการเปลี่ยนกลับคอมโพเนนต์ที่มีโค้ดทั่วไปในโหนด คุณต้องถอนการติดตั้งทั้งหมดโดยถอนการติดตั้งกลุ่มคอมโพเนนต์
- ถอนการติดตั้ง
apigee-setup
เวอร์ชัน 4.53.00 โดยทำดังนี้/opt/apigee/apigee-service/bin/apigee-service apigee-setup uninstall
- ติดตั้งยูทิลิตี
apigee-service
เวอร์ชัน 4.52.02 และทรัพยากร Dependency ของยูทิลิตี ตัวอย่างต่อไปนี้จะติดตั้งapigee-service
เวอร์ชัน 4.52.02sudo bash /tmp/bootstrap_4.52.02.sh apigeeuser=uName apigeepassword=pWord
โดยที่ uName และ pWord คือชื่อผู้ใช้และรหัสผ่านที่คุณได้รับจาก Apigee หากไม่ใส่ pWord ระบบจะแจ้งให้คุณป้อน
หากพบข้อผิดพลาด ให้ตรวจสอบว่าคุณได้ดาวน์โหลดไฟล์
bootstrap.sh
ในขั้นตอนที่ 1 - วิธีติดตั้ง
apigee-setup
/opt/apigee/apigee-service/bin/apigee-service apigee-setup install
- ติดตั้งคอมโพเนนต์เวอร์ชันเก่า ดังนี้
/opt/apigee/apigee-setup/bin/setup.sh -p component -f configFile
โดยที่ component คือคอมโพเนนต์ที่จะติดตั้ง และ configFile คือไฟล์การกําหนดค่าสําหรับเวอร์ชันเก่า
- หากจะเปลี่ยนกลับไปใช้ Qpid ให้ล้าง iptables โดยทำดังนี้
sudo iptables -F
- ทำขั้นตอนนี้ซ้ำสำหรับโหนดแต่ละโหนดที่โฮสต์คอมโพเนนต์ที่คุณจะเปลี่ยนกลับ
เปลี่ยนกลับไปใช้แพตช์รุ่นก่อนหน้า
หากต้องการเปลี่ยนคอมโพเนนต์กลับไปเป็นรุ่นแพตช์ที่เฉพาะเจาะจง ให้ทำดังนี้ในแต่ละโหนดที่โฮสต์คอมโพเนนต์
- ดาวน์โหลดคอมโพเนนต์เวอร์ชันที่ต้องการ ดังนี้
/opt/apigee/apigee-service/bin/apigee-service component_version install
โดยที่ component_version คือคอมโพเนนต์และรุ่นแพตช์ที่จะติดตั้ง เช่น
/opt/apigee/apigee-service/bin/apigee-service edge-ui-4.53.00-0.0.20254 install
หากคุณใช้ที่เก็บออนไลน์ของ Apigee คุณสามารถระบุเวอร์ชันคอมโพเนนต์ที่ใช้ได้โดยใช้คำสั่งต่อไปนี้
yum --showduplicates list comp
เช่น
yum --showduplicates list edge-ui
- ใช้
apigee-setup
เพื่อติดตั้งคอมโพเนนต์ ดังนี้/opt/apigee/apigee-setup/bin/setup.sh -p comp -f configFile
เช่น
/opt/apigee/apigee-setup/bin/setup.sh -p ui -f configFile
โปรดทราบว่าคุณระบุเฉพาะชื่อคอมโพเนนต์เมื่อติดตั้งเท่านั้น ไม่ใช่เวอร์ชัน
- ทำขั้นตอนนี้ซ้ำสำหรับโหนดแต่ละโหนดที่โฮสต์คอมโพเนนต์ที่คุณจะเปลี่ยนกลับ
เปลี่ยนกลับ mTLS
หากต้องการเปลี่ยนกลับการอัปเดต mTLS ให้ทำตามขั้นตอนต่อไปนี้ในโฮสต์ทั้งหมด
- หยุด Apigee
apigee-all stop
- หยุด mTLS
apigee-service apigee-mtls uninstall
- ติดตั้ง mTLS อีกครั้ง
apigee-service apigee-mtls install
apigee-service apigee-mtls setup -f /opt/silent.conf