Платформа управління PowerFlex - не вдається оновити комутатор Cisco Nexus через тайм-аут SSH
Summary: Під час оновлення прошивки комутатора Cisco Nexus процес не вдається виконати через помилку тайм-ауту під час передачі файлу образу NX-OS через SSH.
Symptoms
Сценарій
Після ініціювання оновлення комутатора Cisco Nexus система робить спробу передати файл прошивки, як показано в журналах розгортання нижче:
INFO [2024-10-08T11:41:43.149490] 315108: provider/base.rb:239:in `process!': Resources for cisconexus5k-fdoXXXXXXX:
{"asm::firmware"=>
{"cisconexus5k-fdoXXXXXXX"=>
{"asm_hostname"=>"10.10.26.16",
"decrypt"=>false,
"force_restart"=>true,
"http_password"=>"test",
"http_user"=>"test",
"install_type"=>"uri",
"path"=>
"https://test:test@10.10.10.15:443/httpshare/download/8aaa8037910dd23d01910f4a911b159c/nxos64-cs.10.4.2.F.bin",
"product"=>"cisconexus5k",
"server_firmware"=>
"[{\"instance_id\":null,\"component_id\":\"31148\",\"uri_path\":\"https://dellpowerflex.com:443/httpshare/download/8aaa8037910dd23d01910f4a911b159c/nxos64-cs.10.4.2.F.bin\",\"version\":null}]",
"version"=>"10.4(2)"}}}
Під час цієї передачі процес триває приблизно 3–5 хвилин, а потім зупиняється, що призводить до завершення часу очікування з'єднання. Журнал винятків фіксує такі відомості:
#<RuntimeError: env --unset=RUBYOPT --unset=GEM_HOME --unset=RUBYLIB --unset=GEM_PATH --unset=BUNDLE_BIN_PATH RUBYLIB=/opt/service/lib:/opt/asm-deployer/lib:/opt/puppetlabs/puppet/lib:/opt/dependencies/dell-asm-util/lib PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/puppetlabs/puppet/bin:/opt/puppetlabs/bin puppet asm process_node --debug --trace --filename /opt/Dell/ASM/deployments/Job-5c4d4f5b-5fb2-4948-9fe7-8ece57b4b2e7-2/resources/cisconexus5k-fdoXXXXXXX.yaml --run_type apply --statedir /opt/Dell/ASM/deployments/Job-5c4d4f5b-5fb2-4948-9fe7-8ece57b4b2e7-2/resources --always-override cisconexus5k-fdoXXXXXXX failed; output in /opt/Dell/ASM/deployments/Job-5c4d4f5b-5fb2-4948-9fe7-8ece57b4b2e7-2/cisconexus5k-fdoXXXXXXX.out>
На цьому етапі оновлення не вдається, і cisconexus5k-fdoXXXXXXX.out Файл показує наступну помилку:
Debug: SSH send only: copy https://test:test@10.10.10.15:443/httpshare/download/8aaa8037910dd23d01910f4a911b159c/nxos64-cs.10.4.2.F.bin bootflash: vrf management
Error: execution expired
Error: /Stage[main]/Asm::Resource_wrapper/Asm::Firmware[cisconexus5k-fdoXXXXXX]/Cisconexus5k_firmwareupdate[firmware_update]/returns: change from to '#' failed: execution expired
Вплив
Не вдається оновити комутатори за допомогою PFxM.
Cause
Усувайте основні проблеми з мережею за допомогою таких команд:
From Switch:
ping <MVM-MGMT> packet-size 1500 count 1000 vrf management
copy https://X.X.X.X:443/httpshare/download/<PATH> bootflash: vrf management
show vrf
show ip route vrf management
traceroute
Деталі компонента:
- Пристрій комутатора Cisco:
- Інтерфейс: mgmt0
- IP-адреса: 10.10.26.23/25
- VRF: Управління VRF
- Хост платформи управління PowerFlex:
- Кілька мережевих інтерфейсів:
- ЕТ0: 10.10.10.23/25 (Мережа управління)
- ЕТ1: 10.10.26.12/25 (OOB)
Основною проблемою є асиметрична маршрутизація на MVM:
- Комутатори Cisco та хости PFMP мають інтерфейси в підмережі 10.10.26.16/25 (мережа OOB).
- Маршрутизація налаштовується в мережі керування PFMP для маршрутизації від керівництва до OOB.
- Запити на передачу файлів від Cisco Switch (10.10.26.23) надходили в PFMP1 за допомогою eth1 (10.10.26.12). Тоді вихідна відповідь йде з eth0 (10.10.10.23).
- Через конфігурацію мережі, включаючи налаштування брандмауера, політики безпеки та мережеві правила, передача файлів зупинялася. Ця проблема виникла через те, що запити надсилалися до PFMP1 на інтерфейсі eth1, але відповіді були спрямовані назад на комутатор з інтерфейсу eth0 PFMP1, що призводило до розриву з'єднання.
Resolution
Для вирішення питання необхідно вжити таких заходів:
Вимкніть інтерфейс eth1 (NIC):
Вимкніть інтерфейс eth1 на PFMP:
ip link set dev eth1 down
Видаліть eth1 з конфігурації мережі:
Видаліть або перемістіть файл конфігурації мережі для eth1, щоб запобігти його викликанню під час перезавантаження.
Наприклад, у системі Linux:
mv /etc/sysconfig/network-scripts/ifcfg-eth1 /etc/sysconfig/network-scripts/ifcfg-eth1.bak
Additional Information
Версія, що зазнала впливу
PFMP 4.x
Виправлено у версії
Н/Д - працює як очікувалося