PowerFlex 升級失敗,並顯示: ansible.legacy.setup /usr/bin/sudo:權限遭拒
Summary: 將 PowerFlex 軟體從 4.5.1 升級至 4.5.2 其中一個節點升級失敗,並顯示錯誤 升級 PowerFlex (XXX) - OS=PowerFlex 失敗,訊息:ob-f0f65576-c290-4ae1-a398-cde0399284db-0 ndc-xxxxxxxx 無法在執行工作「收集事實」時設定 ndc-xxxxxxxx:下列模組無法執行:ansible.legacy.setup ...
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
對異常日誌的分析提供了錯誤,並指出了根本原因的相應 .yaml 和 .out 檔:
部署記錄:
DEBUG [2024-05-08T10:59:38.422838] 27544: service_deployment.rb:1874:in `process_ansible_errors': Exception while running ansible playbook RuntimeError: Command
failed: env VAULT=****** ANSIBLE_STDOUT_CALLBACK=json ANSIBLE_HOST_KEY_CHECKING=False ANSIBLE_SSH_ARGS="-o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no
-o ServerAliveInterval=30" ANSIBLE_PERSISTENT_CONNECT_TIMEOUT=120 ANSIBLE_PERSISTENT_COMMAND_TIMEOUT=120 timeout 1800 sudo -E /usr/local/bin/ansible-playbook -i
/opt/Dell/ASM/deployments/Job-d77631dd-0808-43ee-a152-dd4c4552d384-0/plays/ndc-esdsosp12-inv.yaml /opt/Dell/ASM/deployments/Job-d77631dd-0808-43ee-a152-dd4c4552d384-0/plays/ndc-esdsosp12.yaml
--vault-password-file /opt/asm-deployer/scripts/run_vault_script.py; output in /opt/Dell/ASM/deployments/Job-d77631dd-0808-43ee-a152-dd4c4552d384-0/ndc-esdsosp12.out
ERROR [2024-05-08T10:59:38.433623] 27544: service_deployment.rb:1887:in `process_ansible_errors': Error Message: The following modules failed to execute:
ansible.legacy.setup
DEBUG [2024-05-08T10:59:38.434102] 27544: service_deployment.rb:1897:in `process_ansible_errors': errpr_desc = The following modules failed to execute: ansible.legacy.setup;
additional_error_check = false
例外記錄:
<RuntimeError: Failed to transfer ca-cert on 10.x.x.71: RuntimeError: Error running ansible playbook: : RuntimeError :: Command failed: env VAULT=****** ANSIBLE_STDOUT_CALLBACK=json ANSIBLE_HOST_KEY_CHECKING=False ANSIBLE_SSH_ARGS="-o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o ServerAliveInterval=30" ANSIBLE_PERSISTENT_CONNECT_TIMEOUT=120 ANSIBLE_PERSISTENT_COMMAND_TIMEOUT=120 timeout 1800 sudo -E /usr/local/bin/ansible-playbook -i /opt/Dell/ASM/deployments/Job-d77631dd-0808-43ee-a152-dd4c4552d384-0/plays/ndc-esdsosp12-inv___5.yaml /opt/Dell/ASM/deployments/Job-d77631dd-0808-43ee-a152-dd4c4552d384-0/plays/ndc-esdsosp12___5.yaml --vault-password-file /opt/asm-deployer/scripts/run_vault_script.py; output in /opt/Dell/ASM/deployments/Job-d77631dd-0808-43ee-a152-dd4c4552d384-0/ndc-esdsosp12___5.out: Error running ansible playbook: : RuntimeError :: Command failed: env VAULT=****** ANSIBLE_STDOUT_CALLBACK=json ANSIBLE_HOST_KEY_CHECKING=False ANSIBLE_SSH_ARGS="-o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o ServerAliveInterval=30" ANSIBLE_PERSISTENT_CONNECT_TIMEOUT=120 ANSIBLE_PERSISTENT_COMMAND_TIMEOUT=120 timeout 1800 sudo -E /usr/local/bin/ansible-playbook -i /opt/Dell/ASM/deployments/Job-d77631dd-0808-43ee-a152-dd4c4552d384-0/plays/ndc-esdsosp12-inv___5.yaml /opt/Dell/ASM/deployments/Job-d77631dd-0808-43ee-a152-dd4c4552d384-0/plays/ndc-esdsosp12___5.yaml --vault-password-file /opt/asm-deployer/scripts/run_vault_script.py; output in /opt/Dell/ASM/deployments/Job-d77631dd-0808-43ee-a152-dd4c4552d384-0/ndc-esdsosp12___5.out>
.yaml 記錄:
all: hosts: 10.x.x.71: server: 10.x.x.71 ansible_ssh_user: pflex ansible_ssh_pass: !vault | $ANSIBLE_VAULT;1.1;AES256 33396339316633666565326637633562616561363339646436393530326666616332623233333862 3362356365656433386535666139306337386638626137340a383532623431613734613133366638 39353665653639343661346438343636633937306331333164656666663662373338396536313530 6137636663656637660a363036333663613566373237316637623635623265303434313231653735 3064 ansible_ssh_private_key_file: "/tmp/20240509-5076-oix54r" ansible_become_password: !vault | $ANSIBLE_VAULT;1.1;AES256 33396339316633666565326637633562616561363339646436393530326666616332623233333862 3362356365656433386535666139306337386638626137340a383532623431613734613133366638 39353665653639343661346438343636633937306331333164656666663662373338396536313530 6137636663656637660a363036333663613566373237316637623635623265303434313231653735 3064 source: "/opt/asm-deployer/tls/ca.crt" destination: "/etc/pki/trust/anchors" cert_file: ca.crt is_non_root_user: true
.out 記錄:
"hosts": {
"10.x.x.71": {
"_ansible_no_log": false,
"_ansible_verbose_override": true,
"action": "gather_facts",
"ansible_facts": {},
"changed": false,
"failed": true,
"failed_modules": {
"ansible.legacy.setup": {
"ansible_facts": {
"discovered_interpreter_python": "/usr/bin/python3.6"
},
"failed": true,
"module_stderr": "Warning: Permanently added '10.x.x.71' (ECDSA) to the list of known hosts.\r\nConnection to 10.x.x.71 closed.\r\n",
"module_stdout": "/bin/sh: /usr/bin/sudo: Permission denied\r\n",
"msg": "MODULE FAILURE\nSee stdout/stderr for the exact error",
"rc": 126, Cause
根據日誌分析,我們可以看到問題出在“pflex”用戶許可權上。由於權限問題,「pflex」無法將憑證從來源複製到目的地。
Resolution
修正 pflex 使用者在節點上的權限,可解決此問題:
在主機上:
usermod -a -G trusted pflex cd /etc/sudoers.d cp -p common-criteria common-criteria.2024-05-10 update: common-criteria %trusted ALL=(ALL) NOPASSWD: ALL
測試:
sudo su - pflex sudo ls -ltra
Affected Products
PowerFlex rack, ScaleIOArticle Properties
Article Number: 000227009
Article Type: Solution
Last Modified: 03 Feb 2025
Version: 2
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.