การแก้ไขปัญหาเกี่ยวกับ VxVerify ระหว่างการอัพเกรดสําหรับ Dell VxRail

Summary: วิธีแก้ไขปัญหาทั่วไปที่อาจเกิดขึ้นขณะเรียกใช้ VxVerify เพื่อตรวจสอบการอัพเกรด Dell VxRail ล่วงหน้า

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Symptoms

บทความ KB นี้มีไว้สําหรับการแก้ไขปัญหาที่ป้องกันไม่ให้ VxVerify ทํางานสําเร็จ

บทความให้ความรู้นี้อ้างอิงจากการทดสอบที่ไม่มีบทความที่กําหนดเป้าหมายสําหรับการตอบสนองที่เกี่ยวข้อง (ตัวอย่างเช่น: คําเตือนความล้มเหลวและวิกฤติ) ตัวอย่างของแบบสอบถามนี้จะเป็นแบบสอบถามที่ส่งกลับการตอบสนองที่ไม่คาดคิดจากแบบสอบถาม

VxVerify ได้รับการออกแบบมาเพื่อตรวจหาปัญหาที่อาจทําให้เกิดภาวะแทรกซ้อนหรือความล้มเหลวระหว่างการอัพเกรด VxRail VxVerify สร้างโปรแกรม Python ที่รู้จักกันในชื่อ Minions ซึ่งส่งไปยังโหนด VxRail ด้านล่างนี้คือผลการทดสอบพื้นฐานที่คุณควรคาดหวัง:vxverify_tests.json

ผลการทดสอบ รหัสผลลัพธ์ การดําเนินการที่แนะนํา
ผ่าน 0 ผ่านการทดสอบแล้ว ไม่ต้องดําเนินการใดๆ
คำเตือน 1 ไม่สามารถเข้าถึงข้อมูลหรือมีการทําเครื่องหมายคําเตือน ต้องปฏิบัติตาม KB ที่เกี่ยวข้องเพื่อแก้ไขคําเตือน
ความล้มเหลว 2 ต้องได้รับการแก้ไขก่อนการอัปเกรดใดๆ ตรวจสอบข้อความที่ส่งคืนจากเหตุการณ์นี้ แล้วตรวจสอบบันทึก vxv.log และมินเนี่ยน
รุนแรง 3 ข้อผิดพลาดร้ายแรงทําให้ VxVerify ไม่สามารถทําการทดสอบที่เกี่ยวข้องได้
สิ่งนี้อาจทําให้การทดสอบเพิ่มเติมไม่ทํางาน

ตรวจสอบข้อความที่ส่งคืนจากเหตุการณ์นี้ แล้วตรวจสอบบันทึก vxv.log และมินเนี่ยน ดูตัวอย่างในส่วนข้อมูลเพิ่มเติม
Py_Crash 3 หรือ 9 เหตุการณ์นี้เกิดขึ้นเมื่อเกิดข้อผิดพลาด Python ที่ไม่สามารถจัดการได้เมื่อทําการทดสอบ 
ตรวจสอบข้อความที่ส่งคืนจากเหตุการณ์นี้ แล้วตรวจสอบบันทึก vxv.log และ minion (ดูหมายเหตุ 1)

หากพบผลการทดสอบที่เป็นเท็จ ให้รวบรวมบันทึกและว่าจ้างฝ่ายสนับสนุนของ Dell เพื่อเปิดตั๋ว VXV กับ VxRail Engineering

หมายเหตุ: หมายเหตุ 1: รวบรวมบันทึกและว่าจ้างฝ่ายสนับสนุนของ Dell เพื่อเปิดตั๋ว VXV ด้วย VxRail Engineering

Cause

มีหลายสาเหตุที่สามารถป้องกันไม่ให้ VxVerify ทํางานสําเร็จ

  • สาเหตุที่พบบ่อยที่สุดของความล้มเหลวคือ สคริปต์ Python หมดอายุแล้ว VxVerify แต่ละเวอร์ชันถูกตั้งค่าให้ใช้งานได้เพียงสองสัปดาห์นับจากวันที่เผยแพร่ สิ่งนี้ใช้ไม่ได้เมื่อเรียกใช้ VxVerify เป็นปลั๊กอินไปยังเฟรมเวิร์กการตรวจสุขภาพ VxRail (ซึ่งเปลี่ยนฟังก์ชัน VxVerify )
  • เหตุผลอื่น ๆ อาจเป็นปัญหา การอนุญาต ในตัวจัดการ VxRail หรือ ปัญหาการสื่อสาร กับโฮสต์
  • หากสาเหตุของเหตุการณ์ไม่ชัดเจน ให้ติดต่อฝ่ายสนับสนุนของ Dell เพื่อเปิดตั๋ว VXV ด้วย VxRail Engineering

Resolution

ส่วนด้านล่างให้คําแนะนําเกี่ยวกับวิธีการรวบรวมบันทึกและแก้ไขปัญหาหาก VxVerify ทํางานไม่ถูกต้อง

การรวบรวมบันทึกสําหรับการมีส่วนร่วมในการสนับสนุน

เมื่อมีส่วนร่วมกับการสนับสนุนกับปัญหาที่เกี่ยวข้องกับ VxVerify ให้ อัปโหลดโฟลเดอร์ที่เก็บถาวร vxv ทั้งหมด เพื่อการวิเคราะห์หรือ vxverify ไฟล์บันทึก.zip เวอร์ชัน VxVerify แบบสแตนด์อโลนปัจจุบันบันทึกไฟล์ที่เก็บถาวรไปยัง /tmpซึ่งมีผลลัพธ์และบันทึกที่จําเป็นทั้งหมดสําหรับการวิเคราะห์

เช่น:/tmp/vxverify-c9.zip

นอกจากไฟล์.zip นี้จากการเรียกใช้ VxVerify ล่าสุดแล้วอาจมี /tmp บันทึกก่อนหน้าสูงสุดห้าชุดในโฟลเดอร์ ชื่อมีวันที่-เวลาที่เรียกใช้ในแอตทริบิวต์ของแฟ้ม: 

vxv_previous_01.zip

หรือเรียกใช้คําสั่งด้านล่างเพื่อเก็บถาวรไฟล์ที่เกี่ยวข้องทั้งหมด:
tar cvzf vxverify-2020-12-31.tgz /tmp/vxv/

แก้ไข ปัญหา

ขั้นตอนการแก้ไขปัญหาทั่วไปสําหรับการเรียกใช้ VxVerify 2 (สําหรับ VxRail 4.5, 4.7 และ 7.0.000)

  • VxVerify ต้องการ Python เพื่อเรียกใช้และบรรทัดคําสั่งเพื่อเรียกใช้มีดังนี้:
python /tmp/vxv/vxverify.pyc
  • หากมี ข้อผิดพลาดหมายเลขวิเศษ เกิดขึ้นโดยปกติจะหมายความว่ามีการใช้ VxVerify เวอร์ชันที่ไม่ถูกต้องสําหรับเวอร์ชัน Python บน VxRM ตัวอย่างเช่น ข้อผิดพลาดด้านล่างจะพบถ้าคุณเรียกใช้ VxVerify 2 บน 7.0.320
RuntimeError: Bad magic number in .pyc file
  • เมื่อต้องการตรวจสอบว่ามีการใช้ VxVerify เวอร์ชันที่ถูกต้อง โปรดดูบทความ:
  • VxVerify สร้างโปรแกรมที่เรียกว่ามินเนี่ยนซึ่งถูกส่งเรียกใช้และดึงข้อมูลโดยใช้ SSH หากสามารถใช้ SSH ได้แม้ว่าจะยังไม่ได้เปิดใช้งาน VxVerify จะเปิด SSH สําหรับแต่ละโฮสต์เพื่อให้คําสั่งทํางาน หากโฮสต์ถูกล็อกโดยที่ SSH ไม่สามารถเรียกใช้มินเนี่ยนจะไม่สามารถทํางานได้และการทดสอบโฮสต์จะส่งคืนรหัสผลลัพธ์: 2 (ความล้มเหลว) หรือ 3 (สําคัญ) หากสิ่งนี้เกิดขึ้นให้ หารือเกี่ยวกับสิทธิ์ SSH กับผู้ดูแลระบบ
  • VxVerify2 ได้รับการออกแบบมาเพื่อทํางานบน Python 2.7 ซึ่งควรมีอยู่ใน VxRM VM และโดยปกติจะเป็น Python เวอร์ชันเดียวที่มีอยู่ หากมีเวอร์ชัน Python เพิ่มเติมให้เรียกใช้สิ่งต่อไปนี้เพื่อทดสอบ (มีตัวเลือก -h ซึ่งก็คือ --help):
python2.7 vxverify.pyc -h

VxVerify เขียนบันทึกและส่งออกไฟล์ไปยัง /tmp/vxv/. หากไม่มีสิทธิ์เพียงพอจะไม่สามารถเรียกใช้ได้ ตรวจสอบสิทธิ์ของโฟลเดอร์ด้วยคําสั่งต่อไปนี้ หากไม่มีสิทธิ์อ่าน / เขียนสําหรับผู้ใช้ทั้งหมดให้เพิ่มสิ่งเหล่านี้ด้วย chmod (อาจต้องใช้สิทธิ์รูท):

$ ls -lad /tmp/vxv

drwxrwxrwx  3 mystic   users      4096 Oct  1 07:42 vxv
  • หากข้อผิดพลาดของสิทธิ์ ยังคงอยู่กับ VxVerify (ตัวอย่างเช่น: 'สิทธิ์ถูกปฏิเสธสําหรับการลบบันทึกก่อนหน้า') ให้ลองลบ vxv โฟลเดอร์ด้วยคําสั่งต่อไปนี้ (ต้องใช้รหัสผ่านรูทสําหรับการเข้าถึง sudo) หลังจากเรียกใช้คําสั่งลบนี้ VxVerify จะต้องติดตั้งอีกครั้งโดยใช้สิทธิ์ลึกลับเท่านั้น:
sudo rm -r -d /tmp/vxv
  • อีกทางเลือกหนึ่งคือการบันทึกไฟล์เอาต์พุต VxVerify ลงในโฟลเดอร์ใหม่ VxVerify สร้างแผนภูมิหากไม่มีอยู่โดยใช้ -l ตัวเลือก OR --log ตามด้วยเส้นทางที่ควรบันทึกบันทึก เช่น:
python vxverify.pyc -l /tmp/vx1

การแก้ไขปัญหาความแตกต่างระหว่าง VxVerify2 และ VxVerify 3 (สําหรับ VxRail 7.0.010+)

สําหรับ VxRail 7.0.010 และใหม่กว่า ต้องใช้ VxVerify 3 เนื่องจากการเปลี่ยนแปลงพื้นฐานใน VxRM

ขั้นตอนการแก้ไขปัญหาเดียวกันสําหรับ VxVerify2 ยังใช้กับ VxVerify3, EXCEPT:

  • เวอร์ชันของ Python สําหรับ VxVerify3 คือ 3.6
  • ตําแหน่งที่ตั้งของแพคเกจไซต์ที่ VxVerify ต้องการการเปลี่ยนแปลง ซึ่งอยู่ในตําแหน่งที่ตั้งใดตําแหน่งที่ตั้งหนึ่งด้านล่าง:
    • /mystic/telemetry/DCManager/venv/lib/python3.6/site-packages
    • /mystic/radar/venv/lib/python3.6/site-packages
  • หากโฟลเดอร์ทั้งสองนี้ไม่สามารถเข้าถึงได้จากผู้ใช้ลึกลับโปรแกรม VxVerify จะให้ข้อความแสดงข้อผิดพลาดเกี่ยวกับแพ็คเกจไซต์และออก
    • วิธีแก้ปัญหาคือการใช้ผู้ใช้ราก

หมดเวลา

หากมินเนี่ยนใช้เวลานานกว่า 20 นาทีจึงจะเสร็จสมบูรณ์ VxVerify จะต้องระบุเหตุการณ์การหมดเวลาในตารางสรุป

| Node-name  |Critical 66460| minion: Maximum run time for minion exceeded
  • รายการ vxv.log ที่สอดคล้องกันสําหรับสิ่งนี้คือ:
2022-10-06 06:42:51-WARNING  Creating a fault json for missing minion

2022-10-06 06:42:51-WARNING  [fail_minion] Producing result file for lab-esx22, due to: Maximum run time for minion exceeded. See minion logs in /tmp/vxv
  • สิ่งนี้ควรตรวจสอบโดยดูที่บันทึกมินเนี่ยนสําหรับโฮสต์นั้นเพื่อดูว่ามินเนี่ยนพบข้อผิดพลาดที่ทําให้หยุดหรือไม่หรือว่าการทดสอบดําเนินไปอย่างช้าๆและหมดเวลาที่จะเสร็จสมบูรณ์
  • หากมินเนี่ยนกรอกข้อมูลอย่างถูกต้องสิ่งต่อไปนี้ควรเป็นบรรทัดสุดท้ายในบันทึก:
2022-10-06 06:39:30 INFO    Writing to JSON: /tmp/xc882-61f1f3b9-7cb2-130a-35b0-minion.json

2022-10-06 06:39:30 INFO    JSON save: os.stat_result(st_mode=33206, st_ino=47144, st_dev=1, st_nlink=1, st_uid=0, st_gid=0, st_size=499562, st_atime=1665038370, st_mtime=1665038370, st_ctime=1665038370)

2022-10-06 06:39:30 DEBUG   ESXi minion's work is done.

การถ่ายโอนไฟล์ JSON ไม่ทํางาน

หากไม่สามารถถ่ายโอนผลลัพธ์มินเนี่ยนโฮสต์โดยใช้ SCP หรือ SFTP กลับไปยัง VxRM อาจเห็นสิ่งต่อไปนี้ในตารางเอาต์พุต:

| Node-name  |Critical 66460| minion: No JSON downloaded from node via SSH
  • รายการ vxv.log ที่สอดคล้องกันสําหรับสิ่งนี้คือ:
2022-10-06 06:42:51-WARNING  Creating a fault json for missing minion

2022-10-06 06:42:51-WARNING  [fail_minion] Producing result file for lab-esx22, due to: No JSON downloaded from node via SSH. See minion logs in /tmp/vxv
  • สิ่งนี้ควรตรวจสอบโดยดูที่บันทึกมินเนี่ยนสําหรับโฮสต์นั้นเพื่อดูว่ามินเนี่ยนพบข้อผิดพลาดที่ทําให้หยุดหรือมีการสร้างไฟล์ JSON หรือไม่ แต่ไม่สามารถเข้าถึงได้โดยใช้ SSH
  • หากมินเนี่ยนกรอกอย่างถูกต้องสิ่งต่อไปนี้ควรเป็นบรรทัดสุดท้ายในบันทึกซึ่งแสดงให้เห็นว่า JSON ถูกบันทึกลงในโฟลเดอร์ /tmp ของโหนดสําเร็จ:
2022-10-06 06:39:30 INFO    Writing to JSON: /tmp/xc882-61f1f3b9-7cb2-130a-35b0-minion.json

2022-10-06 06:39:30 INFO    JSON save: os.stat_result(st_mode=33206, st_ino=47144, st_dev=1, st_nlink=1, st_uid=0, st_gid=0, st_size=499562, st_atime=1665038370, st_mtime=1665038370, st_ctime=1665038370)

2022-10-06 06:39:30 DEBUG   ESXi minion's work is done.

ขั้นตอนที่แนะนําในการแก้ไขปัญหาข้างต้นคือ:

  • หากใช้ VxVerify3 ให้ลองเรียกใช้ด้วย --fix แฟล็กซึ่งใช้กลไก SSH อื่น วิธีนี้สามารถหลีกเลี่ยงปัญหาสิทธิ์ SSH บางอย่างได้
  • ระบุเส้นทางใหม่โดยใช้ -1 (ไม่จําเป็นต้องสร้างโฟลเดอร์ก่อน) ซึ่งสามารถช่วยได้หากข้อผิดพลาดสิทธิ์ VxRM ป้องกันการถ่ายโอนไฟล์:
  • ตัวอย่างเช่น > python vxv2.pyc -l \tmp\vxv0
  • หากข้างต้นยังคงใช้งานไม่ได้ให้ถ่ายภาพ VxRM ก่อนที่จะล้างไฟล์และโฟลเดอร์ที่ไม่จําเป็นใน /tmp และ /home/mysticเช่น VxVerify ที่ใช้ก่อนหน้านี้
  • รีสตาร์ท VxRM (ตัวจัดการ VxRail)

หาก VxVerify พบข้อผิดพลาดที่ไม่สามารถแก้ไขได้ตามขั้นตอนข้างต้น ให้บันทึกชุดบันทึก vxv ตามรายละเอียดข้างต้นและยกระดับปัญหาด้วยการสนับสนุนของ Dell

ข้อผิดพลาดในการเข้าสู่ระบบและข้อมูลประจําตัวใน VxVerify2 และ VxVerify3

  • ในการเรียกใช้การทดสอบบน VxRM (VxRail Manager) และโหนด VxRail VxVerify ไม่จําเป็นต้องมีข้อมูลประจําตัวใด ๆ VxVerify สามารถเข้าถึงข้อมูลประจําตัวที่เข้ารหัสได้โดยตรงจากฐานข้อมูล VxRM และถอดรหัสเหล่านี้ก่อนใช้งาน บางครั้งไม่สามารถเข้าถึงข้อมูลประจําตัวการจัดการ VC ได้ซึ่งในกรณีนี้ข้อมูลประจําตัวเหล่านี้สามารถระบุได้ในบรรทัดคําสั่ง VxVer:
python vxverify.py --verbose -u vxrailmgmt@localos -p ChangeMe1!
  • การใช้ อักขระพิเศษบางตัวที่ได้รับอนุญาตโดย vCenter ทําให้เกิดปัญหาสําหรับ VxRail Manager ตรวจสอบว่าไม่มีการใช้สิ่งต่อไปนี้ในรหัสผ่านสําหรับโฮสต์ vCenter หรือ ESXi:
` $ % / \
  • หากมีข้อสงสัยว่าชื่อผู้ใช้ใดถูกใช้สําหรับการจัดการให้ปรึกษา vxv.log เช่น:
... - DEBUG Users from runtime & settings records:     vxrailmgmt@localos & vxrailmgmt@localos
  • การทดสอบกับ vCenter โดยใช้ SSH ต้องใช้ชื่อผู้ใช้และรหัสผ่านรากซึ่งสามารถระบุได้ด้วยและ-r-wตัวเลือกตามลําดับ การทดสอบ vCenter จะทํางานเฉพาะเมื่อมีการระบุสิ่งเหล่านี้ (แม้ว่าผู้ใช้รูทจะเป็น rootซึ่งเป็นค่าเริ่มต้นจะต้องระบุรหัสผ่านรูทเท่านั้น) เช่น:
python vxverify.py --verbose -w R00tPassword!

Additional Information

ตัวอย่างความล้มเหลวในการทดสอบที่สําคัญ

สิ่งเหล่านี้อาจเป็นผลมาจากข้อผิดพลาดที่รุนแรงซึ่งทําให้ไม่สามารถทําการทดสอบเพิ่มเติมได้ ตัวอย่างเช่นหากชื่อผู้ใช้และรหัสผ่านการจัดการ vCenter ที่บันทึกไว้ใน VxRM ไม่เป็นปัจจุบันการสืบค้นทั้งหมดไปยัง VC API ล้มเหลวและไม่สามารถเรียกใช้การทดสอบเพิ่มเติมได้ ตัวอย่างของสิ่งนี้รวมถึง:

#========================#======#=========#====================================================================#==============#
|  Hostname / Category   |Status  Dell_KB |  Warnings or Failures, unless tests Passed                         | Product S.N. |
#========================#======#=========#====================================================================#==============#
| VxRM                   | Critical 66460 | vc_external: VC MOB API connection failed                                        .| 

หากพบปัญหาใด ๆ ด้านล่างให้มีส่วนร่วมสนับสนุนและเปิดตั๋ว VXV กับ VxRail Engineering VxVerify.log เป็นข้อบังคับเมื่อเปิดเคส

  • ความผิดพลาดของ Python ที่สําคัญในการตรวจสอบสุขภาพ
    • การทดสอบแต่ละครั้งใช้ฟังก์ชัน Python แยกต่างหากพร้อมการจัดการข้อผิดพลาดของตัวเองและบางครั้งการตอบสนองการทดสอบที่ไม่คาดคิดอาจทําให้เกิดข้อผิดพลาด Python ในกรณีนี้การทดสอบนั้นจะไม่เสร็จสมบูรณ์ แต่การตรวจสุขภาพที่เหลือจะดําเนินต่อไป (ดู vxverify_tests.json) สิ่งเหล่านี้ไม่ควรป้องกันการอัพเกรดหากไม่มีความล้มเหลวอื่น ๆ
  • ทดสอบการส่งคืนความล้มเหลวหรือคําเตือนอย่างไม่ถูกต้อง
    • หากพบผลบวกปลอม (ตัวอย่างเช่น การแก้ไขปัญหาด้วยตนเองตามบทความ KB ที่ระบุไว้ไม่แสดงปัญหา) ให้แจ้งปัญหาการติดตาม (ตั๋ว Jira VXV) จัดทําเอกสารการค้นพบและรวมบันทึกจาก /tmp/vxv.
  • โครงการ VXV ได้รับการออกแบบมาสําหรับข้อบกพร่อง VxVerify และการเพิ่มประสิทธิภาพในอนาคต คําถามใด ๆ เกี่ยวกับวิธีการตีความผลการทดสอบควรเป็นไปตามกระบวนการและยกระดับเป็น VxRail Escalation Engineering

ไฟล์ VxVerify

VxVerify สร้างไฟล์ต่อไปนี้ใน /tmp/vxv/ หรือ /var/log/mystic/vxv/. การตรวจสอบไฟล์เหล่านี้ด้วยตนเองอาจช่วยค้นหาปัญหาในคลัสเตอร์แม้ว่าสคริปต์ VxVerify ไม่สมบูรณ์:   

  • vxverify.txt(ตารางสรุปซึ่งแสดงบนหน้าจอด้วยหาก VxVerify ไม่ทํางานในโหมดเงียบ)
  • vxv.log (แฟ้มบันทึกสําหรับสคริปต์ VxVerify )
  • minion_hostname.log(บันทึกระยะไกลสําหรับสคริปต์ Minion ที่ทํางานในแต่ละโฮสต์)
  • minion_hostname.txt(เอาต์พุตข้อความระยะไกลสําหรับแต่ละมินเนี่ยนแสดงหมายเลขทดสอบที่กําลังดําเนินการอยู่)
  • /json/hostname.json (ไฟล์ที่ผลิตโดยมินเนี่ยนแต่ละคนพร้อมผลการทดสอบซึ่งต่อมาจะถูกรวมเข้ากับข้อมูลโฮสต์อื่น ๆ แล้วลบ)
  • vxverify_tests.json (เอาต์พุตรวมสําหรับการทดสอบทั้งหมดซึ่งสามารถตรวจสอบได้ด้วยตนเองเพื่อดูผลการทดสอบทั้งหมด)
  • vxtii.txt(รายงานสรุปข้อมูล iDRAC และ ESXi สําหรับแต่ละโหนด)

แหล่งข้อมูล
ที่เกี่ยวข้องต่อไปนี้เป็นแหล่งข้อมูลที่แนะนําเกี่ยวกับหัวข้อนี้ที่อาจเป็นที่สนใจ:

Affected Products

VxRail, VxRail Appliance Series

Products

VxRail Appliance Family
Article Properties
Article Number: 000066460
Article Type: Solution
Last Modified: 22 Jul 2026
Version:  21
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.