US-ASCII에서 잘못된 바이트 시퀀스로 PowerFlex 펌웨어 업데이트 실패

Resumo: 클러스터가 리소스 그룹을 사용하여 펌웨어 업그레이드를 수행하고 있었습니다. 업그레이드가 실패하고 "US-ASCII의 잘못된 바이트 시퀀스"라는 메시지가 표시됩니다.

Este artigo aplica-se a Este artigo não se aplica a Este artigo não está vinculado a nenhum produto específico. Nem todas as versões do produto estão identificadas neste artigo.

Sintomas

작업 ID의 deployment.log 펌웨어 업데이트 실패를 보고합니다. 플레이북에서 다음 명령을 실행하고 있습니다. /usr/sbin/sysctl -p:

ERROR [2024-01-25T20:21:33.35847825824: 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.01705625824: 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:
...

노드에서 직접 명령을 실행하는 경우 다음 오류가 표시될 수 있습니다.

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

Causa

이 문제는 sysctl.conf 파일의 비 ASCII 또는 특수 문자에서 비롯됩니다. 이 문자는 sysctl 처리 중에 사용되는 예상 US-ASCII 문자 인코딩과 호환되지 않습니다. 시스템이 sysctl.conf에서 설정을 읽고 적용하려고 하면 이 잘못된 문자가 발생하여 "US-ASCII의 잘못된 바이트 시퀀스" 오류가 발생합니다. 이 캐릭터가 포함된 구체적인 이유는 불분명합니다.

Resolução

해결 방법

  1. 영향을 받는 노드에서 원본 sysctl.conf 파일을 백업합니다.
cp /etc/sysctl.conf /etc/sysctl.conf.backup
  1. sysctl.conf 파일이 올바르게 작동하는 것으로 알려진 노드에서 파일을 복사합니다.
scp /etc/sysctl.conf root@<problematic_node_ip>:/etc/sysctl.conf
  1. 영향을 받는 노드에 새 구성을 적용합니다.
/usr/sbin/sysctl -p
  1. 명령이 "잘못된 구문" 오류 없이 성공적으로 완료되는지 확인합니다.
  2. 위의 단계를 완료하고 확인한 후에는 리소스 그룹을 사용하여 펌웨어 업데이트 프로세스를 다시 시작합니다.

Mais informações

영향을 받는 제품:
PowerFlex Manager 4.5.2

Produtos afetados

VxRack, PowerFlex Software
Propriedades do artigo
Número do artigo: 000222350
Tipo de artigo: Solution
Último modificado: 19 mar. 2024
Versão:  1
Encontre as respostas de outros usuários da Dell para suas perguntas.
Serviços de suporte
Verifique se o dispositivo está coberto pelos serviços de suporte.