이 문서에서는 Cisco Nexus 1000v Series 스위치의 VSM(Virtual Supervisor Module)이 호스트 UUID의 변경을 처리하는 방법에 대해 설명합니다.적절한 라이센스 수 또는 유형을 사용할 수 없는 경우 트래픽 흐름이 중단될 수 있습니다.
Nexus 1000v 스위치의 VSM은 하드웨어의 UUID(Universally Unique Identifier)를 기반으로 호스트에 라이센스를 부여합니다.즉, 어떤 이유로든 호스트 UUID가 변경되면 VSM에서 새 호스트로 표시됩니다.호스트 UUID가 수명 기간 동안 변경되는 일은 드물지만, Cisco는 UUID가 변경될 수 있는 두 가지 상황을 알고 있습니다. ESXi 5.0의 VMware 소프트웨어 결함, M3 블레이드의 Cisco UCS(Unified Computing System) 펌웨어 결함.
UUID가 변경되면 VSM은 이전에 로드된 모듈을 새 호스트로 간주합니다.호스트가 새 모듈로 로드되고 새 모듈 번호와 새 라이센스가 할당됩니다.사용 가능한 라이센스가 없는 경우 호스트에 오버초안 라이센스가 할당됩니다.사용 가능한 오버드래프트가 없는 경우 호스트에 라이센스가 전혀 할당되지 않습니다.이 호스트에 프로덕션 VM(가상 머신)이 있는 경우 라이센스가 없는 호스트는 VSM에서 프로그래밍을 받을 수 없으므로 더 이상 트래픽을 전달할 수 없습니다.
VMware ESXi 5.0 시스템의 SMBIOS(시스템 관리 BIOS) 버전이 2.6 이상이면 ESXi 5.0 호스트에서 보고하는 SMBIOS UUID가 실제 SMBIOS UUID와 다를 수 있습니다.UUID의 처음 세 필드의 바이트 순서가 잘못되었습니다.
SMBIOS 사양은 x86 아키텍처 시스템에서 BIOS 인터페이스를 확장하고 마더보드 및 시스템 공급업체가 제품에 대한 관리 정보를 표준 형식으로 제공하는 방법을 다룹니다.이 정보는 일반 계측기가 DMI(Desktop Management Interface), CIM(Common Information Model) 또는 직접 액세스를 사용하는 관리 응용 프로그램에 이 정보를 전달할 수 있도록 하며, 상태 탐지를 위한 시스템 하드웨어 프로브 같은 오류 발생 가능성이 높은 작업을 수행할 필요가 없도록 하기 위한 것입니다.
SMBIOS 사양은 BIOS 개발자가 제품에 대한 하드웨어 및 기타 시스템 관련 정보를 정의된 인터페이스의 사용자가 정확하게 확인할 수 있도록 필요한 확장을 구현할 수 있도록 충분한 정보를 제공하기 위한 것입니다.
VMkernel은 CIM을 사용하는 하드웨어와 상호 작용하며 이 정보를 전달합니다.VEM(Virtual Ethernet module)은 VMkernel의 CIM에서 하드웨어에서 처음 수집한 UUID 정보를 읽기 위해 VMkernel과 상호 작용합니다.VEM UUID는 ESXi UUID와 같습니다.
VEM(vem start/restart)을 시작하거나 다시 시작하면 startDpa 함수가 호출됩니다.startDpa 기능은 /opt/cisco/vXXX/nexus/vem-vXXX/shell/vssnet-functions에서 스크립트를 호출하고 ESXi 호스트에서 UUID를 추출합니다.
setBiosUuid()
{
local UUID
UUID=$(esxcfg-info -u | awk '{print tolower($1)}')
if [ "${UUID}" != "" ] ; then
doCommand ${VEMCMD} card uuid vmware ${UUID}
fi
}
참고:
UUID는 Cisco UCS B200 M3, B220 M3 또는 B440 M3 블레이드 서버에서 VMwave ESXi 4.1 또는 ESXi 5.1을 업그레이드할 때 잘못 변환됩니다.이는 표시 문제이며 블레이드와 연결된 서비스 프로필에는 영향을 주지 않습니다.
참고:
이 절차에서는 UUID의 변경으로 인해 발생하는 문제를 해결하는 방법을 설명합니다.
# show module vem mapping <-- old UUID shows unlicensed
# show vms internal info host-table
~ # esxcfg-info |grep UUID <-- new UUID of host
Nexus1000v# conf t
Nexus1000v(config)# no vem 'x'
Nexus1000v# show module vem mapping
Mod Status UUID License Status
--- ----------- ------------------------------------ --------------
3 powered-up 24266920-d498-11e0-0000-00000000000f licensed
4 powered-up 24266920-d498-11e0-0000-00000000000e licensed
Nexus1000v# conf t1단계와 같이 호스트의 새 UUID를 사용합니다.
Nexus1000v(config)# vem <lowest unused module #>
Nexus1000v(config-vem-slot)# host vmware id <uuid>
~ # esxcfg-info |grep UUID
VEM_MGR-2-VEM_MGR_REMOVE_NO_HB Removing VEM 15 (heartbeats lost)
ETH_PORT_CHANNEL-5-PORT_DOWN port-channel15: Ethernet15/1 is down
VEM_MGR-2-MOD_OFFLINE Module 15 is offline
VIM-5-IF_DETACHED Interface Vethernet248 is detached
VEM_MGR-2-VEM_MGR_DETECTED Host ?hostname? detected as module 32
VEM_MGR-2-VEM_MGR_UNLICENSED License for VEM 32 could not be obtained. Please contact your Cisco
account team or partner to purchase Licenses. To activate your purchased licenses, click on
www.cisco.com/go/license .
VEM_MGR-2-MOD_ONLINE Module 32 is online