WilliamLam.com

  • About
    • About
    • Privacy
  • VMware Cloud Foundation
  • VKS
  • Homelab
    • Resources
    • Nested Virtualization
  • VMware Nostalgia
  • Apple

Want to test drive Apple OSX 10.10 Yosemite? Try it on VMware Fusion & vSphere

06.06.2014 by William Lam // 26 Comments

Earlier this week, Apple announced their next version of Mac OSX at their annual developer's conference called OSX 10.10 Yosemite. For those of you who are part of Apple's Development Program and would like to test drive the latest Developer Preview, you can quickly and safely do so by running it inside a Virtual Machine using either VMware Fusion or VMware vSphere.

Disclaimer: It is important to note that Mac OSX 10.10 is not officially supported by VMware because Apple has not officially GA'ed, however it will run fine for the most part.

UPDATE (07/26/14) - I was able to install the latest OSX Yosemite public beta using the same instructions listed below.

It is highly recommended that you perform an upgrade using the .app from an existing installation of Mac OSX to Yosemite for optimal performance. There are currently some known issues with a fresh installation which may cause some problems, this is currently being investigated by VMware Engineering.

Installing OSX Yosemite on Fusion:

For Fusion users, I recommend using the latest VMware Fusion 2014 Tech Preview and selecting OSX 10.9 as the guestOS. If you have any feedback on the Tech Preview of Fusion, be sure to leave a comment on the Fusion Community Forums. Here are a couple of screenshots going through the upgrade as well as a successful boot of Mac OSX 10.10.

mac-osx-10.10-yosemite-vmware-fusion-0
mac-osx-10.10-yosemite-vmware-fusion-1

Installing OSX Yosemite on vSphere:

For vSphere users, you will need to be running vSphere 5.5 and using Virtual Hardware 10 which provides support for Mac OSX 10.9 as a guestOS. If you need to perform a fresh installation of OSX, you can follow the detailed instructions here which requires a quick format of the underlying virtual disk before starting the installation. Below is a screenshot of Mac OSX 10.10 running on vSphere on top of my Apple Mac Mini.

mac-osx-10.10-yosemite-vmware-vsphere-1

Here are a couple of things I noticed about the current Beta of OSX 10.10:

  • Installing VMware Tools does not work and just seems to hang. If you need VMware Tools, make sure you install it before upgrading
  • After upgrading from OSX 10.9 to 10.10 running on VMware Fusion 6.0, it seems to hang after reboot
  • It feels a bit sluggish, potentially from being the first Beta drop

Even with some of these issues, I still think it is pretty cool that you can run a Beta version of OSX that was literally released a couple of days ago. I know VMware Engineering is already hard at work on figuring out the issues and optimizing OSX 10.10 to run just as smooth as past releases of Mac OSX. I am confident by the time Mac OSX Yosemite GA's, that it will be running flawlessly! I also would like to thank Regis Duchesne for sharing some tips on getting OSX 10.10 up and running.

Categories // Fusion, vSphere Tags // fusion, mavericks, osx, vSphere, yosemite

Quick Tip - Offline viewing of vSphere API & other API docs using Dash

06.06.2014 by William Lam // Leave a Comment

As a frequent consumer of the vSphere API, a must have bookmark for all my systems (work/personal) is the vSphere API Reference document. In my opinion, This is a must have for anyone that is serious about vSphere Automation and having it be an online document, it allows you to quickly search for a specific property or method. The problem with an online document of course is that if you are not connected to the internet, you will not have access to it. VMware does provides an offline version for viewing which is bundled within the vSphere Management SDK.

This morning when I woke up, I was going through the list of sites that I read on a regular basis such as Y Hacker News and the top entry at the moment was "Dash - Beautiful instance offline docs for almost everything". I quickly realized this was not the first time I had heard of this tool, my good friend Timo Sugliani had actually introduced me to Dash a couple months back and he even mentioned it might be possible to view the vSphere API documents. After installing Dash, I did not see the vSphere API docs from what I recall and I just never had time to play with it again. I figure it has been awhile, maybe I should give it another try? I updated Dash this morning to latest version and noticed that the vSphere API documentation is now available and covers vSphere 5.0, 5.1 and 5.5.

