2024년 2월 21일 수요일

PowerVC 및 VIOS 환경에서 유용한 IBM 링크

 1. Dual VIOS 환경에서 좀 더 높은 가용성을 위한 설정

    - https://www.ibm.com/support/pages/multipathing-and-disk-resiliency-vscsi-dual-vios-configuration

2. 이중 VIOS 환경에서 1개의 VIOS 장애 시 LPM 방안
    - https://www.ibm.com/support/pages/new-hmc-firmware-840-feature-allowinactivesourcestoragevios-allows-lpm-dual-vios-configuration-when-one-vios-failed
    - https://supportcontent.ibm.com/support/pages/hsclb937-during-live-partition-mobility-migration-while-one-vios-down

3. NPIV 환경에서 LPM 에러
   - https://www.ibm.com/support/pages/hscla319-during-lpm-validation-aix-npiv-client

4. PowerVC 데이터 수집
   - https://www.ibm.com/support/pages/mustgather-powervc-data-collection

5. CMDB reset 방법
   - https://community.ibm.com/community/user/power/discussion/vios-cmdb-cleanup

6. 제품 버전 별 가이드
   - PVC 2.0.0 : https://www.ibm.com/docs/en/powervc/2.0.0
   - PVC 2.0.1  : https://www.ibm.com/docs/en/powervc/2.0.1
   - PVC 2.0.2 : https://www.ibm.com/docs/en/powervc/2.0.2
   - PVC 2.0.3  : https://www.ibm.com/docs/en/powervc/2.0.3
   - PVC 2.1.0 : https://www.ibm.com/docs/en/powervc/2.1.0
   - PVC 2.1.1  : https://www.ibm.com/docs/en/powervc/2.1.1
   - PVC 2.2.0 : https://www.ibm.com/docs/en/powervc-cloud/2.2.0

가상화 환경에서 packet drop이 많이 발생할 때 확인 및 조치 방안


IBM Power 시스템 환경에서 가상화 및 Private Cloud를 구성할 경우 가장 많은 사례가 있는 구성은 SEA(Shared Ethernet Adapter)를 이용한 가상 Ethernet 방식을 선호합니다.

해당 방법은 상대적으로 간단한 방법으로 구성 가능하며, IEEE 802.1q를 지원으로 VLAN Tagging 및 VIOS 간의 network 부하를 분산할 수 있는 Load balance 모드를 지원하고 있습니다.

아래 그림은 1개의 VIOS 환경에서 어떻게 SEA를 통해 가상 네트워크 서비스를 제공하는지를 논리적인 그림으로 나타난 것으로 보시는 것과 같이 VM에 서비스 가상 이더넷 어댑터는 Hypervisor를 통해 VIOS에 구성된 가상 이더넷 어댑터(서버 역할)로 전달되며 이렇게 전달된 네크워크 데이터는 SEA를 통해 실제 네트워크 어댑터를 통해 네트워크 스위치로 통신하게 됩니다.

개별 VM에서 처리하는 패키이 많지 않을 경우에는 문제가 되지 않지만, 네트워크 부하가 증가되면 VIOS에 설정된 서버 역할의 가상 이더넷 어댑터에 부하가 집중될 수 밖에 없기에 이러한 문제를 적절하게 관리하지 않는다면 packet dropped 또는 심각할 경우 서비스 이슈가 발생할 수 밖에 없습니다.


Packet  Failure 발생 여부 확인은 다음 명령어를 이용하여 확인 가능합니다.

# entstat -d entX
또는
# netstat -v

Hypervisor Send Failure : 79XXX
Receiver Failures : 79XXX
Send Errors: 0
Hypervisor Receive Failures : 0
Invalid VLAN ID Packets: 0

Packet 처리 이슈가 발생할 수 있는 케이스는 아래와 같은 경우에 발생할 수 있는데
   1. VIOS 리소스 부족 
   2. VIOS 가상 어댑터 버퍼 부족
   3. VLAN 및 Mac 어드레스를 포함한 네트워크 이슈
   4. 기타

1번의 경우 자원 부족이 발생할 경우이기에 추가적인 자원을 할당하거나 네트워크 사용량이 높은 VM을 상대적으로 사용량이 적은 서버로 LPM(Live Partition Mobility)을 수행하여 전체 부하를 줄일 수 있습니다.
3번의 경우에는 네트워크 구성 전체에 대한 구성 점검이 필요하며 해당 점검은 네트워크 팀과 같이 수행해야 합니다.

이와 별개로 VIOS 현 구성 내에서 처리할 수 있는 부분은 VIOS 가상 어댑터(서버 역할)에 설정된 버퍼 값을 튜닝하는 것으로 POWER9 & POWER10 서버에서 Best practice로 권고하는 값은 아래와 같습니다.

[VIOS에서 설정할 수 있는 버퍼 권고값]
 # chdev -l entX -a min_buf_tiny=4096 -a max_buf_tiny=4096 -P 
 # chdev -l entX -a min_buf_small=4096 -a max_buf_small=4096 -P
 # chdev -l entX -a min_buf_medium=2048 -a max_buf_medium=2048 -P  
 # chdev -l entX -a min_buf_large=256 -a max_buf_large=256 -P   
 # chdev -l entX -a min_buf_huge=64 -a max_buf_huge=64 -P  

현재 사용 중인 어댑터의 버퍼 속성값을 변경해야 하기에 온라인 중 변경할 수 없으며 추후 VIOS 리부팅 시에 적용할 수 있도록 -P 옵션을 추가할 필요가 있습니다.

튜닝 이후에는 netstat 또는 entstat 명령어를 이용하여 packet failure 값을 확인할 필요가 있으며 해당 값은 리부팅 이후 계속 축적되는 값이기에 모니터링 전 기준 값 확인이 반드시 필요합니다.

좀 더 자세한 내용은 아래 URL을 참조하시기 바랍니다.
   
https://www.ibm.com/support/pages/causes-hypervisor-send-and-receive-failures