কেওয়ার্কার + 90% আইও এবং জিরো ডিস্ক লেখার গ্রাস করছে


22

এটি এডাব্লুএস লিনাক্স এএমআই + ইবিএসের একটি স্ট্যান্ডার্ড অ্যাপাচি ওয়েব সার্ভার। আমরা উচ্চ লোড গড় (+8) এবং দেখছি iotop -a:

Total DISK READ: 0.00 B/s | Total DISK WRITE: 2.37 M/s

  TID  PRIO  USER     DISK READ  DISK WRITE  SWAPIN     IO>    COMMAND             
 3730 be/4 root          0.00 B      0.00 B  0.00 % 91.98 % [kworker/u8:1]
  774 be/3 root          0.00 B   1636.00 K  0.00 % 15.77 % [jbd2/xvda1-8]
 3215 be/4 apache        0.00 B     40.39 M  0.00 %  0.88 % httpd
 3270 be/4 apache        0.00 B     38.20 M  0.00 %  0.93 % httpd
 2770 be/4 apache        0.00 B     46.86 M  0.00 %  0.71 % httpd

যখন অ্যাপাচি ডাউন হয়, কে ওয়ার্কার এবং জেবিডি 2 নীচে থাকে।

আমাদের প্রচুর র‍্যাম উপলভ্য হওয়ায় সার্ভার অদলবদল করছে না। আমি ডেটাবেস সার্ভার সম্পর্কিত এই সমস্যাটি দেখেছি, তবে কিছুই কেবল আপাচে বিচ্ছিন্ন নয়।

কীভাবে এটি আরও নির্ণয় করা যায় এবং এটি প্রতিরোধ করবেন তার কোনও ধারণা?

আপডেট 1: পারফ রিপোর্ট (পারফেক্ট রেকর্ড -g- একটি ঘুম 10)

Samples: 114K of event 'cpu-clock', Event count (approx.): 28728500000
-  83.58%          swapper  [kernel.kallsyms]         [k] xen_hypercall_sched_op                                          ◆
   + xen_hypercall_sched_op                                                                                               ▒
   + default_idle                                                                                                         ▒
   + arch_cpu_idle                                                                                                        ▒
   - cpu_startup_entry                                                                                                    ▒
        70.16% cpu_bringup_and_idle                                                                                       ▒
      - 29.84% rest_init                                                                                                  ▒
           start_kernel                                                                                                   ▒
           x86_64_start_reservations                                                                                      ▒
           xen_start_kernel                                                                                               ▒
+   1.73%            httpd  [kernel.kallsyms]         [k] __d_lookup_rcu                                                  ▒
+   1.08%            httpd  [kernel.kallsyms]         [k] xen_hypercall_xen_version                                       ▒
+   0.38%            httpd  [vdso]                    [.] 0x0000000000000d7c                                              ▒
+   0.36%            httpd  libphp5.so                [.] zend_hash_find                                                  ▒
+   0.33%            httpd  libphp5.so                [.] _zend_hash_add_or_update                                        ▒
+   0.25%            httpd  libc-2.17.so              [.] __memcpy_ssse3                                                  ▒
+   0.24%            httpd  libphp5.so                [.] _zval_ptr_dtor                                                  ▒
+   0.24%            httpd  [kernel.kallsyms]         [k] __audit_syscall_entry                                           ▒
+   0.22%            httpd  [kernel.kallsyms]         [k] pvclock_clocksource_read                                        ▒

3
সমস্যা সমাধানের পদক্ষেপ হিসাবে কেওয়ার্কার কী করছে তা জানতে আপনি পারফ ব্যবহার করতে চাইতে পারেন
ডেভিড শোয়ার্জ

কে ওয়ার্কারের আচরণ প্রযুক্তিগতভাবে আকর্ষণীয়, তবে আমি আশ্চর্য হয়েছি কেন আপাচি থ্রেডগুলি ডিস্কে মেগাবাইট লিখছে। ধরে নিলাম যে 2MB / গুলি ব্যাখ্যা করে, কোনও ওয়েব সার্ভারের জন্য এটি উচ্চ নয়? তারপরে যে কোনও ফাইল লিখিত হচ্ছে তা সনাক্ত করতে পারে, যেমন strace -p(এবং সম্ভবত lsof) এবং এটি আকর্ষণীয় কিছু দেখায় কিনা তা দেখুন।
সোর্সজেদি

1
এটি কি কোনও সুযোগে অদলবদল হচ্ছে?
গ্রিজলি

1
sendfileজিরো কপির সুবিধা নিতে অ্যাপাচে সক্ষম করার চেষ্টা করুন ।
fgbreel

1
@ ব্যবহারকারী 2383712 এই সমস্যাটি আপনার মেঘের সাথে সম্পর্কিত হতে পারে "প্রতিবেশী" আপনি এই সমস্যাটি সম্পর্কে আউসের সাথে যোগাযোগ করতে পারেন, যদি হাইপারভাইজারকে পরিবর্তন করার জন্য আপনি দারুণভাবে চেষ্টা করার চেষ্টা না করেন, অতীতে আমারও এই সমস্যা ছিল।
অ্যালিন আন্দ্রেই

উত্তর:


5

100% IO এর অর্থ এটি আপনার সমস্ত আইও ক্রিয়াকলাপ ব্যবহার করছে না। এর অর্থ এটি IO এর অপেক্ষা ছাড়া কিছুই করছে না। অতএব, নিম্ন / শূন্য ডিস্ক ব্যান্ডউইথ সহ উচ্চ% IO স্বাভাবিক হতে পারে।

man iotop:

[...] এটি থ্রেড / প্রক্রিয়া অদলবদল করার সময় এবং আই / ও-তে অপেক্ষা করার সময় ব্যয় করেছে এমন শতাংশের পরিমাণও প্রদর্শন করে।

আপনার kworkerআইওতে চিরকালের জন্য অপেক্ষা করা থাকলে এটি অন্যরকম সমস্যা হতে পারে তবে আমি জানি না। সম্ভবত এটি কোনও পাইপ বা অন্য কিছুতে অপেক্ষা করার কথা। আমি kworkerকখনও কখনও আমার সার্ভারে একই কাজ করতে দেখি এবং এটি কোনও সমস্যা বলে মনে হয় না। (আমি প্রথমবার দেখেও আতঙ্কিত হয়েছি))


1
এটি একটি ভাগ করা পরিবেশেও রয়েছে, যেখানে তারা সকলেই একই স্টোরেজ অ্যারে অ্যাক্সেস করে। এটি একটি ব্যস্ত ডিস্কের একটি চিহ্ন (যার মধ্যে ভিএম সম্ভবত কার্যকরভাবে বিচ্ছিন্ন হওয়ার কারণে এটি সম্পর্কে কিছু জানেন না)। ডেডিকেটেড হার্ডওয়ারে, এটি প্রচুর চেষ্টা করে আবার ব্যর্থ হওয়া ডিস্ক হওয়ার সম্ভাবনা বেশি থাকে। নেটওয়ার্কে মাউন্ট করা অ্যাক্সেসে এর অর্থ একটি খারাপ লিঙ্কের পাশাপাশি NAS / টার্গেট সাইড কনজেশন can
স্পুলার
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.