Cassandra কনফিগার করা

এই ডকুমেন্টে Apigee Edge for Private Cloud ভার্সন 4.53.00 বা তার পরবর্তী যেকোনও ভার্সনের সাথে অন্তর্ভুক্ত Cassandra 4.0.X-এর কনফিগারেশন সম্পর্কে বলা আছে। এখানে বর্ণিত কনফিগারেশন পারফর্ম করার বিবরণ পেতে পরিশিষ্ট বিভাগ দেখুন।

গার্বেজ কালেক্টর কনফিগারেশন

CMS ব্যবহার করার জন্য পরিবর্তন করুন

ডিফল্ট হিসেবে, Apigee, Cassandra 4.X-এর জন্য সাজেস্ট করা G1 গার্বেজ কালেক্টর সহ Cassandra শিপ করে। তবে, বিভিন্ন ব্যবহারের ক্ষেত্রে এবং আপনার নিজস্ব পরিকাঠামোর জন্য, যেমন প্রাইভেট ক্লাউডের জন্য Edge-এ, আপনি CMS গার্বেজ কালেক্টরে পরিবর্তন করার বিকল্প বেছে নিতে পারেন। ৮ জিবির থেকে বড় হিপ সাইজের জন্য, Apigee G1GC ব্যবহার করার জন্য বিশেষভাবে সাজেস্ট করে।

CMS গার্বেজ কালেক্টর ব্যবহার করতে, নিম্নলিখিত কনফিগারেশন সেট করুন:

conf_jvm_options_gc_type=cms

G1 গার্বেজ কালেক্টর ব্যবহার করার আগের অবস্থায় ফিরে যেতে, এই কনফিগারেশন সরিয়ে দিন।

CMS গার্বেজ কালেক্টর সেটিংস পরিবর্তন করা

Apigee, CMS গার্বেজ কালেক্টরের জন্য ডিফল্ট প্যারামিটার প্রদান করে। Cassandra CMS ব্যবহার করলে এইসব প্যারামিটার প্রযোজ্য হয়। এইসব প্যারামিটার পরিবর্তন করতে, config conf_jvm_options_cms_gc_setting_lines ব্যবহার করুন। "\n" দিয়ে আলাদা করে একটি লাইনে CMS GC-এর জন্য প্রাসঙ্গিক সব JVM প্যারামিটার সেট করুন।

উদাহরণ:

conf_jvm_options_cms_gc_setting_lines=-XX:+UseParNewGC\n-XX:+UseConcMarkSweepGC\n-XX:+CMSParallelRemarkEnabled\n-XX:SurvivorRatio=8\n-XX:MaxTenuringThreshold=1\n-XX:CMSInitiatingOccupancyFraction=75\n-XX:+UseCMSInitiatingOccupancyOnly\n-XX:CMSWaitDuration=10000\n-XX:+CMSParallelInitialMarkEnabled\n-XX:+CMSEdenChunksRecordAlways\n-XX:+CMSClassUnloadingEnabled

G1GC গার্বেজ কালেক্টর সেটিংস পরিবর্তন করা

Apigee, G1 গার্বেজ কালেক্টরের জন্য ডিফল্ট প্যারামিটার প্রদান করে। ডিফল্ট G1GC চালু থাকলে এইসব প্যারামিটার প্রযোজ্য হয়। আপনি CMS-এ পরিবর্তন করলে, এইসব সেটিংস প্রযোজ্য হয় না। G1GC প্যারামিটার পরিবর্তন করতে, config conf_jvm_options_g1_gc_setting_lines ব্যবহার করুন। একটি লাইনে G1 GC-এর জন্য প্রাসঙ্গিক সব JVM প্যারামিটার সেট করুন, “\n” দিয়ে আলাদা করুন।

উদাহরণ:

