get serviceget interface 등의 CLI 명령을 실행하면 KVM 호스트에 배포된 NSX Manager에서 오류를 반환합니다.

문제

CLI 명령 get service가 오류를 반환합니다. 예를 들면 다음과 같습니다.
nsx-manager-1> get service
% An error occurred while processing the service command
다른 CLI 명령도 오류를 반환할 수 있습니다. get support-bundle 명령은 /tmp 디렉토리가 읽기 전용이 되었음을 나타냅니다. 예를 들면 다음과 같습니다.
nsx-manager-1> get support-bundle file failed-to-get-service.tgz
% An error occurred while retrieving the support bundle: [Errno 30] Read-only file system: '/tmp/tmpHzXF1u'
/var/log/messages-<timestamp> 로그에는 다음과 같은 메시지가 있습니다.
Nov 17 07:26:48 no kernel: NMI watchdog: BUG: soft lockup - CPU#5 stuck for 23s! [qemu-kvm:4386]

원인

NSX Manager 장치에서 하나 이상의 파일 시스템이 손상되었습니다. 몇 가지 가능한 원인이 https://access.redhat.com/solutions/22621에 문서화되어 있습니다.

이 문제를 해결하려면 손상된 파일 시스템을 복구하거나 백업에서 복원을 수행할 수 있습니다.

해결책

  1. 옵션 1: 손상된 파일 시스템을 복구합니다. 다음 단계는 KVM 호스트에서 실행되는 NSX Manager에만 사용됩니다.
    1. virsh destroy 명령을 실행하여 NSX Manager VM을 중지합니다.
    2. qcow2 이미지에서 쓰기 모드로 virt-rescue 명령을 실행합니다. 예를 들면 다음과 같습니다.
      virt-rescue --rw -a nsx-unified-appliance-2.0.0.0.0.6522097.phadniss-p0-DK-to-DGo-on-rhel-prod_nsx_manager_1.qcow2
    3. virt-rescue 명령 프롬프트에서 e2fsck 명령을 실행하여 tmp 파일 시스템을 수정합니다. 예를 들면 다음과 같습니다.
      <rescue> e2fsck /dev/nsx/tmp
    4. 필요한 경우 오류가 없어질 때까지 e2fsck /dev/nsx/tmp를 다시 실행합니다.
    5. virsh start를 사용하여 NSX Manager를 다시 시작합니다.
  2. 옵션 2: 백업에서 복원을 수행합니다.
    지침을 보려면 " NSX-T 관리 가이드" 를 참조하십시오.