ส่วนนี้จะให้คำแนะนำทั่วไปเกี่ยวกับการปรับขนาดการดำเนินการของ Cassandra โดยทำให้ Cassandra ใน Apigee Edge สำหรับแร็คของ Private Cloud
โปรดดูแหล่งข้อมูลต่อไปนี้เพื่อดูข้อมูลเพิ่มเติมเกี่ยวกับเหตุผลที่การทำให้ชั้นวางแหวน Cassandra ให้ความสำคัญ
- การจำลอง (เอกสาร Cassandra)
- กลยุทธ์สถาปัตยกรรมและปัจจัยการจำลอง
แร็คคืออะไร
ชั้นวาง Cassandra คือการจัดกลุ่มโหนด Cassandra ตามตรรกะภายในริง Cassandra ใช้ชั้นวางเพื่อให้มั่นใจได้ว่าตัวจำลองจะกระจายไปตามการจัดกลุ่มเชิงตรรกะต่างๆ ด้วยเหตุนี้ ระบบจึงส่งการดำเนินการไปยังโหนดเดียว แต่ส่งหลายโหนด โดยแต่ละโหนดอยู่บนชั้นวางแยกกัน ทำให้การยอมรับข้อผิดพลาดและความพร้อมใช้งานสูงขึ้น
ตัวอย่างในส่วนนี้ใช้ชั้นวางของ Cassandra จำนวน 3 ชั้น ซึ่งเป็นจำนวนชั้นวางที่ Apigee สนับสนุนในโทโพโลยีการผลิต
การติดตั้งเริ่มต้นของ Cassandra ใน Apigee Edge สำหรับ Private Cloud จะถือว่าชั้นวางเชิงตรรกะเดียวและวางโหนดทั้งหมดไว้ภายในศูนย์ข้อมูล แม้ว่าการกำหนดค่านี้จะติดตั้งและจัดการได้ง่าย แต่ก็มีแนวโน้มที่จะล้มเหลวหากการดำเนินการล้มเหลวในโหนดใดโหนดหนึ่งเหล่านั้น
รูปภาพต่อไปนี้แสดงการกำหนดค่าเริ่มต้นของแหวน Cassandra
ในการกำหนดค่าที่มีประสิทธิภาพมากขึ้น ระบบจะกำหนดแต่ละโหนดให้กับแร็คแยกกัน และการดำเนินการจะทำงานบนตัวจำลองบนชั้นวางเหล่านั้นด้วย
รูปภาพต่อไปนี้แสดงวงแหวน 3 โหนด รูปภาพนี้แสดงลำดับการจำลองการดำเนินการในวงกลม (ตามเข็มนาฬิกา) และไฮไลต์ข้อเท็จจริงที่ว่าไม่มีโหนด 2 โหนดอยู่บนชั้นเดียวกัน
ในการกำหนดค่านี้ ระบบจะส่งการดำเนินการไปยังโหนด แต่จะส่งไปยังตัวจำลองของโหนดนั้นบนชั้นวางอื่นด้วย (ตามลำดับตามเข็มนาฬิกา)
เพิ่มการรับรู้ถึงชั้น (มี 3 โหนด)
โทโพโลยีการติดตั้งเวอร์ชันที่ใช้งานจริงทั้งหมดของ Apigee Edge สำหรับ Private Cloud มีโหนด Cassandra อย่างน้อย 3 โหนด ซึ่งส่วนนี้หมายถึง "IP1", "IP2" และ "IP3" โดยค่าเริ่มต้น แต่ละโหนดจะอยู่ในชั้นเดียวกัน "ra-1"
ส่วนนี้จะอธิบายวิธีกำหนดโหนด Cassandra เพื่อแยกชั้นวางเพื่อให้การดำเนินการทั้งหมดส่งไปยังโหนดข้อมูลจำลองในการจัดกลุ่มเชิงตรรกะที่แยกกันภายในแหวน
วิธีกำหนดโหนด Cassandra ให้กับชั้นวางต่างๆ ระหว่างการติดตั้ง
- ก่อนเรียกใช้โปรแกรมติดตั้ง ให้เข้าสู่ระบบโหนด Cassandra และเปิดไฟล์การกำหนดค่าเงียบต่อไปนี้เพื่อแก้ไข
/opt/silent.conf
สร้างไฟล์หากยังไม่มีและกำหนดให้ผู้ใช้ "Apigee" เป็นเจ้าของ
- แก้ไขพร็อพเพอร์ตี้
CASS_HOSTS
ซึ่งเป็นรายการที่อยู่ IP ที่คั่นด้วยช่องว่าง (ไม่ใช่รายการ DNS หรือชื่อโฮสต์) ซึ่งใช้ไวยากรณ์ต่อไปนี้CASS_HOSTS="IP_address:data_center_number,rack_number [...]"
ค่าเริ่มต้นจะเป็นแหวน Cassandra ที่มี 3 โหนดซึ่งกำหนดแต่ละโหนดให้กับชั้น 1 และศูนย์ข้อมูล 1 ตามตัวอย่างต่อไปนี้
CASS_HOSTS="IP1:1,1 IP2:1,1 IP3:1,1"
- เปลี่ยนการกำหนดแร็คเพื่อให้กำหนดโหนด 2 ไปยังชั้น 2 และโหนด 3 ให้กับแร็ค 3 ตามตัวอย่างต่อไปนี้
CASS_HOSTS="IP1:1,1 IP2:1,2 IP3:1,3"
การเปลี่ยนการกำหนดชั้นวางเป็นการสั่งให้ Cassandra สร้างการจัดกลุ่มเชิงตรรกะ (ชั้นวาง) เพิ่มเติม 2 รายการ ซึ่งจะระบุตัวจำลองที่ได้รับการดำเนินการทั้งหมดที่โหนดแรกได้รับ
ดูข้อมูลเพิ่มเติมเกี่ยวกับการใช้พร็อพเพอร์ตี้การกำหนดค่า
CASS_HOSTS
ได้ที่ข้อมูลอ้างอิงไฟล์การกำหนดค่า Edge - บันทึกการเปลี่ยนแปลงไปยังไฟล์การกำหนดค่าและเรียกใช้คำสั่งต่อไปนี้เพื่อติดตั้ง Cassandra ด้วยการกำหนดค่าที่อัปเดต
/opt/apigee/apigee-setup/bin/setup.sh -p c -f path/to/silent/config
เช่น
/opt/apigee/apigee-setup/bin/setup.sh -p c -f /opt/silent.conf
- ทำขั้นตอนนี้ซ้ำสำหรับโหนด Cassandra แต่ละรายการในริง ตามลำดับที่กำหนดโหนดในพร็อพเพอร์ตี้
CASS_HOSTS
ในกรณีนี้ คุณต้องติดตั้ง Cassandra ตามลำดับต่อไปนี้- โหนด 1 (IP1)
- โหนด 2 (IP2)
- โหนด 3 (IP3)
หลังจากติดตั้งแล้ว คุณควรตรวจสอบการกำหนดค่า Cassandra
ตรวจสอบการกำหนดค่า Cassandra
หลังจากติดตั้งการกำหนดค่า Cassandra แบบ Rack-Aware แล้ว คุณตรวจสอบได้ว่ามีการกำหนดโหนดให้กับชั้นวางต่างๆ หรือไม่โดยใช้คำสั่ง nodetool status
ตามตัวอย่างต่อไปนี้
/opt/apigee/apigee-cassandra/bin/nodetool status
(คุณเรียกใช้คำสั่งนี้บนโหนด Cassandra โหนดใดโหนดหนึ่ง)
ผลลัพธ์ควรมีลักษณะคล้ายกับตัวอย่างต่อไปนี้ ซึ่งคอลัมน์แร็คจะแสดงรหัสแร็คที่ต่างกันสำหรับแต่ละโหนด
Datacenter: dc-1 ======================== Status=Up/Down |/ State=Normal/Leaving/Joining/Moving -- Address Load Tokens Owns Host ID Rack UN IP1 737 MB 256 ? 554d4498-e683-4a53-b0a5-e37a9731bc5c ra-1 UN IP2 744 MB 256 ? cf8b7abf-5c5c-4361-9c2f-59e988d52da3 ra-2 UN IP3 723 MB 256 ? 48e0384d-738f-4589-aa3a-08dc5bd5a736 ra-3
หากเปิดใช้การตรวจสอบสิทธิ์ JMX สำหรับ Cassandra คุณต้องส่งชื่อผู้ใช้และรหัสผ่านไปยัง nodetool
ด้วย ดูข้อมูลเพิ่มเติมได้ที่ใช้ Nodetool เพื่อจัดการโหนดของคลัสเตอร์
ติดตั้งแหวน 6 โหนด
หากต้องการสำรองข้อมูลเพิ่มเติม ให้ขยายวงแหวน Cassandra เป็น 6 โหนด ในกรณีนี้ คุณต้องกำหนด 2 โหนดให้กับชั้นวางทั้ง 3 ชั้น การกำหนดค่านี้ต้องมีโหนดเพิ่มเติม 3 โหนด ได้แก่ โหนด 4 (IP4), โหนด 5 (IP5) และโหนด 6 (IP6)
รูปภาพต่อไปนี้แสดงลำดับการดำเนินการจำลองรอบวงแหวน (ตามเข็มนาฬิกา) และไฮไลต์ข้อเท็จจริงที่ว่าในระหว่างการจำลอง ไม่มีโหนด 2 โหนดที่อยู่ติดกันบนชั้นเดียวกัน
ในการกำหนดค่านี้ แต่ละโหนดจะมีตัวจำลองอีก 2 รายการ โดยรายการหนึ่งอยู่ในชั้นวางอีก 2 ชั้น เช่น โหนด 1 ในชั้น 1 มีการจำลองในชั้น 2 และชั้น 3 การดำเนินการที่ส่งไปยังโหนด 1 ก็จะส่งไปยังตัวจำลองในชั้นอื่นๆ ตามลำดับตามเข็มนาฬิกาด้วย
หากต้องการขยายวงแหวน Cassandra แบบ 3 โหนดเป็นวงแหวน Cassandra แบบ 6 โหนด ให้กำหนดค่าโหนดตามวิธีต่อไปนี้ในไฟล์การกำหนดค่าแบบไม่มีเสียง
CASS_HOSTS="IP1:1,1 IP4:1,3 IP2:1,2 IP5:1,1 IP3:1,3 IP6:1,2"
คุณต้องติดตั้ง Cassandra ในลำดับเดียวกันกับที่โหนดปรากฏในพร็อพเพอร์ตี้ CASS_HOSTS
เช่นเดียวกับวงแหวน 3 โหนด
- โหนด 1 (IP1)
- โหนด 4 (IP4)*
- โหนด 2 (IP2)
- โหนด 5 (IP5)
- โหนด 3 (IP3)
- โหนด 6 (IP6)
* ทำการเปลี่ยนแปลงในไฟล์การกำหนดค่าแบบเงียบก่อนเรียกใช้ยูทิลิตีการตั้งค่าในโหนดที่ 4 (เครื่องที่ 2 ในคำสั่งซื้อการติดตั้ง Cassandra)
ขยายเป็น 12 โหนด
หากต้องการเพิ่มความสามารถในการยอมรับข้อผิดพลาดและความพร้อมใช้งาน ให้เพิ่มจำนวนโหนดของ Cassandra ในวงแหวนจาก 6 เป็น 12 การกำหนดค่านี้ต้องมีโหนดเพิ่มเติม 6 โหนด (IP7 ถึง IP12)
รูปภาพต่อไปนี้แสดงลำดับการดำเนินการจำลองรอบวงแหวน (ตามเข็มนาฬิกา) และไฮไลต์ข้อเท็จจริงที่ว่าในระหว่างการจำลอง ไม่มีโหนด 2 โหนดที่อยู่ติดกันบนชั้นเดียวกัน
ขั้นตอนการติดตั้งแหวน 12 โหนดจะคล้ายกับการติดตั้งแหวนโหนด 3 หรือ 6 โหนด โดยตั้งค่า CASS_HOSTS
เป็นค่าที่ระบุและเรียกใช้โปรแกรมติดตั้งตามลำดับที่ระบุ
หากต้องการขยายเป็นวงแหวน Cassandra แบบ 12 โหนด ให้กำหนดค่าโหนดในไฟล์การกำหนดค่าแบบเงียบดังต่อไปนี้
CASS_HOSTS="IP1:1,1 IP7:1,2 IP4:1,3 IP8:1,1 IP2:1,2 IP9:1,3 IP5:1,1 IP10:1,2 IP3:1,3 IP11:1,1 IP6:1,2 IP12:1,3"
เช่นเดียวกับวงแหวน 3 และ 6 โหนด คุณต้องเรียกใช้โปรแกรมติดตั้งบนโหนดตามลำดับที่โหนดจะปรากฏในไฟล์การกำหนดค่า
- โหนด 1 (IP1)
- โหนด 7 (IP7)*
- โหนด 4 (IP4)
- โหนด 8 (IP8)
- โหนด 2 (IP2)
- โหนด 9 (IP9)
- โหนด 5 (IP5)
- โหนด 10 (IP10)
- โหนด 3 (IP3)
- โหนด 11 (IP11)
- โหนด 6 (IP6)
- โหนด 12 (IP12)
* คุณต้องทำการเปลี่ยนแปลงเหล่านี้ก่อนติดตั้ง Apigee Edge สำหรับ Private Cloud บนโหนดที่ 7 (เครื่องที่ 2 ในคำสั่งซื้อการติดตั้ง Cassandra)