cancel
Showing results for 
Search instead for 
Did you mean: 
cancel

Using CIMC Mounted vMedia

23987
Views
7
Helpful
15
Comments

There are many great new features that have been rolled into the CIMC 1.5 release for Standalone C-Series Servers. I presented a session at Cisco Live outlining many of these new features, but also wanted to take a few minutes to share more details and samples that I was not able to share in this session.

CIMC Mounted vMedia will allow customers to mount media from a remote file location and is available through all three CIMC interfaces (XML API, CLI and also WebUI). This feature supports multiple share types including NFS, CIFS, and WWW shares.

Some of the advantages of CIMC Mounted vMedia include:

  • Communication between mounted media and target stays local (inside datacenter)
  • Media mounts can be scripted/automated
  • No vKVM requirements for media connection
  • Multiple share types supported
  • Connections supported through all CIMC interfaces

Note: CIMC Mounted vMedia is enabled through BIOS configuration.

Getting started with CIMC Mounted vMedia is easy! Here are some samples on how to use this feature…

-----------------------------------------------------------------------------------------------------------------------

1. Scriptable vMedia Overview – WebUI:

In the WebUI, CIMC Mounted vMedia (also referred to as Network Mounted vMedia) is located in the Server Tab under the Remote Presence --> Virtual Media option.  Click on the ‘Add New Mapping’ button and provide mount details on the menu referenced above.

CIMC_vMedia.png

-----------------------------------------------------------------------------------------------------------------------

2. Scriptable vMedia Overview – Command Line Interface:

login as: admin

admin@10.10.10.10's password: <password>

ucs-c24-m3#

ucs-c24-m3# scope vmedia

ucs-c24-m3 /vmedia # map-nfs WIN2012 10.10.10.11:/ISOS/Windows/Windows_2012/ en_windows_server_2012_x64_dvd_915478.iso

ucs-c24-m3 /vmedia # show mappings

Volume Map-Status Drive-Type Remote-Share Remote-File Mount-Type

---------------- ------------------------ ---------- ------------------------ ------------------------ --------

WIN2012 OK CD         10.10.10.11:/ISOS/Wi... en_windows_server_201... nfs

ucs-c24-m3 /vmedia # show mappings detail

Volume WIN2012:

    Map-Status: OK

    Drive-Type: CD

    Remote-Share: 10.10.10.1:/ISOS/Windows/Windows_2012/

    Remote-File: en_windows_server_2012_x64_dvd_915478.iso

    Mount-Type: nfs

    Mount-Options: "timeo=2,retry=2,nolock,soft,noexec,rsize=3072,wsize=3072"

ucs-c24-m3 /vmedia # unmap WIN2012

ucs-c24-m3 /vmedia #

-----------------------------------------------------------------------------------------------------------------------

3. Scriptable vMedia Overview - XML API: (NFS)

Login:

curl -k -d "<aaaLogin inName='admin' inPassword='password'></aaaLogin>" http://10.10.10.10/nuova

Response:

<aaaLogin cookie="" response="yes" outCookie="1369402946/f834c550-dd76-1d76-800b-233362a70344" outRefreshPeriod="600" outPriv="admin"> </aaaLogin>

------------------------

Map vMedia: (In this case we are mapping a Windows 2012 ISO over NFS):

curl -d "<configConfMo cookie='1369402946/f834c550-dd76-1d76-800b-233362a70344' inHierarchical='false' dn='sys/svc-ext/vmedia-svc/vmmap-WIN12'> <inConfig> <commVMediaMap map='nfs' dn='sys/svc-ext/vmedia-svc/vmmap-WIN12' volumeName='WIN12' remoteShare='10.10.10.11:/ISOS/Windows/Windows_2012' remoteFile='en_windows_server_2012_x64_dvd_915478.iso' /> </inConfig> </configConfMo>" http://10.10.10.10/nuova

Response:

<configConfMo dn="sys/svc-ext/vmedia-svc/vmmap-WIN12" cookie="1369402946/f834c550-dd76-1d76-800b-233362a70344" response="yes">

<outConfig>

<commVMediaMap volumeName="WIN12" map="nfs" remoteShare="10.10.10.11:/ISOS/Windows/Windows_2012" remoteFile="en_windows_server_2012_x64_dvd_915478.iso" mountOptions="nolock,noexec,soft,timeo=2,retry=2,rsize=3072,wsize=3072" mappingStatus="In Progress" dn="sys/svc-ext/vmedia-svc/vmmap-WIN12" status="created" ></commVMediaMap></outConfig>

</configConfMo>

------------------------

Optional - Check Mapping:

curl -d "<configResolveChildren cookie='1369402946/f834c550-dd76-1d76-800b-233362a70344' inHierarchical='false' inDn='sys/svc-ext/vmedia-svc'/>" http://10.10.10.10/nuova

Response:

<configResolveChildren cookie="1369402946/f834c550-dd76-1d76-800b-233362a70344" response="yes">

<outConfigs>

<commVMediaMap volumeName="WIN12" map="nfs" remoteShare="10.10.10.11:/ISOS/Windows/Windows_2012" remoteFile="en_windows_server_2012_x64_dvd_915478.iso" mountOptions="nolock,noexec,soft,timeo=2,retry=2,rsize=3072,wsize=3072" mappingStatus="OK" dn="sys/svc-ext/vmedia-svc/vmmap-WIN12" ></commVMediaMap></outConfigs>

</configResolveChildren>

------------------------

Optional - Set Boot Order and reboot server:

Curl -k -d "<configConfMo cookie='1369402946/f834c550-dd76-1d76-800b-233362a70344' inHierarchical='true' dn='sys/rack-unit-1/boot-policy'> <inConfig> <lsbootDef dn='sys/rack-unit-1/boot-policy' rebootOnUpdate='yes'> <lsbootVirtualMedia access='read-only' order='1' type='virtual-media' rn='vm-read-only'/> <lsbootStorage access='read-write' order='2' type='storage' rn='storage-read-write'/>  </lsbootDef> </inConfig></configConfMo>" http://10.10.10.10/nuova

Response:

<configConfMo dn="sys/rack-unit-1/boot-policy" cookie="1369402946/f834c550-dd76-1d76-800b-233362a70344" response="yes">

<outConfig>

<lsbootDef dn="sys/rack-unit-1/boot-policy" name="boot-policy" purpose="operational" rebootOnUpdate="no" status="modified" ><lsbootVirtualMedia access="read-only" order="1" type="virtual-media" rn="vm-read-only" status="modified" ></lsbootVirtualMedia><lsbootStorage rn="storage-read-write" access="read-write" order="2" type="storage" status="modified" ><lsbootLocalStorage rn="local-storage" status="modified" ></lsbootLocalStorage></lsbootStorage></lsbootDef></outConfig>

</configConfMo>

------------------------

Delete vMedia Mapping:

curl -d "<configConfMo cookie='1369402946/f834c550-dd76-1d76-800b-233362a70344' inHierarchical='false' dn='sys/svc-ext/vmedia-svc/vmmap-WIN12' >   <inConfig> <commVMediaMap map='nfs' dn='sys/svc-ext/vmedia-svc/vmmap-WIN12' volumeName='WIN12' remoteShare='10.10.10.11:/ISOS/Windows/Windows_2012' remoteFile='en_windows_server_2012_x64_dvd_915478.iso' status='removed' /> </inConfig></configConfMo>" http://10.10.10.10/nuova

Response:

<configConfMo dn="sys/svc-ext/vmedia-svc/vmmap-WIN12" cookie="1369402946/f834c550-dd76-1d76-800b-233362a70344" response="yes">

<outConfig>

</outConfig>

</configConfMo>

------------------------

Optional - Check Mapping:

curl -d "<configResolveChildren cookie='1369402946/f834c550-dd76-1d76-800b-233362a70344' inHierarchical='false' inDn='sys/svc-ext/vmedia-svc'/>" http://10.10.10.10/nuova

