La actualización del firmware de PowerFlex 4.X falla con una secuencia de bytes no válida en US-ASCII

Summary: La actualización del firmware falla con una secuencia de bytes no válida en US-ASCII.

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

Situación

El clúster estaba pasando por una actualización de firmware realizada mediante el grupo de recursos.

Síntomas

El deployment.log del ID de trabajo informa que se produjo un error en la actualización del firmware y que la guía de estrategias se está ejecutando. Tenga en cuenta que el comando en la guía de estrategias está configurado para ejecutar "/usr/sbin/sysctl -p":

ERROR [2024-01-25T20:21:33.358478] 25824: service_deployment.rb:6084:in `process_firmware_update': Encountered an error during firmware update: ArgumentError: invalid byte sequence in US-ASCII
["org/jruby/RubyString.java:4727:in `scan'", "/opt/asm-deployer/lib/asm/provider/elementmanager/scaleio.rb:9762:in `update_sysctl_parameter'", "/opt/asm-deployer/lib/asm/service_deployment.rb:5909:in `block in process_firmware_update'", "org/jruby/RubyArray.java:1865:in `each'", "/opt/asm-deployer/lib/asm/service_deployment.rb:5731:in `process_firmware_update'", "/opt/asm-deployer/lib/asm/service_deployment.rb:504:in `process'", "/opt/asm-deployer/lib/asm.rb:369:in `block in process_deployment'", "org/jruby/RubyArray.java:1907:in `each_slice'", "/opt/asm-deployer/lib/asm.rb:351:in `block in process_deployment'", "/opt/dependencies/dell-asm-util/lib/asm/util.rb:22:in `block in execute_async'"]
...
INFO  [2024-01-25T20:22:45.017056] 25824: service_deployment.rb:1795:in `process_ansible_playbook': Starting processing playbook: [{"hosts"=>"all", "become"=>true, "vars"=>{"overcommit_ratio"=>100, "overcommit_memory"=>2}, "tasks"=>[{"name"=>"Replace unvalid values in sysctl conf", "replace"=>{"path"=>"/etc/sysctl.conf", "regexp"=>"^net.ipv4.conf.(ens192.log_martians.*)$", "replace"=>"#net.ipv4.conf.\\1 # PFXM REMOVED INVALID OPTION"}}, {"name"=>"Replace unvalid values in sysctl conf", "replace"=>{"path"=>"/etc/sysctl.conf", "regexp"=>"^net.ipv4.conf.(ens32.log_martians.*)$", "replace"=>"#net.ipv4.conf.\\1 # PFXM REMOVED INVALID OPTION"}}, {"name"=>"update threshold1", "ansible.posix.sysctl"=>{"name"=>"net.ipv4.neigh.default.gc_thresh1", "value"=>8192}}, {"name"=>"update threshold2", "ansible.posix.sysctl"=>{"name"=>"net.ipv4.neigh.default.gc_thresh2", "value"=>16384}}, {"name"=>"update threshold3", "ansible.posix.sysctl"=>{"name"=>"net.ipv4.neigh.default.gc_thresh3", "value"=>32768}}, {"name"=>"Update overcommit ratio for SDS", "ansible.posix.sysctl"=>{"name"=>"vm.overcommit_ratio", "value"=>"{{ overcommit_ratio }}"}}, {"name"=>"Update overcommit_memory ratio for SDS", "ansible.posix.sysctl"=>{"name"=>"vm.overcommit_memory", "value"=>"{{ overcommit_memory }}"}}, {"name"=>"Apply sysctl changes", "command"=>{"argv"=>["
]}}]}] with inventory:

... Cuando se ejecuta el comando directamente en el nodo, se puede observar el siguiente error:

[root@node3 etc]# /usr/sbin/sysctl -p
...
sysctl: /etc/sysctl.conf(91): invalid syntax, continuing...

 

Impacto

La actualización del firmware no puede continuar en el nodo afectado.

Cause

Causa principal

El problema proviene de un carácter especial o no ASCII en el archivo sysctl.conf, que no es compatible con la codificación de caracteres US-ASCII esperada utilizada durante el procesamiento de sysctl. Cuando el sistema intenta leer y aplicar las configuraciones de sysctl.conf, encuentra esta secuencia de caracteres no válida, lo que genera un error de "secuencia de bytes no válida en US-ASCII". La razón específica de la inclusión de este personaje sigue sin estar clara. 

Resolution

Solución alternativa

1. Respalde el archivo sysctl.conf original en el nodo afectado:

 cp /etc/sysctl.conf /etc/sysctl.conf.backup

2- Copie un archivo sysctl.conf de un nodo en el que se sepa que funciona correctamente:

 scp /etc/sysctl.conf root@:/etc/sysctl.conf

3- Aplique la nueva configuración en el nodo afectado:

 /usr/sbin/sysctl -p

4- Asegúrese de que el comando se complete correctamente sin errores de "sintaxis no válida".

5. Una vez que se completen y verifiquen los pasos anteriores, reinicie el proceso de actualización del firmware mediante el grupo de recursos.

 

Versiones afectadas 

PFxM 4.5.1.1 y versiones anteriores

Problema corregido en la versión

PFxM 4.5.2

Affected Products

PowerFlex rack, VxFlex Ready Nodes, PowerFlex custom node, PowerFlex appliance connectivity, PowerFlex appliance R650, PowerFlex appliance R6525, PowerFlex appliance R660, PowerFlex appliance R6625, Powerflex appliance R750, PowerFlex appliance R760 , PowerFlex appliance R7625, PowerFlex appliance R640, PowerFlex appliance R740XD, PowerFlex appliance R7525, PowerFlex appliance R840 ...
Article Properties
Article Number: 000221574
Article Type: Solution
Last Modified: 10 Feb 2025
Version:  2
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.