মঙ্গোডের জন্য ওলিমিট কীভাবে সেট করবেন?


8

আমি কীভাবে mongodCentOS এ প্রক্রিয়া / ব্যবহারকারীর জন্য ulimits সেট করব ?

আমি অফিসিয়াল ডকুমেন্টেশন পড়েছি তবে এটি ওএস-নির্দিষ্ট নির্দেশাবলী সরবরাহ করে না।

  • ulimit -u 64000পুনরায় বুট করার পরেও অবিরাম থাকার জন্য আমাকে সেট করা দরকার এবং এটি দরকার।

  • আমি CentOS 5.5 চালাচ্ছি যদিও শিগগিরই 6.5 এ আপগ্রেড হবে।

  • আমি প্যাকেজ পরিচালকের দ্বারা ইনস্টল করা কোনও স্ক্রিপ্ট পরিবর্তন না করা পছন্দ করব

উত্তর:


12

/etc/security/limits.confআপনার যা প্রয়োজন তা সংশোধন করুন । উদাহরণ:

user soft nproc 64000

এই লাইনটি -u"ব্যবহারকারীর" জন্য প্রসেসরের সংখ্যা ( ) 64000 এ সেট করবে । নরম / শক্ত সীমা একই হতে পারে (নরম স্পাইকগুলিকে মঞ্জুরি দেয় যখন হার্ড স্পাউং প্রতিরোধ করে)।


ধন্যবাদ, তবে এটি করার পরে এবং মংডোড পুনরায় চালু করার পরে cat /proc/{pid}/limitsকোনও পরিবর্তন দেখা যায় না। কনফেরটি পড়ার বিষয়টি নিশ্চিত করতে অতিরিক্ত কিছু করা দরকার?
টিম

1
হ্যাঁ, সার্ভারটি পুনরায় বুট করুন। এটি কার্নেল দ্বারা সেট করা হয়েছে।
নাথান সি

7

সেন্টোস মঙ্গোদ স্টার্টআপ স্ক্রিপ্টের নতুন সংস্করণে (/etc/init.d/mongod) স্টার্ট বিকল্পটিতে অন্তর্নির্মিত ডিফল্ট সেটিংস রয়েছে:

start()
{
  # Recommended ulimit values for mongod or mongos
  # See http://docs.mongodb.org/manual/reference/ulimit/#recommended-settings
  #
  ulimit -f unlimited
  ulimit -t unlimited
  ulimit -v unlimited
  ulimit -n 64000
  ulimit -m unlimited
  ulimit -u 32000

  echo -n $"Starting mongod: "
  daemon --user "$MONGO_USER" "$NUMACTL $mongod $OPTIONS >/dev/null 2>&1"
  RETVAL=$?
  echo
  [ $RETVAL -eq 0 ] && touch /var/lock/subsys/mongod
}

আপনি যদি মানগুলি পরিবর্তন করতে চান এবং স্ক্রিপ্টটি পরিবর্তন না করতে চান তবে স্ক্রিপ্টটি /etc/init.d/mongod-custom এ অনুলিপি করুন, তারপরে কাস্টম init স্ক্রিপ্টটি সম্পাদনা করুন, আপনার মানগুলি সেট করুন এবং মঙ্গোডের পরিবর্তে মঙ্গোড-কাস্টম ব্যবহারের জন্য চেককনফিগ পরিবর্তন করুন।


6

থাস্পিয়াসের উত্তরে যুক্ত করতে, তিনি স্ক্রিপ্টে বর্ণিত হিসাবে সীমাটি সেট করা হয়েছে বলে মনে হচ্ছে, তবে আমি এখনও সতর্কতা পেয়ে যাচ্ছিলাম

[initandlisten] ** WARNING: soft rlimits too low. rlimits set to 1024 processes, 64000 files. Number of processes should be at least 32000 : 0.5 times number of files.

এটি সূচিত করে মনে হয় যে init স্ক্রিপ্টে সংজ্ঞায়িত ফাইল সীমা কার্যকর হয়েছিল, তবে প্রক্রিয়া সীমাবদ্ধ নয়। এছাড়াও নাথান সি এর উত্তর অনুসরণ এবং অ্যাড

mongod soft nproc 64000

থেকে /etc/security/limits.d/90-nproc.confএবং পুনরায় চালু করার ব্যবস্থা ইস্যু সমাধান।

যদি কেউ মঙ্গোডব ইআরআই স্ক্রিপ্টে মান থাকা সত্ত্বেও কেন এটি প্রয়োজনীয় ছিল সে সম্পর্কে আলোকপাত করতে সক্ষম হন আমি সমস্ত কান!


এখানে একই, "এনপ্রোক" সেটিংটি কেন উপেক্ষা করা হয়েছিল তা আমার কাছে একটি মিস্ট্রি।
ওস্ততি

1

/etc/security/limits.confফাইলটিতে এই পরিবর্তন করুন। শক্ত এবং নরম সীমা নির্ধারণ করুন, এবং আপনার ভাল হওয়া উচিত।


আমি সরাসরি ফাইলের সাথে /etc/security/limits.d/limits.conf
গোলযোগ

1

পরিবর্তনটি অবিচল থাকার জন্য আপনাকে ডি-আরআই স্ক্রিপ্ট সম্পাদনা করতে হবে, উদাহরণস্বরূপ, রেড হ্যাট 7-এ, init স্ক্রিপ্টের নিম্নলিখিত লাইন রয়েছে:

LimitNOFILE=64000

আপনাকে পরেরটি যুক্ত করতে হবে:

LimitNPROC=32000

এবং তারপরে পরিষেবাটি পুনরায় চালু করুন।

আশা করি এটা কাজে লাগবে.

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.