conf_jvm_options_g1_gc_setting_lines=-XX:+UseG1GC\n-XX:G1RSetUpdatingPauseTimePercent=5\n-XX:MaxGCPauseMillis=500\n-XX:InitiatingHeapOccupancyPercent=50\n-XX:ParallelGCThreads=8\n-XX:ConcGCThreads=8\n-XX:+ParallelRefProcEnabled\n-XX:MaxTenuringThreshold=1\n-XX:G1HeapRegionSize=32m\n-XX:G1ReservePercent=15

আপনার নিজের GC সেটিংস ব্যবহার করা

G1GC ও CMS, দুটির ক্ষেত্রেই Apigee-এর সব প্রিসেট উপেক্ষা করতে, নিম্নলিখিত কনফিগারেশন সেট করুন:

conf_jvm_options_gc_type=custom

conf_jvm_options_custom_settings-এ JVM-এর জন্য সব GC সেটিংস নির্দিষ্ট করুন, প্রতিটি সেটিং “\n” দিয়ে আলাদা করুন।

উদাহরণ:

conf_jvm_options_gc_type=custom
conf_jvm_options_custom_settings=-XX:+UseParallelGC\n-XX:GCTimeRatio=19

হিপ সাইজ কনফিগার করা

Apigee দৃঢ়ভাবে সাজেস্ট করে যে ৮ জিবি হিপ স্পেসের বেশি নিয়ে Cassandra অপারেট করবেন না। ৮ জিবিতে হিপ সাইজ সীমিত করার চেক $APIGEE_ROOT/apigee-cassandra/conf/cassandra-env.sh-এ আছে।

ম্যানুয়ালি চেক বন্ধ না করেই নিজের হিপ সাইজিং নির্দিষ্ট করতে, config conf_jvm_options_custom_settings ব্যবহার করুন। "\n" ব্যবহার করে প্রতিটি সেটিং আলাদা করুন।

উদাহরণ:

conf_jvm_options_custom_settings=-Xmx8G\n-Xms8G

সাধারণ JVM সেটিংস কনফিগার করা

Cassandra-তে JVM প্যারামিটার যোগ করতে, config conf_jvm_options_custom_settings-এর জন্য "\n" দিয়ে আলাদা করা একটি লাইনে সব JVM কনফিগারেশন নির্দিষ্ট করুন।

উদাহরণ:

conf_jvm_options_custom_settings=-Dcassandra.start_rpc=true\n-Dcassandra.expiration_date_overflow_policy=CAP\n-XX:+FlightRecorder\n-XX:+UnlockCommercialFeatures

পরিশিষ্ট

Cassandra-র যেকোনও কনফিগারেশন কীভাবে সেট করতে হয়

  1. Cassandra কনফিগারেশন ওভাররাইড ফাইল তৈরি বা এডিট করুন:
    vi $APIGEE_ROOT/customer/application/cassandra.properties
  2. প্রয়োজন অনুযায়ী কনফিগারেশন লাইন যোগ করুন, সরিয়ে দিন বা পরিবর্তন করুন।
  3. ফাইলটি সেভ করুন এবং নিশ্চিত করুন যে "apigee" ব্যবহারকারী এটির মালিক এবং এটি পড়তে পারেন:
    chown apigee:apigee $APIGEE_ROOT/customer/application/cassandra.properties
  4. নোডে Cassandra পরিষেবা রিস্টার্ট করুন:
    apigee-service apigee-cassandra restart
  5. এক এক করে প্রতিটি Cassandra নোডে এই ধাপগুলি রিপিট করুন।

বিভিন্ন ধরনের কনফিগারেশন

কনফিগারেশন conf_jvm_options_custom_settings Cassandra JVM-এ বিভিন্ন প্যারামিটার পাস করতে পারে। বিভিন্ন Java প্যারামিটারকে একটি কনফিগারেশনে একত্রিত করুন এবং “\n” দিয়ে আলাদা করুন।

উদাহরণ:

conf_jvm_options_custom_settings=-XX:+FlightRecorder\n-XX:+UnlockCommercialFeatures\n-Xmx8G\n-Xms8G