Response:

<configResolveChildren cookie="1369402946/f834c550-dd76-1d76-800b-233362a70344" response="yes">

<outConfigs>

</outConfigs>

</configResolveChildren>

-----------------------------------------------------------------------------------------------------------------------

4. Scriptable vMedia Overview - XML API: (WWW)

Login:

curl -k -d "<aaaLogin inName='admin' inPassword='password'></aaaLogin>" http://10.10.10.10/nuova

Response:

<aaaLogin cookie="" response="yes" outCookie="1379157121/0a4e4440-e656-1656-8049-d5a4206516bc" outRefreshPeriod="600" outPriv="admin" outSessionId="155" outVersion="1.5(1.38)"> </aaaLogin>

------------------------

Map vMedia: (In this case we are mapping a Windows 2012 ISO over NFS) - NFS, CIFS, or WWW supported:

curl -d "<configConfMo cookie='1379157121/0a4e4440-e656-1656-8049-d5a4206516bc' dn='sys/svc-ext/vmedia-svc/vmmap-Win12' inHierarchical='false'> <inConfig><commVMediaMap dn='sys/svc-ext/vmedia-svc/vmmap-Win12' map='www' mountOptions='username=,password=' remoteFile='en_windows_server_2012_x64_dvd_915478.iso' remoteShare='http://10.29.143.50/' status='created' volumeName='Win12' /></inConfig> </configConfMo>" http://10.10.10.10/nuova

Response:

<configConfMo dn="sys/svc-ext/vmedia-svc/vmmap-Win12" cookie="1379157121/0a4e4440-e656-1656-8049-d5a4206516bc" response="yes">

<outConfig>

<commVMediaMap volumeName="Win12" map="www" remoteShare="http://10.29.143.50/" remoteFile="en_windows_server_2012_x64_dvd_915478.iso" mountOptions="noauto,username=,password=" mappingStatus="In Progress" dn="sys/svc-ext/vmedia-svc/vmmap-Win12" status="created" ></commVMediaMap></outConfig>

</configConfMo>

------------------------

Optional - Check Mapping:

curl -d "<configResolveChildren cookie='1379157121/0a4e4440-e656-1656-8049-d5a4206516bc' inHierarchical='false' inDn='sys/svc-ext/vmedia-svc'/>" http://10.10.10.10/nuova

Response:

<configResolveChildren cookie="1379157121/0a4e4440-e656-1656-8049-d5a4206516bc" response="yes">

<outConfigs>

<commVMediaMap volumeName="Win12" map="www" remoteShare="http://10.29.143.50/" remoteFile="en_windows_server_2012_x64_dvd_915478.iso" mountOptions="noauto,username=,password=" mappingStatus="OK" dn="sys/svc-ext/vmedia-svc/vmmap-Win12" ></commVMediaMap></outConfigs>

</configResolveChildren>

------------------------

Set Boot Order and reboot server:

Curl -k -d "<configConfMo cookie='1379157121/0a4e4440-e656-1656-8049-d5a4206516bc' inHierarchical='true' dn='sys/rack-unit-1/boot-policy'> <inConfig> <lsbootDef dn='sys/rack-unit-1/boot-policy' rebootOnUpdate='yes'> <lsbootVirtualMedia access='read-only' order='1' type='virtual-media' rn='vm-read-only'/> <lsbootStorage access='read-write' order='2' type='storage' rn='storage-read-write'/>  </lsbootDef> </inConfig></configConfMo>" http://10.10.10.10/nuova

Response:

<configConfMo dn="sys/rack-unit-1/boot-policy" cookie="1379157121/0a4e4440-e656-1656-8049-d5a4206516bc" response="yes">

<outConfig>

