งานบำรุงรักษา Apache Cassandra

ส่วนนี้อธิบายถึงงานบำรุงรักษาเป็นระยะสำหรับ Cassandra

การบำรุงรักษาแบบต่อต้านเอนโทรปี

โหนดริงของ Apache Cassandra จำเป็นต้องมีการบำรุงรักษาเป็นระยะๆ เพื่อให้มั่นใจว่าโหนดทั้งหมดมีความสอดคล้องกัน ใช้คำสั่งต่อไปนี้เพื่อดำเนินการบำรุงรักษา

nodetool -h localhost repair -pr

Apigee ขอแนะนำสิ่งต่อไปนี้เมื่อเรียกใช้คำสั่งนี้

  • ทำงานบนโหนด Cassandra ทุกโหนด (ในทุกภูมิภาคหรือศูนย์ข้อมูล)
  • เรียกใช้บนโหนดทีละรายการเพื่อให้โหนดทั้งหมดในริงสอดคล้องกัน
  • เรียกใช้ในช่วงที่มีปริมาณงานค่อนข้างต่ำ (เครื่องมือจะทำให้ )
  • ทำงานอย่างน้อยทุกๆ 7 วันเพื่อขจัดปัญหาเกี่ยวกับ Cassandra "ลืมลบ"
  • คุณสามารถเรียกใช้ในโหนดต่างๆ ในวันต่างกัน หรือตั้งเวลาให้มี หลายชั่วโมงในการเรียกใช้แต่ละโหนด
  • ใช้ตัวเลือก -pr (ช่วงพาร์ติชัน) เพื่อระบุช่วงของพาร์ติชันหลัก ของโหนดเท่านั้น

หากคุณเปิดใช้การตรวจสอบสิทธิ์ JMX สำหรับ Cassandra คุณต้องระบุชื่อผู้ใช้และรหัสผ่านเมื่อเรียกใช้ nodetool เช่น

nodetool -u username -pw password -h localhost repair -pr

สำหรับข้อมูลเพิ่มเติม โปรดดูแหล่งข้อมูลต่อไปนี้

การบำรุงรักษาไฟล์บันทึก

บันทึกของ Cassandra จะเก็บอยู่ในไดเรกทอรี /opt/apigee/var/log/cassandra บน แต่ละโหนด โดยค่าเริ่มต้น ไฟล์บันทึกสูงสุด 50 ไฟล์ โดยแต่ละไฟล์มีขนาดได้สูงสุด 20 MB สร้าง; เมื่อถึงขีดจำกัดนี้แล้ว บันทึกเก่าจะถูกลบเมื่อมีการสร้างบันทึกที่ใหม่กว่า

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

  1. แก้ไข/opt/apigee/customer/application/cassandra.properties เพื่อตั้งค่าพร็อพเพอร์ตี้ต่อไปนี้ หากไม่มีไฟล์อยู่ ให้สร้างไฟล์ดังกล่าวโดยทำดังนี้
    conf_logback_maxfilesize=20MB
    # max file size
    conf_logback_maxbackupindex=50 # max open files
  2. รีสตาร์ท Cassandra โดยใช้คำสั่งต่อไปนี้
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart