কী প্রক্রিয়াটি আমার সমস্ত ডিস্ক আইও ব্যবহার করছে


120

যদি আমি "শীর্ষ" ব্যবহার করি তবে আমি দেখতে পাচ্ছি যে সিপিইউ কী ব্যস্ত এবং কোন প্রসেসটি আমার সমস্ত সিপিইউ ব্যবহার করছে।

আমি যদি "আইওস্ট্যাট-এক্স" ব্যবহার করি তবে দেখতে পাচ্ছি কোন ড্রাইভটি ব্যস্ত।

তবে কীভাবে দেখব যে কোনও প্রক্রিয়াটি ড্রাইভের সমস্ত থ্রুটপুট ব্যবহার করছে?


2
ঠিক আছে, প্রযুক্তিগতভাবে এটি লিনাক্সের ক্ষেত্রেও সত্য, যেহেতু ব্যবহারকারীরা কেবল পৃষ্ঠা ক্যাশে পৃষ্ঠাগুলি পরিবর্তন করে ...;)
ড্যামন

আমার কাছে কেবলমাত্র প্রশ্ন ছিল এবং আমি যে উত্তরটি খুঁজছিলাম তা কিন্তু এই ধরণের প্রশ্নটি সুপার ইউজারের সাথে আরও ভাল ফিট করে না?
জিটা দুই

এবং এই কারণেই লিনাক্স সোলারিস এবং ম্যাকোএসের থেকে নিকৃষ্ট, কারণ তাদের মধ্যে এটির নকশাগুলি নির্মিত হয়েছে যা এই তুচ্ছভাবে সন্ধান করতে পারে: - /
থরবজর্ন রাভন অ্যান্ডারসন

উত্তর:


162

আপনি খুঁজছেন iotop(ধরে নিলেন কার্নেল> 2.6.20 এবং পাইথন 2.5) পেয়েছেন। এটি ব্যর্থ হয়ে আপনি ফাইল সিস্টেমে ঝুঁকছেন। আমি প্রাক্তন সুপারিশ।


8
iotopপ্রক্রিয়াগুলি দ্বারা গ্রাহিত আইওপিএসের সংখ্যার চেয়ে আই / ও ব্যান্ডউইথটি প্রদর্শিত হচ্ছে বলে মনে হচ্ছে। এটি অত্যন্ত প্রাসঙ্গিক নয়। প্রচুর ছোট লেখার + সিঙ্ক করার প্রক্রিয়াটি উচ্চ গতির সাথে ডেটাগুলির একটি বৃহত সংযুক্ত ব্যাচ লেখার প্রক্রিয়ার চেয়ে ডিস্কের আইও ক্ষমতা বেশি গ্রহণ করবে।
আর্নাড লে ব্ল্যাঙ্ক

ছোট বলে গেছেন সব আমি দেখেছি ছিল [jdb2/nvme0n1p1]iotop মধ্যে, কিন্তু আমি জন্য / proc / sys / vm / block_dump এবং একটি সুস্থ / স্থিতিশীল সিস্টেম আউটপুট তুলনা সক্রিয় সঙ্গে ভাগ্যবান lxadm.com/Simple_filesystem_read/write_tracing_with_/proc/sys/... এটা সাহায্য করেছে খোঁজ একটি ডকার কনটেইন যা ক্রমাগত কুবেটেল অনুরোধগুলি তৈরি করে যাচ্ছিল, এতে প্রবেশের সাথে একটি ইবিএস ভলিউমের ফাটানো ক্রেডিট ক্লান্ত করেছে /home/spinnaker/.kube/cache/discovery/.../serverresources.json। একবার আপনি কোনও ব্যবহারকারীর / প্রক্রিয়া নামের কাছে জিনিসগুলি সংকুচিত করার পরে এমন কিছু iotop -atku systemd-network | grep kubectlসহায়তা করতে পারে
গ্রেগ ব্রে

16

রাষ্ট্র 'ডি' (ডিস্কের প্রতিক্রিয়ার অপেক্ষায়) কোন প্রক্রিয়াগুলি বর্তমানে চলছে তা সন্ধানের জন্য:

while true; do date; ps aux | awk '{if($8=="D") print $0;}'; sleep 1; done

অথবা

watch -n1 -d "ps axu | awk '{if (\$8==\"D\") {print \$0}}'"