<lsbootDef dn="sys/rack-unit-1/boot-policy" name="boot-policy" purpose="operational" rebootOnUpdate="no" status="modified" ><lsbootVirtualMedia access="read-only" order="1" type="virtual-media" rn="vm-read-only" status="modified" ></lsbootVirtualMedia><lsbootStorage rn="storage-read-write" access="read-write" order="2" type="storage" status="modified" ><lsbootLocalStorage rn="local-storage" status="modified" ></lsbootLocalStorage></lsbootStorage></lsbootDef></outConfig>

</configConfMo>

------------------------

Delete vMedia Mapping:

curl -d "<configConfMo cookie='1379157121/0a4e4440-e656-1656-8049-d5a4206516bc' inHierarchical='false' dn='sys/svc-ext/vmedia-svc/vmmap-Win12' >   <inConfig> <commVMediaMap map='www' dn='sys/svc-ext/vmedia-svc/vmmap-Win12' volumeName='Win12' remoteShare='http://10.29.143.50:/' remoteFile='en_windows_server_2012_x64_dvd_915478.iso' status='removed' /> </inConfig></configConfMo>" http://10.10.10.10/nuova

Response:

<configConfMo dn="sys/svc-ext/vmedia-svc/vmmap-Win12" cookie="1379157121/0a4e4440-e656-1656-8049-d5a4206516bc" response="yes">

<outConfig>

</outConfig>

</configConfMo>

------------------------

Optional - Check Mapping:

curl -d "<configResolveChildren cookie='1379157121/0a4e4440-e656-1656-8049-d5a4206516bc' inHierarchical='false' inDn='sys/svc-ext/vmedia-svc'/>" http://10.10.10.10/nuova

Response:

<configResolveChildren cookie="1379157121/0a4e4440-e656-1656-8049-d5a4206516bc" response="yes">

<outConfigs>

</outConfigs>

</configResolveChildren>


Comments
Community Member

Jeff, We have several ucs c420-m3 servers, and we try to do firmware upgrade from 1.5(1f) to 1.5 (2). We were able to mount ucs-c420-huu-1.5.2.3.iso using WebUI. But after mounting, and then power recycle, the firmware version is not changed.

Can you tell me how do I make sure that mounting is successful, and what do I need to do after mounting to actually upgrade the firmware?

Thanks.

Yichi

Cisco Employee

Hi Yichi,

If I understand correctly, it sounds like you used Remote vMedia to mount an HUU (Host Update Utility) ISO to the system and then booted into this ISO - is that correct? When you booted into the HUU GUI, did you select 'Update All' and watch the firmware update progression?

I have documented the firmware udpate process in another post here:

https://communities.cisco.com/docs/DOC-36277

Note: This site includes videos and links to our Non-Interactive HUU Utilities

To address your question about how to tell if a mount is successful, the easiest way to check is on the Remote Presence page of the WebUI where you should see the mapping and a status of 'OK' in the table. Another way to map the HUU ISO is through the vKVM mapping which I wanted to mention for completeness.

Please feel free to reach out to me directly if you have any other questions. Thank you!

Jeff

Community Member

Jeff:

You are correct that I tried to mount an HUU iso and boot into this iso.

The servers we have do not have NFS mount. So we had to use www, or http to

mount iso. Anyway, I finally was able to update firmware by using cisco's

Python HUU Tool. Thanks.

Yichi

Cisco Employee

Hi Yichi,

This is great - thank you for the update!

Jeff

Cisco Employee

Is there significant performance difference between the CIFS, NFS, and HTTP backends?

Community Member

Hey Jeffrey,

This seems to be an old post, but hoping you're still around to lend a hand. I have 3 UCS running ESXi, I tried mounting the HUU.ISO using HTTPS method, pointing to the datastore of one of the other UCS. If I use the URL within a web browser, i can get to the file just fine. I can even map it within CIMC Virtual Media, status says OK. The problem doesn't start until i actually try to boot into it.

When i try to boot into it, i get the initial Cisco splash screen indicating it is loading and after a minute or two, it just drops the connection and reboots.

Within CIMC Virtual Media it will change from status of OK to "Stale (Reason: Input/Output error)". I haven't been able to find anything online or additional logs to help troubleshoot. Last time i called Cisco (a few days ago) for assistance they didn't even know the Remote Presence > Virtual Media option existed. Any guidance you can provide will be much appreciated.

Cisco Employee

Hi Aaron - Will ask our current IMC Software TME look at this to see if he has some ideas.

Community Member

Hey Jeffrey, I appreciate the quick response.

A little more details:

I'm trying to upgrade from version 2.0(9m) to 3.0.4a. As I mentioned earlier, everything seems to indicate it maps successfully and at least starts to boot into the ISO until it fails.If i go back into the Virtual Media section and unmap and attempt to remap the the ISO, it gives me a different error "ERROR: file size: 672137216".... is their some sort of file size limitation perhaps? It will continue to fail the mapping sometimes also giving error "error 503 service unavailable" until i reboot CIMC, then it defaults back to OK status up until i attempt to boot into it again.

Cisco Employee

Hi Aaron - I will look into this, but am not sure off the top of my head what is causing your issues. Have you tried any other HTTP(S) shares not part of these data stores? Or CIFS/NFS? Take a look at the HUU communities page here: Cisco Standalone C-Series HUU Utilities

I will try digging on this specific issue and come back with any findings.

Community Member

Hello Gregory - No unfortunately at the moment my only available options are whatever is contained within the 3 UCS. They use VMFS datstores so i cannot use NFS. They host Voice Environment (all cisco OS), so CIFS will not work either. My only option is to use the HTTP(S) feature to connect to the share within the datastores. I tried doing the upgrade from all 3 UCS and all 3 experienced same symptoms. I'm at a remote location connected via VPN, so connecting via KVM and mounting that way is not an option. I couldn't find anything online regarding the errors i mentioned, would their be any way to pull additional logs perhaps?

Cisco Employee

If you use the Python HUU tools, there is an option in there to save the HUU logs. And the more I think about this, this may be a low memory issue on the IMC, where we ask users to reboot the IMC before running the upgrade. Is this on an M3 platform by chance?

Community Member

Yes, they are C220-M3S. Also i did reboot CIMC as part of troubleshooting. When it failed the first time I could not get it to remap the share until i rebooted the CIMC, then i was able to map again. Then i tried booting into it and it started to load for about a minute before it dropped again with same errors. I'll keep the Python method in mind for my next attempt. I won't be able to take down the environment again for a while. In the meantime, any additional assistance or information you can provide will be greatly appreciated. I can't be the only one to ever have this issue.

Cisco Employee

I'm surprised the reboot before update does not fix this as this clears out available memory to use for the upgrade. You can perhaps extract the IMC/BIOS bin/cap files from the HUU - then run the IMC upgrade first. Update/activate the new image and then try kicking off the HUU again (once you are running 3.0(4a) IMC). Do you happen to have a TAC case or SR for this? They should be able to help dive into tech support logs etc.

Cisco Employee

Hi Aaron - we are trying to reproduce this locally. What exact ESXi version are you running? Also, any details on vCenter version as well?

Community Member

Hello Gregory - Hosts were running ESXi 5.5 U3h build 7618464, no vCenter. Example mapping listed below for your convenience.

An HTTP request for datastore access uses the following syntax:

http[s]://server/folder[[/path]?dcPath=path[&dsName=name]]

Example:

https://Host_IP/folder/ESXi_Upgrade/ucs-c220-huu-3.0.4a.iso?dcPath=ha-datacenter&dsName=datastore1

You would enter that into CIMC in the following format, otherwise it fails to map successfully.

Remote SHARE: https://Host_IP/folder

File Name: /ESXi_Upgrade/ucs-c220-huu-3.0.4a.iso?dcPath=ha-datacenter&dsName=datastore1

*Note: Host_IP/folder is static. "folder" is not the name of the directory. This piece indicates what Datastore to start at "?dcPath=ha-datacenter&dsName=datastore1"... Then everything AFTER the "folder" piece, indicates the path within that Datastore.

CreatePlease to create content
Content for Community-Ad
July's Community Spotlight Awards