dash-documentation-1
Once you have downloaded the specific vSphere API documentation, you can then quickly browse or search through the different class objects, methods, properties and enumeration values. You can see from the screenshot below, it will automatically search through all your documentation include online searches on such as Google and Stack Overflow which I thought was pretty neat.

dash-documentation-2
In addition to being able to easily view the vSphere API documentation offline, but you can also view other types of API documentation. Dash currently supports over 290+ documentation sets and you can even create your own doc sets and contribute them back to Dash. The other neat thing about Dash which I have not tried yet is the plugin integration with popular IDEs like Sublime, Textmate, Eclipse to just name a few. The only downside I see at the moment is that Dash is only for Mac OSX, but it looks like there might be plans to support a Windows version later this year. If you work with a lot of API documentation, Dash might be something you may want to check out. I know I will start leveraging it when I am offline.

Categories // Automation, vSphere Tags // dash, documentation, vSphere, vSphere API

Considerations when migrating VMs between vCenter Servers

05.02.2014 by William Lam // 19 Comments

Something that I really enjoy when I get a chance to, is to speak with our field folks and learn a bit more about our customer environments and some of the challenges they are facing. Last week I had quick call with one of our TAMs (Technical Account Managers) regarding the topic of Virtual Machine migration between vCenter Servers. The process of migrating Virtual Machines between two vCenter Servers is not particularly difficult, you simply disconnect the ESXi hosts from one vCenter Server and re-connect to the new vCenter Server. This is something I have performed on several occasions when I was a customer and with some planning it works effortlessly.

However, there are certain scenarios and configurations when migrating VMs between vCenter Servers that could potentially cause Virtual Machine MAC Address collisions. Before we jump into these scenarios, here is some background. By default, a Virtual Machine MAC Address is automatically generated by vCenter Server and the algorithm is based on vCenter Server's unique ID (0-63) among few other parameters which is documented here. If you have more than one vCenter Server, a best practice is to ensure that these VC IDs are different, especially if they are in the same broadcast domain.

As you can imagine, if you have two vCenter Servers that are configured with the same VC ID, there is a possibility that a duplicate MAC Address could be generated. You might think this is probably a rare event given the 65,000 possible MAC Address combinations. However, it actually happens more frequently than you think, especially in very large scale environments and/or Dev/Test for continuous build/integration environments which I have worked in the past and I have personally seen these issues before.

Going back to our vCenter Server migration topic, there are currently two main scenarios that I see occurring in customr environments and we can explore each in a bit more detail and their implications:

  • Migrate ALL Virtual Machines from old vCenter Server to new vCenter Server
  • Migrate portion of Virtual Machines from old vCenter Server to new vCenter Server

Migrate all Virtual Machines:

vm-migration-between-vcenter-0
In the diagram above, we have vCenter Server 1 and vCenter Server 2 providing a before/after view. To make things easy, lets say they have VC ID 1 and 2. If we migrate ALL Virtual Machines across, we can see their original MAC Addresses will be preserved as we expect. For any new Virtual Machines being created, the 4th octet of the MAC Address will differ as expected and the vCenter Server will guarantee it is unique. If you want to ensure that new Virtual Machines keep a similar algorithm, you could change the vCenter Server ID to 1. No issues here and the migration is very straight forward.

Migrate A portion of Virtual Machines:

vm-migration-between-vcenter-1
In the second diagram, we still have vCenter Server 1 and vCenter Server with unique VC IDs. However, in this scenario we are only migrating a portion of the Virtual Machines from vCenter Server 1 to vCenter Server 2. By migrating VM2 off of vCenter Server 1, the MAC Address of VM2 is no longer registered with that vCenter Server. What this means is that vCenter Server 1 can potentially re-use that MAC Address when it generates a new request. As you can see from the above diagram, this is a concern because VM2 is still using that MAC Address in vCenter Server 2, but vCenter Server 1 is no longer aware of its existence.

The scenario above is what the TAM was seeing at his customer's site and after understanding the challenge, there are a couple of potential solutions:

  1. Range-Based MAC Address allocation - Allows you to specify a range of MAC Addresses to allocate from which may or may not helpful if the migrated MAC Addresses are truly random
  2. Prefix-Based MAC Address allocation -  Allows you to modify the default VMware OUI (00:50:56) which would then ensure no conflicts would be created with previously assigned MAC Addresses. Though this could solve the problem, you potentially could run into collisions with other OUI's within your environment
  3. Leave VMs in a disconnected state - This was actually a solution provided by another TAM on an internal thread which ended up working for his customer. The idea was that instead of disconnecting and removing the ESXi host when migrating a set of Virtual Machines, you would just leave it disconnected in vCenter Server 1. You would still be able to connect the ESXi host and Virtual Machines to vCenter Server 2 but from vCenter Server 1 point of view, the MAC Addresses for those Virtual Machines are seen as in use and it would not be reallocated.

I thought option #3 was a pretty interesting and out of the box solution that the customer came up with. The use case that caused them to see this problem in the first place is due to the way they provision remote environments. The customer has a centralized build environment in which everything is built and then shipped off to the remote sites which is a fairly common practice. Since the centralized vCenter Server is not moving, you can see how previously used MAC Addresses could be re-allocated.

Although option #3 would be the easiest to implement, I am not a fan of seeing so many disconnected systems from an operational perspective as it is hard to tell if there is an issue with the ESXi host and Virtual Machines or because it has been migrated. I guess one way to help with that is to create a Folder called "Migrated" and move all disconnected ESXi hosts into that folder which would help mask that away and disable any alarms for those hosts.

Some additional per-requisite checks that you can perform prior to the partial Virtual Machine migration:

Ensure that the destination vCenter Server is not configured with the same VC ID else you can potentially run into duplicate MAC Address conflicts. You can do this either manually through the vSphere Web/C# Client or leveraging our CLI/API to do so.

Here is an example using PowerCLI to retrieve the vCenter Server ID:

Get-AdvancedSetting -Entity $server -Name instance.id

Ensure no duplicate MAC Addresses exists by comparing the MAC Addresses of the Virtual Machines to be migrated to the Virtual Machines in the new environment. Again, you can either do this by hand (which I would not recommend) or leveraging our CLI/API to extract this information.

Here is an example using PowerCLI to retrieve the MAC Addresses for a Virtual Machine:

Get-VM |  Select-Object -Property Name, PowerState, @{"Name"="MAC";"Expression"={($_ | Get-NetworkAdapter).MacAddress}}

If there are other scenarios or solutions that you have seen with Virtual Machine migrations between vCenter Serves, feel free to leave a comment. I am sure others can benefit from past experiences or any other lesson learns.

Categories // vSphere Tags // mac address, migration, vCenter Server, vSphere

  • « Previous Page
  • 1
  • …
  • 20
  • 21
  • 22
  • 23
  • 24
  • …
  • 40
  • Next Page »

Search

Thank Author

Author

William is Distinguished Platform Engineering Architect in the VMware Cloud Foundation (VCF) Division at Broadcom. His primary focus is helping customers and partners build, run and operate a modern Private Cloud using the VMware Cloud Foundation (VCF) platform.

Connect

  • Bluesky
  • Email
  • GitHub
  • LinkedIn
  • Mastodon
  • Reddit
  • RSS
  • Twitter
  • Vimeo

Recent

  • Programmatically accessing the Broadcom Compatibility Guide (BCG) 05/06/2025
  • Quick Tip - Validating Broadcom Download Token  05/01/2025
  • Supported chipsets for the USB Network Native Driver for ESXi Fling 04/23/2025
  • vCenter Identity Federation with Authelia 04/16/2025
  • vCenter Server Identity Federation with Kanidm 04/10/2025

Advertisment

Privacy & Cookies: This site uses cookies. By continuing to use this website, you agree to their use.
To find out more, including how to control cookies, see here: Cookie Policy

Copyright WilliamLam.com © 2025

 

Loading Comments...