PowerFlex 3.6 device_config에서 PowerFlex Gateway에 대한 puppet-certificate가 누락됨

Summary: 이 문서에서는 데이터베이스의 device_config 테이블에서 PowerFlex Gateway에 대한 puppet-cert가 누락되어 발생하는 문제를 식별하고 해결하는 방법에 대해 설명합니다.

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

  • RCM/IC 업그레이드, 서비스 모드 시작 또는 종료 등과 같은 서비스 관련 작업 실패합니다.

  • deployment.log에는 아래 오류와 유사한 오류가 포함되어 있습니다.

  • post_request에서 VXOS REST API 오류가 발생했습니다. nil:NilClass에 대해 정의되지 않은 메서드 '[]'

  • PowerFlex Manager의 리소스 아래에서 PowerFlex 게이트웨이에 대해 두 가지 다른 이름이 나열되어 있는 것을 확인할 수 있습니다.

예:

GW_Screenshot.png

Cause

3.7.x 이상에서 PFxM이 디바이스 구성 정보를 검색하는 방식이 puppet 인증서 이름에서 키잉된 데이터베이스 항목을 사용하도록 변경되었습니다.
일부 작업으로 인해 PFxM에서 보고된 게이트웨이 이름이 변경되었습니다. 게이트웨이가 다른 호스트 이름으로 다시 설치되거나 SSL 인증서가 변경되었습니다.
Database 테이블에는 현재 PowerFlex Gateway 이름에 대한 항목만 있지만 서비스에는 이전 PowerFlex Gateway 이름이 표시됩니다.

Resolution

확인:
1) 노드의 서비스 관련 작업이 실패한 /opt/Dell/ASM/deployments/Job-xxx<> 아래의 작업 ID로 이동합니다.
예: cd /opt/Dell/ASM/deployments/Job-xxx<
>
2) 아래 명령을 실행하여 서비스에서 사용하려는 puppet 인증서를 식별합니다.

고양이 deployment.json|grep -i cert|grep scaleio
본보기:
[delladmin@pfxm-jade Job-913d3f1a-b7cd-4fe9-a4b5-2085d8034d17-0-0]$ cat deployment.json|grep -i cert|grep scaleio.
        "puppetCertName": "scaleio-sio_gw", "puppetCertName":
"scaleio-sio_gw",
[delladmin@pfxm-jade job-913d3f1a-b7cd-4fe9-a4b5-2085d8034d17-0-0]$


3) asm_dev 데이터베이스에 연결하고 ScaleIO 게이트웨이에 대한 certnames를 확인합니다.

psql -U orion asm_dev
asm_dev=> cert device_config name where certname like 'scaleio-%';

예:

asm_dev=> certname like 'scaleio-%'와 같은 device_config에서 certname을 선택합니다.
       certname
----------------------
scaleio-powerflex_gw
(1행)


4) deployment.jason 파일에서 발견 한 puppet 인증서가 데이터베이스에 누락되었는지 확인하십시오. 이 예에서는 "scaleio-sio_gw"이며 데이터베이스에 없습니다.


4단계가 참인 경우에만 아래 단계를 진행하십시오.

1) PowerFlex Manager VM의 스냅샷을 생성합니다.

2) 아래 쿼리를 실행하고 현재 게이트웨이에 대한 필드(certname, host, provider, scheme credential_id)의 값을 기록해 둡니다. 이 예에서 현재 게이트웨이는
scaleio-powerflex_gw입니다.

asm_dev=> select * from device_config were certname like 'scaleio-%';
아이디 |        인증서 이름 |      호스트 | 포트 |           경로 | 제공자 | 계획 |          credential_id | os_credential_id | svm_os_credential_id | os_type | svm_os_connect_ip | svm_os_type |          update_time | svm_name | os_connect_ip
----+-------------------------+-----------------+------+--------------------------+----------+--------+----------------------------------+------------------+----------------------+---------+-------------------+-------------+-------------------------------+----------+---------------
49 | 스케일리오-powerflex_gw | 192.168.150.100 |      | 스케일리오/bin/discovery.rb | 스크립트 | 스크립트 | ff8080816e8e8257016e8e96df6d00e5 |                  |                      |         |                   |             | 2022-04-13 07:01:26974846-04 |          |

을 클릭합니다.
3) 아래 쿼리를 실행하여 누락된 인증서에 대한 device_config 테이블에 새 항목을 추가합니다.
메모:-아래 명령에서 VALUES 필드를 적절한 값으로 바꿉니다.

 

INSERT INTO device_config (certname, host, provider, scheme, credential_id) VALUES('<누락된 인증서 이름>', '<이전 단계에서> 기록된 현재 게이트웨이의 값', '<이전 단계에서> 기록된 현재 게이트웨이의 값', '이전 단계에서 기록된 현재 게이트웨이의 값', '<이전 단계에서> 기록된 현재 게이트웨이의 값', '<이전 단계에서> 기록된 현재 게이트웨이의 값');

본보기: 
asm_dev=> INSERT INTO device_config (certname, host, provider, scheme, credential_id) VALUES('scaleio-sio_gw', '192.168.150.100', 'script', 'script', 'ff8080816e8e8257016e8e96df6d00e5');
인서트 0 1


4) 아래 쿼리를 실행하여 누락된 인증서에 대한 새 항목이 추가되었는지 확인합니다.

certname like 'scaleio-%'와 같은 device_config에서 certname을 선택합니다.

예:

asm_dev=> certname like 'scaleio-%'와 같은 device_config에서 certname을 선택합니다.
       certname
----------------------
scaleio-powerflex_gw
scaleio-sio_gw
(2행)

asm_dev-> \q
[delladmin@pfxm-jade ~]$


5) PowerFlex Manager에서 작업을 다시 시도합니다.

Affected Products

PowerFlex rack, ScaleIO
Article Properties
Article Number: 000198386
Article Type: Solution
Last Modified: 09 Jun 2025
Version:  3
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.