Wed Aug 29 13:00:46 CLT 2012
root       321  0.0  0.0      0     0 ?        D    May28   4:25  \_ [jbd2/dm-0-8]
Wed Aug 29 13:00:47 CLT 2012
Wed Aug 29 13:00:48 CLT 2012
Wed Aug 29 13:00:49 CLT 2012
Wed Aug 29 13:00:50 CLT 2012
root       321  0.0  0.0      0     0 ?        D    May28   4:25  \_ [jbd2/dm-0-8]
Wed Aug 29 13:00:51 CLT 2012
Wed Aug 29 13:00:52 CLT 2012
Wed Aug 29 13:00:53 CLT 2012
Wed Aug 29 13:00:55 CLT 2012
Wed Aug 29 13:00:56 CLT 2012
root       321  0.0  0.0      0     0 ?        D    May28   4:25  \_ [jbd2/dm-0-8]
Wed Aug 29 13:00:57 CLT 2012
root       302  0.0  0.0      0     0 ?        D    May28   3:07  \_ [kdmflush]
root       321  0.0  0.0      0     0 ?        D    May28   4:25  \_ [jbd2/dm-0-8]
Wed Aug 29 13:00:58 CLT 2012
root       302  0.0  0.0      0     0 ?        D    May28   3:07  \_ [kdmflush]
root       321  0.0  0.0      0     0 ?        D    May28   4:25  \_ [jbd2/dm-0-8]
Wed Aug 29 13:00:59 CLT 2012
root       302  0.0  0.0      0     0 ?        D    May28   3:07  \_ [kdmflush]
root       321  0.0  0.0      0     0 ?        D    May28   4:25  \_ [jbd2/dm-0-8]
Wed Aug 29 13:01:00 CLT 2012
root       302  0.0  0.0      0     0 ?        D    May28   3:07  \_ [kdmflush]
root       321  0.0  0.0      0     0 ?        D    May28   4:25  \_ [jbd2/dm-0-8]
Wed Aug 29 13:01:01 CLT 2012
root       302  0.0  0.0      0     0 ?        D    May28   3:07  \_ [kdmflush]
root       321  0.0  0.0      0     0 ?        D    May28   4:25  \_ [jbd2/dm-0-8]
Wed Aug 29 13:01:02 CLT 2012
Wed Aug 29 13:01:03 CLT 2012
root       321  0.0  0.0      0     0 ?        D    May28   4:25  \_ [jbd2/dm-0-8]

ফলাফল থেকে আপনি দেখতে পাচ্ছেন, jdb2 / dm-0-8 (ext4 জার্নাল প্রক্রিয়া), এবং kdmflush আপনার লিনাক্সকে নিয়মিতভাবে অবরুদ্ধ করে রাখে।

আরও তথ্যের জন্য এই URL টি সহায়ক হতে পারে: লিনাক্স অপেক্ষা করুন-আইও সমস্যা


11

atop এছাড়াও ভাল কাজ করে এবং এমনকি পুরানো CentOS 5.x সিস্টেমে সহজে ইনস্টল করে যা আইটোপ চালাতে পারে না। সাহায্যের জন্য dডিস্কের বিশদ প্রদর্শন করতে আঘাত করুন ?

