মংডোব থেকে স্বচ্ছ_হেজপেজ / ডিফ্র্যাগ সতর্কতা কীভাবে এড়ানো যায়?


96

আমি মংডোব থেকে টিএইচপি সম্পর্কে নিম্নলিখিত সতর্কতাটি পেয়েছি

2015-03-06T21:01:15.526-0800 I CONTROL  [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/defrag is 'always'.
2015-03-06T21:01:15.526-0800 I CONTROL  [initandlisten] **        We suggest setting it to 'never'

তবে আমি ম্যানুয়ালি টিএইচপি বন্ধ করে দিয়েছি

frederick@UbuntuVirtual:~$ cat /sys/kernel/mm/transparent_hugepage/enabled
always madvise [never]
frederick@UbuntuVirtual:~$ cat /sys/kernel/mm/transparent_hugepage/defrag
always madvise [never]

আমি যোগ করে কৌতুক করেনি transparent_hugepage=neverথেকে GRUB_CMDLINE_LINUX_DEFAULT/etc/default/grubএবং যোগ

if test -f /sys/kernel/mm/transparent_hugepage/defrag; then
   echo never > /sys/kernel/mm/transparent_hugepage/defrag
fi

প্রতি /etc/rc.local

কীভাবে আমি পৃথিবীতে সতর্কতা এড়াতে পারি?


4
আমার একই সমস্যা ছিল, তবে মোংড সহ সমস্ত কিছু পুনরায় বুট করতে ভুলে গিয়েছি। আমি জানি এটি একটি মূ ?় প্রশ্ন হতে পারে তবে আপনি কি সবকিছু পুনরায় বুট করেছেন?
m8a

4
অপেক্ষা করুন ... আপনি মঙ্গোদ পরিষেবাটি আবার চালু করার অর্থ দিয়েছিলেন? ওহ ... আমি দৌড়ে গিয়েছিলাম sudo service mongod restartএবং সতর্কতা সবে গেছে! ধন্যবাদ! এটি আশ্চর্যজনক, কেন আমি কেবল ভিএম পুনরায় বুট করতে পারি না?
ফ্রেডেরিক জাং

4
কেন এটি পুনরায় বুট করা যায়নি তা নিশ্চিত নয়। তবে হ্যাঁ, আমি ডেমনটি পুনরায় চালু করতে চাইছিলাম। খুশী এটা কাজ করছে।
এম

7
এটি কোনও সমাধান নয়। রিবুট হওয়ার পরে আপনি এই সতর্কতাটি দেখার কারণটি হ'ল আপনার আরসি.লোকাল কার্যকর হওয়ার আগে মঙ্গো ডেমন শুরু হয়ে যায়। সিস্টেম বুটের পরে ডেমন পুনরায় চালু করা সমস্যার সমাধান করে, তবে পরের বার আপনি যখন আপনার ভিএম রিবুট করবেন তখন আপনি আবার সেই দুর্দান্ত সতর্কতাটি দেখতে পাবেন। দুর্ভাগ্যক্রমে আমি আপনাকে সমাধানটি দিতে পারছি না কারণ আমি এখনও এটি সন্ধান করছি।
সাইলনেট

4
@ ফ্রেডেরিক ৮৮৮ আপনি ভিএম রিবুট করলেও? পরিষেবাটি পুনরায় চালু করা সতর্কতাটি কেবল অস্থায়ীভাবে সমাধান করে। আরও তথ্যের জন্য এই সমস্যাটি দেখুন: jira.mongodb.org/browse/SERVER-17418
SileNT

উত্তর:


161

সরকারী মঙ্গোডিবি ডকুমেন্টেশন এই ইস্যুটির জন্য বেশ কয়েকটি সমাধান দেয়। আপনি এই সমাধানটিও চেষ্টা করতে পারেন , যা আমার পক্ষে কাজ করেছিল:

দ্রষ্টব্য: মোংগোডিবি সংস্করণ 3.0 এর চেয়ে বেশি হলে অফিসিয়াল ডকুমেন্টেশনের নির্দেশাবলী চেষ্টা করুন

  1. /etc/init.d/mongodফাইল খুলুন
    (যদি এরকম কোন ফাইল আপনি না পরীক্ষা পারে /etc/init.d/mongod, /etc/init/mongod.confফাইল - ক্রেডিট: মন্তব্যগুলি নীচে)

  2. নীচের লাইনগুলি অবিলম্বে chown $DAEMONUSER /var/run/mongodb.pidএবং তার আগে যুক্ত করুন end script

  3. পুনরায় চালু করুন mongod( service mongod restart)।

যুক্ত করার জন্য এখানে লাইনগুলি রয়েছে /etc/init.d/mongod:

if test -f /sys/kernel/mm/transparent_hugepage/enabled; then
   echo never > /sys/kernel/mm/transparent_hugepage/enabled
fi
if test -f /sys/kernel/mm/transparent_hugepage/defrag; then
   echo never > /sys/kernel/mm/transparent_hugepage/defrag
fi

এটাই!


দুঃখিত যে আমি তাত্ক্ষণিকভাবে আপনার উত্তর গ্রহণ করি নি। আমি rc.local এ যুক্ত লাইনগুলিকে মন্তব্য করেছি এবং আপনার সমাধানটি চেষ্টা করেছি এবং এটি আমার পক্ষেও কার্যকর হয়েছে। ধন্যবাদ!
ফ্রেডরিক জাং

6
ভাল, আমি একটি /etc/init/mongod.conf ফাইলটি খুঁজে পেলাম না, তবে আমি "etc/init.d/mongod স্ক্রিপ্ট ফাইলটিতে এই লাইনগুলি যুক্ত করেছি, প্রতিধ্বনি "স্টার্টিং ..." লাইনের ঠিক আগে, এবং এটি আমার জন্য কাজ করে
সাগি মন

4
দুর্দান্ত সমাধান! উবুন্টু 14.04 তে কাজ করে এবং 3. mongod
অকার্যকর

4
এটি কাজ করে উবুন্টু ব্যবহারকারীদের জন্য /etc/init/mongod.conf এর বিকল্প এন্ট্রি যুক্ত করুন। গ্রাসিয়াস।
জেসন সেব্রিং

আমি উবুন্টুতে মংডোডব ব্যবহার করছি যেখানে আমার কনফারেশন ফাইলটি YAML ফর্ম্যাটে রয়েছে। সেখানে কি কোনও বিকল্প সমাধান প্রযোজ্য?
প্রদীশ জৈন


10

উবার্টু 14.04 আপস্টার্ট ব্যবহার করে:

যেহেতু আমরা জবাবদিহি দিয়ে মেশিন স্থাপন করছি আমি আরসি ফাইল বা GRUB কনফিগারেশন সংশোধন করতে পছন্দ করি না।

আমি দ্রুত চেষ্টা করার সময় sysfsutils/ sysfs.confবা ধীর মেশিনগুলিতে পরিষেবাগুলি চালু করার সময় / তবে সময় সংক্রান্ত সমস্যাগুলিতে ছুটে এসেছি । দেখে মনে হচ্ছিল কখনও কখনও সিঙ্গফুস্টিলের আগে মঙ্গোদ শুরু হয়েছিল। কখনও কখনও এটি কাজ করে, কখনও কখনও এটি করেনি।

যেহেতু মংডোড একটি আপস্টার্ট প্রক্রিয়া আমি দেখতে পেয়েছি যে সবচেয়ে পরিষ্কার সমাধানটি /etc/init/mongod_vm_settings.confনিম্নলিখিত বিষয়বস্তু সহ ফাইল যুক্ত করা ছিল :

# Ubuntu upstart file at /etc/init/mongod_vm_settings.conf
#
#   This file will set the correct kernel VM settings for MongoDB
#   This file is maintained in Ansible

start on (starting mongod)
script
  echo "never" > /sys/kernel/mm/transparent_hugepage/enabled
  echo "never" > /sys/kernel/mm/transparent_hugepage/defrag
end script

এটি স্ক্রিপ্টটি মঙ্গোদ শুরু হওয়ার ঠিক আগে চলবে। মঙ্গোদ পুনরায় চালু করুন ( sudo service mongod restart) এবং সম্পন্ন হয়েছে।


8
  1. খুলুন / ইত্যাদি / ডিফল্ট / গ্রাব

    sudo vi / etc / default / grub


  2. GRUB_CMDLINE_LINUX_DEFAULT = "" GRUB_CMDLINE_LINUX_DEFAULT = "স্বচ্ছ_হাগেজেজ = কখনই" আপডেট করুন

  3. ফাইল সংরক্ষণ করুন
    : ডাব্লিউকিউ (vi মধ্যে)
  4. আপডেট-গ্রাব চালান

    sudo আপডেট-গ্রাব

  5. মেশিন রিবুট করুন

আপডেট: আপনি যদি ভার্চুয়াল হোস্টিং সরবরাহকারী ব্যবহার করেন তবে এটি কাজ করবে আইএফএফ গ্রাব বুট সমর্থিত। ডিজিটাল ওশান গ্রাব বুট সমর্থন করে না।


4
এটি আমার পক্ষে কাজ করে না ... (হ্যাঁ, আমার নিজস্ব লিনাক্স মেশিন রয়েছে, গ্রাব বুট সহ) ... :(
পিয়ারপোলো সিরা

4
মনে রাখবেন যে আপনি যদি এখানে উল্লিখিত কিছু সমাধানগুলি ব্যবহার করেন, এমন কোনও সিস্টেমে যেটি 'টিউনড' চালায় তবে সুরযুক্ত সমাধানগুলি ওভাররাইড করতে পারে। আরও তথ্যের জন্য এখানে দেখুন: bugzilla.redhat.com/show_bug.cgi?id=1189868
দেজয় ক্লেটন

5

যাচাই করা হয়েছে যে ডিফলাগ সক্ষম করাটিকে বিবেচনা না করে পরীক্ষা করা হয়:

$ cat /sys/kernel/mm/transparent_hugepage/enabled
always madvise [never]
$ cat /sys/kernel/mm/transparent_hugepage/defrag
[always] madvise never
$ service mongod start
... (in log) WARNING: /sys/kernel/mm/transparent_hugepage/defrag is 'always'
$ echo 'never' > /sys/kernel/mm/transparent_hugepage/defrag
$ cat /sys/kernel/mm/transparent_hugepage/defrag
always madvise [never]
$ service mongod stop
$ service mongod start
... (no warning in log)

অতএব, এই বাগের ফিক্সটি হ'ল প্রথমে স্বচ্ছ_পরে / সক্ষমিত সন্ধান করা হবে এবং যদি তা কখনও না হয় তবে অপ্রাসঙ্গিক স্বচ্ছ_পরে / ডিফ্র্যাগ সেটিংটি দেখে বিরক্ত করবেন না।

উত্স


ওরাকল লিনাক্স on-এ কাজ করা, প্রস্তাবিত পরিবর্তনের পরে ডিফ্র্যাগ কখনই চলে যায় না ... অবশেষে ত্রাণের এক দীর্ঘশ্বাস !! এই উত্তর আরও upvotes প্রয়োজন !! আমি এটি খনন 4 ঘন্টা ব্যয়।
জ্ঞানানা

4

উবুন্টু 16.04 সিস্টেমড ব্যবহার করে:

systemctl edit mongod

নিম্নলিখিত পেস্ট করুন:

[Service]
PermissionsStartOnly=true
ExecStartPre=/bin/sh -c "echo never > /sys/kernel/mm/transparent_hugepage/enabled"
ExecStartPre=/bin/sh -c "echo never > /sys/kernel/mm/transparent_hugepage/defrag"

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