Score:0

เกิดอะไรขึ้นกับ ESXi VMKernel Port ในการกำหนดค่า Active/Active

ธง ng

ฉันมีการกำหนดค่าแบบง่ายด้านล่าง:

ป้อนคำอธิบายรูปภาพที่นี่

โดยพื้นฐานแล้ว ฉันมีโฮสต์ ESXi ที่มีอะแดปเตอร์เครือข่ายจริงสองตัว อะแดปเตอร์แต่ละตัวเสียบเข้ากับสวิตช์ที่แตกต่างกัน สวิตช์แต่ละตัวเชื่อมต่อผ่านพอร์ตหลัก พีซีเชื่อมต่อกับสวิตช์ตัวใดตัวหนึ่ง vSwitch ที่มีพอร์ต VMKernel และพอร์ต VM ได้รับการกำหนดค่าให้ใช้ทั้ง NIC จริงในการกำหนดค่า Active/Active:

ป้อนคำอธิบายรูปภาพที่นี่

ฉันวิ่งแล้ว เอสเอ็กซ์ท็อป และจะเห็นว่าโฮสต์ ESXi ได้เลือกฟิสิคัล NIC ที่เชื่อมต่อกับ Switch 2 สำหรับพอร์ต VMKernel จากพีซี หากฉัน ping ที่อยู่ IP การจัดการของโฮสต์ ESXi การ ping จะไม่ต่อเนื่อง พวกเขาขึ้นและลง

ถ้าฉันแสดงตารางที่อยู่ mac บนสวิตช์แต่ละตัว ฉันเห็นว่าสวิตช์ 2 มีที่อยู่ MAC ของ VMKernel ที่กำหนดให้กับพอร์ตสวิตช์ที่เชื่อมต่อกับโฮสต์ ESXi เสมอ แต่ Switch 1 จะเพิ่มและลบที่อยู่ MAC ของ VMKernel บนพอร์ตฟิสิคัลที่เกี่ยวข้องอย่างต่อเนื่อง เมื่อใดก็ตามที่ Switch 1 มี MAC ของ VMKernel ที่กำหนดให้กับฟิสิคัลพอร์ต การ ping จะล้มเหลว

สาเหตุของความล้มเหลวนั้นชัดเจนเหตุผลที่ Switch 1 รับที่อยู่ MAC ของพอร์ต ESXi VMKernel เป็นประจำคือคำถาม โฮสต์ ESXi ได้เลือกอินเทอร์เฟซที่เชื่อมต่อกับ Switch 2 ให้เป็นพอร์ตที่ใช้งานอยู่ อินเทอร์เฟซที่เชื่อมต่อกับสวิตช์ 1 ควรไม่ทำงาน แต่ดูเหมือนว่าอาจตอบสนองต่อคำขอ ARP?

เป็นที่น่าสังเกตว่าไม่มี VM ใดในโฮสต์นี้ที่มีปัญหานี้ ทั้งหมดนี้สามารถเข้าถึงได้และมีอยู่ในตาราง MAC ครั้งละหนึ่งตารางเท่านั้น ปัญหานี้มีผลกับพอร์ต VMKernel โดยเฉพาะ

การกำหนดค่านี้ผิดอะไร ฉันกำลังมองหาเอกสารหรือคำอธิบายบางประเภทนอกเหนือจากวิธีแก้ปัญหานี้ ฉันรู้ว่าการตั้งค่าพอร์ต VMKernel เป็นโหมด Active/Standby อาจจะช่วยแก้ปัญหาได้ แต่ฉันไม่พบเอกสารอะไรเลยว่าทำไมการกำหนดค่าปัจจุบันนี้จึงมีปัญหา