ATOP - mybox                           2014/09/08  15:26:00                           ------                            10s elapsed
PRC |  sys    0.33s |  user   1.08s |                | #proc    161  |  #zombie    0 |  clones    31 |                | #exit         16  |
CPU |  sys   4% |  user     11% |  irq       0%  | idle    306%  |  wait     79% |               |  steal     1%  | guest     0%  |
cpu |  sys   2% |  user      8% |  irq       0%  | idle     11%  |  cpu000 w 78% |               |  steal     0%  | guest     0%  |
cpu |  sys   1% |  user      1% |  irq       0%  | idle     98%  |  cpu001 w  0% |               |  steal     0%  | guest     0%  |
cpu |  sys   1% |  user      1% |  irq       0%  | idle     99%  |  cpu003 w  0% |               |  steal     0%  | guest     0%  |
cpu |  sys   0% |  user      1% |  irq       0%  | idle     99%  |  cpu002 w  0% |               |  steal     0%  | guest     0%  |
CPL |  avg1    2.09 |  avg5    2.09 |  avg15   2.09  |               |  csw    54184 |  intr   33581 |                | numcpu     4  |
MEM |  tot     8.0G |  free   81.9M |  cache   2.9G  | dirty   0.8M  |  buff  174.7M |  slab  305.0M |                |               |
SWP |  tot     2.0G |  free    2.0G |                |               |               |               |  vmcom   8.4G  | vmlim   6.0G  |
LVM |  Group00-root |  busy     85% |  read       0  | write  30658  |  KiB/w      4 |  MBr/s   0.00 |  MBw/s  11.98  | avio 0.28 ms  |
DSK |          xvdb |  busy     85% |  read       0  | write  23706  |  KiB/w      5 |  MBr/s   0.00 |  MBw/s  11.97  | avio 0.36 ms  |
NET |  transport    |  tcpi    2705 |  tcpo    2008  | udpi      36  |  udpo      43 |  tcpao     14 |  tcppo     45  | tcprs      1  |
NET |  network      |  ipi     2788 |  ipo     2072  | ipfrw      0  |  deliv   2768 |               |  icmpi      7  | icmpo     20  |
NET |  eth0    ---- |  pcki    2344 |  pcko    1623  | si 1455 Kbps  |  so  781 Kbps |  erri       0 |  erro       0  | drpo       0  |
NET |  lo      ---- |  pcki     423 |  pcko     423  | si   88 Kbps  |  so   88 Kbps |  erri           0 |  erro       0  | drpo       0  |
NET |  eth1    ---- |  pcki  22 |  pcko      26  | si    3 Kbps  |  so    5 Kbps |  erri       0 |  erro       0  | drpo       0  |

  PID                   RDDSK                    WRDSK                   WCANCL                    DSK                   CMD        1/1
 9862                      0K                   53124K                       0K                    98%                   java
  358                      0K                     636K                       0K                     1%                   jbd2/dm-0-8
13893                      0K                     192K                      72K                     0%                   java
 1699                      0K                      60K                       0K                     0%                   syslogd
 4668                      0K                      24K                       0K                     0%                   zabbix_agentd

এটি পরিষ্কারভাবে দেখায় যে জাভা পিড 9862 দোষী।


4

টি এল; ডিআর

আপনি যদি ব্যবহার করতে পারেন iotopতবে তা করুন। অন্যথায় এটি সাহায্য করতে পারে।


ব্যবহার করুন top, তারপরে এই শর্টকাটগুলি ব্যবহার করুন :

d 1 = set refresh time from 3 to 1 second

1   = show stats for each cpu, not cumulated

> 1.0 waএটিতে কমপক্ষে একটি কোরের মানগুলি দেখাতে হবে - যদি কোনও ডিস্কুইট না থাকে তবে কেবল কোনও আইও লোড নেই এবং আরও তদন্ত করার প্রয়োজন নেই। উল্লেখযোগ্য বোঝা সাধারণত শুরু হয় > 15.0 wa

x       = highlight current sort column 
< and > = change sort column
R       = reverse sort order

প্রক্রিয়া স্থিতি কলাম 'এস' চয়ন করুন। সাজানোর ক্রমটি বিপরীত করুন যাতে উপরে 'আর' (চলমান) প্রক্রিয়াগুলি প্রদর্শিত হয়। আপনি যদি 'ডি' প্রক্রিয়াগুলি (ডিস্কের অপেক্ষায়) চিহ্নিত করতে পারেন তবে আপনার অপরাধী কী হতে পারে তার একটি সূচক রয়েছে।


3

কে-ডি-ই ব্যবহারকারীদের জন্য আপনি 'সিটিআরএল-এস্ক' শীর্ষে কল করতে পারেন সিস্টেম অ্যাক্রিভিটি মনিটর এবং প্রসেস আইডি এবং নাম সহ আই / ও ক্রিয়াকলাপ চার্ট রয়েছে।

'নতুন ব্যবহারকারীর অবস্থা' এর কারণে আমার কাছে চিত্র আপলোড করার অনুমতি নেই তবে আপনি নীচের চিত্রটি দেখতে পারেন। এটিতে আইও পড়ার এবং লেখার জন্য একটি কলাম রয়েছে।


2

আপনি বিবেচনা করেছেন lsof(ফাইলগুলির তালিকা খুলুন)?


3
এটি কেবল প্রতিটি ফাইলের জন্য এমবি / গুলি নয়, খোলার ফাইল হ্যান্ডলগুলি দেখায়। iotop এটি করে।
অলিগোফ্রেন

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