ইলাস্টিক সার্চ সর্বোচ্চ মেমরি সাইজ সেট করুন

Ilastika Sarca Sarbocca Memari Sa Ija Seta Karuna



ইলাস্টিকসার্চের সাথে কাজ করার সময় মেমরি একটি অপরিহার্য কিন্তু সীমিত সম্পদ। এর কারণ লুসিন প্রতিটি উপলব্ধ মেমরি ব্যবহার করবে। যাইহোক, ভুল কনফিগার করা হলে, মেমরি সেটিংস কম কর্মক্ষমতা এবং অদক্ষ মেমরি ব্যবহারের দিকে পরিচালিত করতে পারে।'

এই টিউটোরিয়ালে, ইলাস্টিকসার্চের সাথে কাজ করার সময় আমরা আপনাকে সর্বোচ্চ এবং সর্বনিম্ন JVM হিপ সাইজ কনফিগারেশন দেখাব।







চল শুরু করি.



একটি হিপ মেমরি কি?

ইলাস্টিকসার্চের প্রসঙ্গে, হিপ মেমরি বলতে ইলাস্টিকসার্চ নোডের মধ্যে জাভা ভার্চুয়াল মেশিনে বরাদ্দকৃত মোট মেমরির পরিমাণ বোঝায়।



বেস সিস্টেমের মোট মেমরি এবং নোডের ভূমিকার উপর ভিত্তি করে ইলাস্টিকসার্চ ডিফল্ট JVM হিপের আকার সেট করবে। এর মানে হল হিপ মেমরির আকার বরাদ্দ একটি মাস্টার নোড, ডেটা, ইনজেস্ট, ডেটা_কোল্ড ইত্যাদির উপর নির্ভর করে পরিবর্তিত হতে পারে।





বেশিরভাগ উত্পাদন পরিবেশের জন্য, ইলাস্টিকসার্চকে হিপ সাইজ পরিচালনা করার অনুমতি দেওয়া বাঞ্ছনীয় এবং যথেষ্ট থেকে বেশি।

বিঃদ্রঃ : আপনি যদি ডকারে ইলাস্টিকসার্চ চালান, তাহলে মোট হিপ মেমরি ডকার কন্টেইনারের মোট আকারের উপর ভিত্তি করে এবং ডকারের হোস্টের উপর ভিত্তি করে নয়।



সর্বনিম্ন এবং সর্বোচ্চ হিপ সাইজ কনফিগার করা হচ্ছে

সর্বনিম্ন এবং সর্বোচ্চ হিপ সাইজ কনফিগার করতে, আমরা Xms এবং Xmx প্যারামিটার ব্যবহার করতে পারি। ইলাস্টিকসার্চ প্রোবিট সর্বোচ্চ মেমরি মোট মেমরির 50% এর বেশি সেট করছে না। এর কারণ হল JVM Heap ছাড়াও, Elasticsearch-এর অন্যান্য ক্রিয়াকলাপ যেমন ফাইল সিস্টেম ক্যাশে, নেটওয়ার্ক যোগাযোগ ইত্যাদির জন্য আরও মেমরির প্রয়োজন হয়। একইভাবে, JVM অবশিষ্ট 50% মেমরির একটি অংশ ব্যবহার করবে।

দ্বিতীয়ত, xms এবং xmx মানগুলি উফের থ্রেশহোল্ডের বেশি সেট করবেন না। নিরাপদ কনফিগারেশনের জন্য, কিছু সিস্টেমে এটি 26GB বা 30GB পর্যন্ত সীমাবদ্ধ করুন।

আপনি ইলাস্টিকসার্চ লগে থ্রেশহোল্ড চেক করতে পারেন।

cat elasticsearch.log | grep 'অবজেক্ট পয়েন্টার'

আপনি দেখানো হিসাবে একটি এন্ট্রি দেখতে হবে:

[2022-08-19T20:01:50,275][INFO ][o.e.NodeEnvironment    ] [debian11] হিপ সাইজ [1.9gb], সংকুচিত সাধারণ অবজেক্ট পয়েন্টার [সত্য]
[2022-08-19T20:08:07,207][INFO ][o.e.NodeEnvironment    ] [debian11] হিপ সাইজ [1.9gb], সংকুচিত সাধারণ অবজেক্ট পয়েন্টার [সত্য]
[2022-08-19T20:36:47,244][INFO ][o.e.NodeEnvironment    ] [debian11] হিপ সাইজ [1.9gb], সংকুচিত সাধারণ অবজেক্ট পয়েন্টার [সত্য]

আপনি xms এবং xmx মানের জন্য নোড তথ্য API জিজ্ঞাসা করতে পারেন:

curl -X স্থানীয় হোস্ট পান: 9200/_nodes/_all/jvm? সুন্দর

আপনি দেখানো হিসাবে একটি আউটপুট দেখতে হবে:

সর্বনিম্ন এবং সর্বোচ্চ হিপ সাইজ সেট করুন

JVM হিপ সাইজের মান পরিবর্তন করতে, আপনাকে /etc/elasticsearch/jvm.options.d ডিরেক্টরিতে একটি কনফিগারেশন ফাইল যোগ করতে হবে। এই ফাইলটি .options এক্সটেনশন দিয়ে শেষ হওয়া উচিত।

উদাহরণ স্বরূপ:

$ sudo touch /etc/elasticsearch/jvm.options.d/heap.options

ফাইলটি সম্পাদনা করুন

$ sudo nano /etc/elasticsearch/jvm.options.d/heap.options

পছন্দসই ন্যূনতম এবং সর্বোচ্চ হিপ মেমরি আকার যোগ করুন।

উদাহরণস্বরূপ, নীচের এন্ট্রিটি সর্বনিম্ন এবং সর্বোচ্চ হিপ সাইজকে 4GB এ কনফিগার করে।

ফাইলটি সংরক্ষণ করুন এবং ইলাস্টিক সার্চ পরিষেবা পুনরায় চালু করুন।

উপসংহার

এই টিউটোরিয়ালে, আপনি ইলাস্টিকসার্চের প্রেক্ষাপটে JVM হিপ শিখেছেন, কীভাবে ইলাস্টিকসার্চ JVM হিপ কনফিগার করে এবং আপনি কীভাবে হিপের আকার পরিবর্তন করতে পারেন।

পড়ার জন্য ধন্যবাদ!!