การปรับปรุง:

  • ฉันปิดใช้งาน CDP บน vSwitch โดยคิดว่าอาจทำให้การสื่อสารผ่าน NIC ที่ไม่ได้ใช้งาน
  • ฉันลบล้างการตั้งค่า vSwitch สำหรับพอร์ต VMKernel และตั้งค่าให้ใช้การเฟลโอเวอร์และ Active/Standby อย่างชัดเจน ฉันยังวาง NIC ที่สแตนด์บายไว้ในพูลที่ไม่ได้ใช้ ไม่มีสิ่งใดช่วยได้ สิ่งที่แก้ปัญหาได้คือการเปลี่ยนลำดับพอร์ต ดังนั้น เมื่อพอร์ตที่เชื่อมต่อกับ Switch 1 ทำงาน ฉันไม่เห็นปัญหา ที่อยู่ MAC ไม่ทำงานบนสวิตช์ 2 เลย นี่คือการ์ด NIC สองใบที่แตกต่างกันอย่างมาก และฉันสงสัยว่านี่ไม่ใช่ปัญหาของไดรเวอร์บางประเภทหรือไม่

ต้องมีบางอย่างที่ทำให้เห็นที่อยู่ MAC ของ VMKernel บนพอร์ตของ Switch 1 แต่มาและไปทุก ๆ วินาที

สลับการกำหนดค่าสำหรับ STP และพอร์ต: สวิตช์ 1

!
โหมด spanning-tree Rapid-pvst
ค่าเริ่มต้นของขอบ portfast spanning-tree
spanning-tree ขยาย system-id
!
อินเทอร์เฟซ Port-channel1
 การเข้าถึง switchport vlan 11
 การห่อหุ้ม switchport trunk dot1q
 ลำตัวโหมด switchport
!
อินเทอร์เฟซ GigabitEthernet1/0/7
 การเข้าถึง switchport vlan 11
 การเข้าถึงโหมดสวิตช์พอร์ต
!
อินเทอร์เฟซ GigabitEthernet1/0/23
 การเข้าถึง switchport vlan 11
 การห่อหุ้ม switchport trunk dot1q
 ลำตัวโหมด switchport
 โหมดช่องกลุ่ม 1 เป็นที่น่าพอใจ
!
อินเทอร์เฟซ GigabitEthernet1/0/24
 การเข้าถึง switchport vlan 11
 การห่อหุ้ม switchport trunk dot1q
 ลำตัวโหมด switchport
 โหมดช่องกลุ่ม 1 เป็นที่น่าพอใจ

สวิตช์ 2

!
โหมด spanning-tree Rapid-pvst
ค่าเริ่มต้นของขอบ portfast spanning-tree
spanning-tree ขยาย system-id
!
อินเทอร์เฟซ Port-channel1
 การเข้าถึง switchport vlan 11
 การห่อหุ้ม switchport trunk dot1q
 ลำตัวโหมด switchport
!
อินเทอร์เฟซ GigabitEthernet1/0/3
 การเข้าถึง switchport vlan 11
 การเข้าถึงโหมดสวิตช์พอร์ต
!
อินเทอร์เฟซ GigabitEthernet1/0/23
 การเข้าถึง switchport vlan 11
 การห่อหุ้ม switchport trunk dot1q
 ลำตัวโหมด switchport
 โหมดช่องกลุ่ม 1 เป็นที่น่าพอใจ
!
อินเทอร์เฟซ GigabitEthernet1/0/24
 การเข้าถึง switchport vlan 11
 การห่อหุ้ม switchport trunk dot1q
 ลำตัวโหมด switchport
 โหมดช่องกลุ่ม 1 เป็นที่น่าพอใจ
Score:3
ธง in

การจัดการ vmk ใน ESXI จะถือว่าที่อยู่ MAC ของ Nic ในสล็อต PCI แรกระหว่างการตั้งค่าเริ่มต้น นี่เป็นวิธีการทำงานตลอดไป สิ่งนี้สามารถทำลายสิ่งต่าง ๆ ได้ก็ต่อเมื่ออุปกรณ์จริงเริ่มส่งแพ็กเก็ตด้วย สิ่งนี้ไม่ได้เกิดขึ้นตามปกติ Nis ทางกายภาพไม่ส่งการจราจร พวกเขาส่งการจราจรไปพร้อมกัน พฤติกรรมนี้ต้องให้ความสนใจด้วยหากคุณตัดสินใจย้าย Nics จริงจากโฮสต์หนึ่งไปยังอีกโฮสต์หนึ่ง ซึ่งจะทำให้การเชื่อมต่อโฮสต์ 2 โฮสต์หยุดลงเมื่อสวิตช์ทางกายภาพผิดปกติ ฉันเดาว่า Nic นี้เริ่มรายงานการรับส่งข้อมูล CDP / LLDP และนี่คือตอนที่สวิตช์ของคุณเห็นการทำซ้ำของ MAC วิธีที่ง่ายที่สุดคือสร้าง vmk ใหม่ผ่านบรรทัดคำสั่ง สิ่งนี้จะต้องทำจากการเข้าถึงคอนโซลโดยตรง (DCUI) (KVM, ILO, IDRAC ฯลฯ...)

