คำแนะนำโดยละเอียดนี้จะนำคุณทีละขั้นตอนผ่านกระบวนการใช้ dstat เพื่อตรวจสอบเซิร์ฟเวอร์ Linux (หรือ Unix) ของคุณ
หากคุณมีเซิร์ฟเวอร์ Linux ที่ทำงานอยู่ที่สำนักงานของคุณหรือที่ศูนย์ข้อมูลที่คุณรับผิดชอบ คุณต้องการรักษาเวลาทำงานให้เกือบร้อยเปอร์เซ็นต์ ในกรณีเช่นนี้ คุณต้องการให้แน่ใจว่าคุณคอยดูว่าระบบทำงานอย่างไร เพื่อความชัดเจน คุณต้องการตรวจสอบทรัพยากรระบบทั้งหมดที่ช่วยให้ระบบทำงานได้ดีซึ่งจะส่งผลให้มีเวลาทำงานสูง หน่วยความจำ, CPU, การใช้ดิสก์... คือสิ่งที่คุณต้องการสังเกต โดยปกติเราจะใช้เครื่องมือที่มาพร้อมกับการติดตั้ง Linux หรือ UNIX เช่น "ฟรี", "บนสุด", "vmstat"... ฉันจะแนะนำคุณให้รู้จักกับเครื่องมือที่ให้ข้อมูลทั้งหมดที่ เครื่องมืออื่น ๆ ที่รวมกันให้คุณทั้งหมดภายใต้หลังคาเดียวกัน - Dstat นักพัฒนาเครื่องมือบรรทัดคำสั่ง Dag Wieers เรียกมันว่า "การแทนที่ที่หลากหลายสำหรับ vmstat, iostat, netstat และ ifstat" เขาเสริมว่า "Dstat เอาชนะข้อ จำกัด บางอย่างและเพิ่มคุณสมบัติพิเศษบางอย่าง ... " สำหรับฉัน Dstat เป็นแม่ของเครื่องมือตรวจสอบระบบบรรทัดคำสั่งทั้งหมด ติดตั้งง่าย ใช้งานง่าย ปรับแต่งได้ง่าย และสร้างรายงานที่คุณสามารถพล็อตเป็นกราฟเพื่อสร้างความประทับใจให้เจ้านายของคุณ
การติดตั้ง Dstat
เริ่มต้นด้วยการดาวน์โหลดตัวติดตั้ง Dstat ชี้เว็บเบราว์เซอร์ของคุณไปที่หน้าแรกของโครงการ Dstat – https://dag.wieers.com/home-made/dstat/ เลื่อนลงไปที่ส่วนของหน้าที่มีรายการดาวน์โหลด เลือกรสชาติของ Linux ที่คุณต้องการติดตั้งแอปพลิเคชันแล้วคลิกลิงก์ดาวน์โหลด ตอนนี้ให้ดาวน์โหลด Dstat เวอร์ชันล่าสุดสำหรับเวอร์ชันของการแจกจ่าย Linux ที่คุณใช้งานอยู่ ฉันจะแสดงวิธีดำเนินการกับเครื่อง Red Hat Enterprise Linux เวอร์ชัน 4:
# wget https://dag.wieers.com/rpm/packages/dstat/dstat-0.6.6-1.el4.rf.noarch.rpm
ตอนนี้ติดตั้ง Dstat:
# รอบต่อนาที -Uvh dstat-0.6.6-1.el4.rf.noarch.rpm
หากการติดตั้งดำเนินไปโดยไม่มีข้อผิดพลาด แสดงว่าคุณได้ติดตั้ง Dstat แล้วและพร้อมใช้งาน หากมีการขึ้นต่อกันที่เกิดขึ้นระหว่างการติดตั้ง ให้ติดตั้งแพ็คเกจที่จำเป็นแล้วลองอีกครั้ง ฉันไม่คิดว่า Dstat มีการพึ่งพามากเกินไป ดังนั้นคุณไม่ควรประสบปัญหาใดๆ
การใช้ Dstat
ด้วย Dstat ที่ติดตั้งบนระบบของคุณ คุณน่าจะพร้อมแล้ว เริ่มต้นด้วยการเปิดคำสั่งจากเทอร์มินัล:
# dstat
ผลลัพธ์ที่ได้จะเป็นดังนี้ กดคีย์ผสมของ ctrl+c เพื่อออก
# dstat
—-total-cpu-usage—- -disk/total -net/total- —paging– —system–
usr sys idl wai hiq siq|_read เขียน|_recv _send|__in_ _out_|_int_ _csw_
7 1 91 1 0 0| 0 0 | 0 0 | 0 0 | 0 0
1 0 99 0 0 0| 0 0 | 0 0 | 0 0 |1051 1945
0 0 100 0 0 0| 0 12k|2269B 11.2k| 0 0 |1031 1923
1 0 99 0 0 0| 0 40k| 0 0 | 0 0 |1078 2235
0 0 100 0 0 0| 0 16k|6027B 21.5k| 0 0 |1008 2219
มีตัวเลือกมากมายสำหรับ Dstat ดังที่ได้กล่าวไว้ก่อนหน้านี้ Dstat นั้นค่อนข้างง่ายในการปรับแต่ง ดังนั้น หากคุณต้องการจำกัดการอ่านข้อมูลไว้ที่ CPU, ดิสก์ และเครือข่าย ให้เรียกใช้คำสั่งต่อไปนี้:
# dstat -CDN
-disk/total -net/total- —paging– —system–
_read write|_recv _send|__in_ _out_|_int_ _csw_
0 0 | 0 0 | 0 0 | 0 0
0 12k|2295B 9603B| 0 0 |1053 2500
0 0 | 594B 0 | 0 0 |1002 1893
0 960k| 292B 3346B| 0 0 |1072 2012
0 4096B| 64B 0 | 0 0 |1031 1939
คุณจะพบตัวเลือกเพิ่มเติมในเอกสารช่วยเหลือของแอปพลิเคชัน ซึ่งคุณสามารถเข้าถึงได้โดยป้อนข้อมูลต่อไปนี้:
# dstat -h
เล่นกับตัวเลือกเล็กน้อยเพื่อให้คุณคุ้นเคยกับมัน ช่วงเวลาเริ่มต้นระหว่างการอ่านข้อมูลคือสองวินาที คุณสามารถเปลี่ยนช่วงเวลานั้นได้หากต้องการ หากต้องการเพิ่มช่วงเวลาเป็นสิบวินาที ให้ป้อนดังต่อไปนี้:
# dstat 10
คุณลักษณะที่มีประโยชน์อีกอย่างหนึ่งคือการรับการอัปเดตแบบรวมสำหรับแต่ละรายการ ดังนั้น คุณสามารถให้ Dstat อัปเดตทุก ๆ สิบวินาทีในบรรทัดใหม่ แต่เมื่อข้อมูลเปลี่ยนแปลง บรรทัดของคุณจะได้รับการอัปเดตทุก ๆ วินาที
คุณอาจต้องการให้ Dstat ให้การอัปเดตห้าครั้งแก่คุณด้วยความถี่สามวินาที คุณจะทำอย่างนั้นได้อย่างไร:
# dstat 3 5
—-total-cpu-usage—- -disk/total -net/total- —paging– —system–
usr sys idl wai hiq siq|_read เขียน|_recv _send|__in_ _out_|_int_ _csw_
3 1 95 2 0 0| 0 0 | 0 0 | 0 0 | 0 0
2 11 87 1 0 0| 0 180k|2581B 3239B| 0 0 |1136 697
7 8 85 0 0 0| 0 0 | 115k 106k| 0 0 |1603 3985
2 1 98 0 0 0| 0 0 |77.5k 170k| 0 0 |1744 3856
1 0 100 0 0 0| 0 0 |3451B 9993B| 0 0 |1045 149
2 1 94 4 0 0 | 0 276k|20.4k 31.1k| 0 0 |1219 804
คุณลักษณะที่ฉันพบว่ามีประโยชน์มากที่สุดคือผลลัพธ์ Dstat ช่วยให้คุณมีเอาต์พุตของเซสชันที่เขียนลงในไฟล์ที่คั่นด้วยเครื่องหมายจุลภาค ซึ่งสามารถนำเข้าสู่แอปพลิเคชันสเปรดชีต เช่น Microsoft Excel ได้ในภายหลัง และข้อมูลสามารถพล็อตลงในกราฟได้ วิธีใช้งาน
# dstat –output /tmp/dstat_data.csv -CDN
ให้คำสั่งดังกล่าวทำงานในขณะที่คุณเรียกใช้แอปพลิเคชันหรือทำการทดสอบบนเครื่องนี้ กดคีย์ผสมของ ctrl+c เมื่อคุณทำเสร็จแล้ว เปิดไฟล์ dstat_data.csv ด้วยแอปพลิเคชันสเปรดชีต เช่น Microsoft Excel หรือ Open Office จากนั้นคุณสามารถเลือกคอลัมน์ที่คุณต้องการพล็อตเป็นกราฟและปล่อยให้แอปพลิเคชันสเปรดชีตของคุณจัดการได้
รับรายงานทางไปรษณีย์
อาจมีบางกรณีที่คุณต้องการสังเกตว่าเซิร์ฟเวอร์ของคุณทำงานเป็นอย่างไรในช่วงระยะเวลาหนึ่ง คุณสามารถตั้งค่ากระบวนการพื้นหลังใน Linux ที่จะให้คุณอ่านในช่วงเวลาหนึ่ง สร้างรายงาน และส่งไฟล์ให้คุณทางไปรษณีย์ สิ่งนี้มีประโยชน์อย่างยิ่งในระหว่างการทดสอบความเครียด นี่คือวิธีที่คุณสามารถทำได้ สคริปต์ต่อไปนี้จะเรียกใช้ Dstat เป็นเวลาสามชั่วโมง โดยจะอ่านข้อมูลทุกๆ 30 วินาที และจะส่งรายงานไปที่ [email protected]
#!/bin/bash
dstat –output /tmp/dstat_data_mail.csv -CDN 30 360
mutt -a /tmp/dstat_data_mail.csv -s “รายงาน Dstat สำหรับการทำงาน 3 ชั่วโมง” me@myemailid com
บันทึกสคริปต์ด้านบนในไฟล์ชื่อ dstat_script.sh บนเซิร์ฟเวอร์ของคุณ ให้สิทธิ์ปฏิบัติการ จากนั้นเรียกใช้เป็นกระบวนการพื้นหลัง:
# chmod +x dstat_script.sh
# nohup ./dstat_script.sh &
เสร็จแล้ว. ใช่ มันง่ายมาก คุณจะได้รับรายงานนี้ทางไปรษณีย์หลังจากดำเนินการเสร็จสิ้น คุณสามารถเลือกกำหนดเวลาสคริปต์นี้เป็นงาน cron รายวัน เพื่อให้คุณสามารถรับข้อมูลนี้ได้ทุกวัน
อย่างที่คุณอาจทราบแล้วว่า Dstat เป็นเครื่องมือที่ยอดเยี่ยมเมื่อนำไปใช้กับการตรวจสอบประสิทธิภาพและการดีบัก ความละเอียด ความถี่ และลักษณะของข้อมูลที่รวบรวมนั้นขึ้นอยู่กับคุณโดยสมบูรณ์ Dstat ช่วยให้คุณรู้ว่าเกิดอะไรขึ้นบนเซิร์ฟเวอร์ของคุณ ใช้พลังนี้อย่างชาญฉลาดอาจทำให้คุณนอนไม่หลับได้มาก