นี่คือคำสั่ง; (ปรับ IP's/ซับเน็ตมาสก์/ชื่อพอร์ตกรุ๊ป ฯลฯ... ให้เหมาะกับความต้องการของคุณ)

อินเทอร์เฟซ esxcli เครือข่าย ip ลบ --interface-name=vmk0

เครือข่าย esxcli vswitch กลุ่มพอร์ตมาตรฐานเพิ่ม -p Management_Network -v vSwitch0

อินเทอร์เฟซ ip เครือข่าย esxcli เพิ่ม --interface-name=vmk0 --portgroup-name=Management_Network

เครือข่าย esxcli vswitch portgroup มาตรฐาน set -p Management_Network --vlan-id 50

esxcli network ip interface ipv4 set --interface-name=vmk0 --ipv4=192.168.50.116 --netmask=255.255.255.0 --gateway=192.168.50.1 --type=static

แท็กอินเตอร์เฟสเครือข่าย esxcli เพิ่ม -i vmk0 -t Management

สิ่งนี้จะสร้างการจัดการ vmk ใหม่ด้วยที่อยู่ MAC ของ VMware เพื่อกำจัดปัญหานี้ อย่างไรก็ตาม เราขอแนะนำให้คุณติดต่อผู้จำหน่าย/ผู้ผลิตฮาร์ดแวร์สำหรับขั้นตอนการปิด CDP/LLDP ที่มาจากการ์ดจริง การดำเนินการนี้จะแก้ไขปัญหาโฮสต์ ESXi นี้ แต่คุณจะจบลงด้วยการเกิดขึ้นกับผู้อื่นหากคุณอนุญาตให้การ์ดทำหน้าที่นี้ต่อไป หากนี่เป็นปัญหาใหญ่อย่างที่คุณคิดไว้ตั้งแต่แรก VMware จะไม่ใช่บริษัทยักษ์ใหญ่ ไม่ใช่เรื่องธรรมดา...

Appleoddity avatar
ng flag
คุณตีเล็บบนหัว ปัญหาคือตัวแทน LLDP ระดับฮาร์ดแวร์ส่งแพ็กเก็ต LLDP ที่มีที่อยู่ MAC เดียวกัน ตอนนี้ฉันต้องตัดสินใจเลือกวิธีที่ดีที่สุดในการแก้ปัญหา โซลูชันของคุณสมเหตุสมผลอย่างยิ่ง เพียงแต่ฉันไม่สามารถเข้าถึงเซิร์ฟเวอร์ได้ง่ายๆ ฉันสามารถอัพเกรดใบอนุญาต iDrac หรือใช้มือและตาระยะไกล แต่ถ้าฉันทำเช่นนั้นฉันยังสามารถไปที่ BIOS และปิดตัวแทน LLDP (เห็นได้ชัดว่า) ช่างเป็นอะไรที่เจ็บปวด ขอบคุณอีกครั้ง.
Score:2
ธง ru

ฉันใช้การตั้งค่าที่คล้ายกันอย่างมากมาหลายปีโดยไม่มีปัญหาใดๆ

คุณได้กำหนดค่าพอร์ตสวิตช์อย่างไร? คุณไม่ควรทำอะไรเป็นพิเศษ (ไม่ (M)LAG/LACP) เนื่องจาก ESXi จะดูแลทุกอย่าง เป็นเรื่องปกติที่จะสแต็กสวิตช์ เพียงอย่ารวมพอร์ต กำหนดค่าการมิเรอร์ของสถานะลิงก์หรือสิ่งที่คล้ายกัน

Switch2 ควรมี MAC ของพอร์ต VMkernel บนพอร์ตที่หันไปทาง ESXi และ switch1 บนพอร์ตที่หันไปทาง switch2 อย่างถาวร

การกระพือ MAC ไปมาอาจเกิดจากปัญหาอื่น เช่น การเปลี่ยนแปลงโทโพโลยี STP บ่อยครั้ง (ซึ่งโดยปกติแล้ว ESXi จะมองไม่เห็น แต่อาจยังคงอยู่) ตรวจสอบบันทึกของสวิตช์เพื่อหาความผิดปกติใดๆ

เหตุผลที่ Switch 1 รับที่อยู่ MAC ของพอร์ต ESXi VMKernel เป็นประจำคือคำถาม

ไม่มี LAG ใดๆ ที่อาจเกิดขึ้นได้ก็ต่อเมื่อโฮสต์ส่งเฟรมด้วย MAC ของพอร์ต VMK ไปยัง switch1 เท่านั้น โดยปกติจะไม่ทำเช่นนั้นเว้นแต่ลิงก์ไปยัง switch2 ล้มเหลว

อินเทอร์เฟซที่เชื่อมต่อกับสวิตช์ 1 ควรไม่ทำงาน

สำหรับพอร์ต VMK ใช่ อาจมีการรับส่งข้อมูล VM ที่แนบกับกลุ่มพอร์ตเดียวกัน

แต่ดูเหมือนว่าอาจตอบสนองต่อคำขอ ARP?

ARP หรือไม่ เฟรมที่มีพอร์ต VMK MAC ไม่ได้มาจากพอร์ตอื่นโดยไม่มีเหตุผล

Appleoddity avatar
ng flag
ขอบคุณสำหรับการตอบกลับ. สวิตช์เป็นพอร์ตการเข้าถึงมาตรฐาน ไม่มีอะไรพิเศษ. ฉันเห็น BDPU หลายล้านรายการที่ส่งจาก Switch 1 ไปยัง Switch 2 ฉันไม่แน่ใจว่าเกี่ยวข้องกันหรือไม่ สำหรับฉันแล้ว ดูเหมือนว่า Switch 1 จะเห็นการรับส่งข้อมูลจากอินเทอร์เฟซ ESXi ที่เชื่อมต่อกับมัน และเพิ่ม MAC ลงในตารางเป็นการชั่วคราวแต่อแดปเตอร์นั้นควรจะ "ไม่ได้ใช้งาน" ฉันคิดว่าฉันกำลังทำอะไรบางอย่างโดยการปิดใช้งาน CDP บนฟิสิคัลอะแด็ปเตอร์ แต่ก็ไม่ได้สร้างความแตกต่างแต่อย่างใด และไม่ได้เปลี่ยน VMKernel เป็นโหมด Active/Standby กล่าวอีกนัยหนึ่ง การมีสิ่งใดบน vSwitch ในโหมด Active/Active ทำให้เกิดปัญหานี้
Zac67 avatar
ru flag
*BDPU หลายล้านรายการที่ส่งจาก Switch 1 ไปยัง Switch 2* ดูเหมือนจะไม่ปกติ - BPDU จะถูกส่งตามปกติบนพอร์ตที่กำหนดเท่านั้น (=ไปยังพอร์ตรูท) ทุกๆ 2 วินาที นอกจากนี้ อะแดปเตอร์จะไม่ทำงานเมื่อคุณใช้งานแบบแอคทีฟ-แอคทีฟ vNIC แนบมาด้วยหมายเลขพอร์ตเสมือน (สุ่มโดยประมาณ) และอยู่ที่นั่น หากคุณต้องการแอคทีฟ-พาสซีฟ คุณต้องย้ายพอร์ตหนึ่งลงไปที่ *อะแดปเตอร์สแตนด์บาย* ไม่ CDP/LLDP ไม่ได้สร้างความแตกต่าง ฉันจะปล่อยให้มันทำงานต่อไป ปัญหาที่เกิดขึ้นกับ Active/Standby *มาก* บ่งชี้ถึงปัญหาเกี่ยวกับการกำหนดค่าสวิตช์
Zac67 avatar
ru flag
คุณช่วยเพิ่มการกำหนดค่าที่สะอาด (อย่างน้อยส่วนที่เกี่ยวข้องกับพอร์ตและ STP) ให้กับคำถามของคุณได้ไหม บันทึกสวิตช์แสดงอะไรไหม
Appleoddity avatar
ng flag
สวัสดี. ขอบคุณสำหรับความช่วยเหลือของคุณในเรื่องนี้ การอัปเดตของคุณตรงประเด็น และเราอยู่ในข้อตกลง ไม่ควรเห็นแพ็กเก็ตจากการ์ดที่ไม่ได้ใช้งานบนสวิตช์ 1 แต่ก็เป็นเช่นนั้น ฉันอัปเดตโพสต์เดิมของฉันแล้ว ถ้าฉันเปลี่ยนลำดับของพอร์ต - เช่น ฉันทำให้ NIC บนสวิตช์ 1 ใช้งานได้ ปัญหาจะหายไปและสวิตช์ 2 ไม่เห็นทราฟฟิกจาก NIC ที่ไม่ได้ใช้งาน ถ้าฉันเปลี่ยนกลับ ปัญหาก็เกิดขึ้นอีก นี่คือสอง NIC ที่แตกต่างกันอย่างมาก ฉันสงสัยว่านี่เป็นปัญหาไดรเวอร์บางประเภทหรือไม่ ฉันขอขอบคุณที่ให้ความสำคัญกับสวิตช์ แต่ทุกอย่างชี้ไปที่เฟรมที่มาจาก NIC ที่ไม่ได้ใช้งานด้วยเหตุผลบางประการ ???
Appleoddity avatar
ng flag
เพิ่มการกำหนดค่าสวิตช์แล้ว นี่คือการกำหนดค่าสวิตช์ที่ค่อนข้างพื้นฐาน ไม่มีอะไรพิเศษ. STP เปิดใช้งานได้เนื่องจากมีการเชื่อมต่อกับสแต็กของสวิตช์อื่นผ่านสายเคเบิลอีเธอร์เน็ต 2 เส้น และสวิตช์ทั้งสองนี้ในการสนทนาไม่ได้วางซ้อนกัน อีกครั้งโดยใช้ `แสดงอินเทอร์เฟซตารางที่อยู่ mac gi1/0/7` แสดงที่อยู่ VMKernel MAC ที่โผล่เข้าและออก ในขณะที่สวิตช์อื่น MAC นั้นเสถียรตามที่คาดไว้
Zac67 avatar
ru flag
คุณมีรูทบริดจ์ที่กำหนดไว้อย่างดีหรือไม่? สวิตช์อื่นๆ ยังใช้ RPVST+ หรือ RSTP/MSTP อยู่หรือไม่ พอร์ต 23&23 เป็นพอร์ตแชนเนลเป็นลิงก์สแต็กหรือไม่ และ 7 และ 4 เป็นลิงค์โฮสต์หรือไม่
Score:1
ธง tr

การกำหนดค่าพอร์ตสวิตช์ที่คุณโพสต์แสดงว่าคุณกำลังใช้พอร์ตแชนเนลบนสวิตช์ตัวเร่งปฏิกิริยา

อย่าทำอย่างนั้น! ไม่รองรับโฮสต์ ESXi แบบสแตนด์อโลน ESXi ดูแลโหลดบาลานซ์และเฟลโอเวอร์ด้วยตัวมันเองภายในซอฟต์แวร์เท่านั้น หากคุณต้องการใช้ช่องพอร์ตสวิตช์ภายนอกอย่างแท้จริง คุณต้องใช้ vCenter และสวิตช์แบบกระจาย

ดู https://kb.vmware.com/s/article/82609 และ https://kb.vmware.com/s/article/1001938 สำหรับรายละเอียดเพิ่มเติม

Appleoddity avatar
ng flag
ขอบคุณสำหรับการตอบกลับ. ช่องพอร์ตไม่ได้รับการกำหนดค่าบนพอร์ตที่เชื่อมต่อ ESXi ใดๆ นี่คือลำต้นระหว่างสวิตช์ Cisco

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา