How to automatically replicate a running VM on ESXi to a computer running locally VMWare Player or VMWare Fusion? - replication

The specific use case I'm dealing in our company is the following:
On a ESXi server, a dedicated VM is running to host a demo environment of a software solution. This demo environment is maintained updated by the development and maintenance team.
At specific points in time, people form sales need to take with them a copy of the latest demo environment (the VM) on their laptop to make customer's demos/presentations.
I wonder if there is a tool to automate this kind of operation silently.

Yes there is.
VMware themself make a product called vCenter Converter which is available here http://www.vmware.com/uk/products/converter/
When using the standalone client choose to convert..
Source : VMware Infrastructure virtual machine
Destination : VMware Workstation or Other VMWare Virtual Machine
You should then be able to open in in Player or Fusion.
*This will require the VMs to be off, if you don't want to turn them off you could clone them first (only available if you aren't using the free ESXi Hypervisor - thus the paid one)
Hope this helps :)

Related

How to install vmware tools on brand new virtual machine using powercli?

how to install vmware tools on a newly build vm which is not in a domain and doesnot have an IP address assigned.
invoke-vmscript or invoke-command are not working.
Invoke-VMScript uses VMware Tools to run commands locally on the Guest OS, so that will not work in this scenario.
I'm afraid there won't be much to help you automate the process, but there are some things you can do to limit the amount of time spent on each system. Example: https://docs.vmware.com/en/VMware-Tools/10.1.0/com.vmware.vsphere.vmwaretools.doc/GUID-7E1225DC-9CC6-401A-BE40-D78110F9441C.html

open vm tools fails to customize guest

I am trying to deploy a cent-os 7 VM on a vcenetr from pyvmomi python library and then before powering on the VM I am trying to setup static IP and DNS for the VM.
VM creation goes fine , but guest customization fails, givimg following error:
**Customization of the guest operating system 'rhel6_64Guest' is not sup
ported in this configuration. Microsoft Vista (TM) and Linux guests with Logical
Volume Manager are supported only for recent ESX host and VMware Tools versions
. Refer to vCenter documentation for supported configurations."
faultCause =
faultMessage = (vmodl.LocalizableMessage) []
uncustomizableGuestOS = 'rhel6_64Guest'
Now this customization problem goes away if the VM is just rebooted once. After that we can do the guest customization.
But this reboot takes around 30 seconds of time and for our case , we need to get VMs up and running faster than this time.
Any body who faces similar problem and has some context on it will be very helpful.
Also I don't understand how rebooting the VM solves this problem.
Please share your thoughts even if you don't have exact solutions .
On further Investigation I found that open-vm-tools does not work until the VM is powered on atleast once.
When Machine is powered on , the HOST system detects the open-vm-tools running on guest OS , and from there on open-vm-tools works.
So open-vm-tools can not be used for initial provisioning as it will just not work at the start up.
Cloud-init is the alternative solution which should be used for initial provisioning.

One click virtual machine demo?

I want to give a demo for my customers use virtual machine, but I don't want the customer to install the virtual machine software, can I make a demo which bundle the virtual machine software and my virtual machine, then just a click to run the virtual machine. It will be cool. is there any tool can do that?
I'm not aware of a virtual machine that doesn't need to be installed. If using Windows, the Microsoft Virtual PC is a relatively compact, free, quick-to-install option for a VM.
One other option would be to install an OS and your demo onto a USB flash drive. As long as the computer used can boot from USB (which is pretty common in newer computers), then you can have complete control over the OS in this fashion.
EDIT: Sun VirtualBox is free VM software. You do have to install it, but I've found that it works well, plus it's free.
You could try using Portable VirtualBox as per this forum thread. I have not tried it myself but it seems like some people have had luck with it.

What's your choice for testing your program in a virtual machine?

When testing our software on several different systems (98-XP-Vista-Seven-Linux-etc), I think that the best choice is to use virtualized systems.
What's your choice: VMware, Virtual Box or MS Virtual PC/Server? and why?
We use VMWare here at work. Really any VM software that supports snapshots (or some way of saving the state of the machine) will work well. Snapshots make it easier for testing installs and rolling back. It can also help if you program goes and modifies files for returning back to a known-good state.
Virtual Box is the way to go. It has snapshots and is platform independent (Good for Mac users who want to test on other OS's). And it is free.
If it's available, Hyper-V on Windows Server 2008 is a powerful and full-featured entry including snapshot trees and all the niceties you'd expect with a quality UI.
If you're planning on using the VM on your local dev machine so you can (e.g.) bring it home on your laptop to work from there, then the more client-oriented virtualization software is probably the way to go.
If you're planning on using the virtualization in a primarily professional environment, a number of Hyper V machines in a computer lab that you can remote into is a powerful paradigm that we've been using at my office for a few months now.
My own preference is to use a local VM (Virtual PC is the easiest one for me) as my development environment because I can bring my work laptop home and use the VM there also (I don't VPN into the office). I then use the lab's Hyper-V machines for tests, deployments, etc because they have a better story for taking and restoring snapshots.
Go VMware. My reason is simple: before VMware released VMWare player and VMware server (the virtualisation platform formerly known as VMware GSX), the market for VM hosts was limited and expensive.
When VMware released these for free, all the other manufacturers (yes, I'm looking at Microsoft here) had to follow suit, so if it wasn't for the beneficence of VMware, we'd still be looking at having to buy our VM host software.
So, support VMware for being the good guys.
Oh, and their enterprise products are the business, they work well with Linux, have some excellent memory-saving tricks (here's the tech details), multiple snapshots and snapshots off a base image, and have features such as VMotion (load spreading) that other products don't support nearly as well (if at all).
Microsoft's VirtualPC. It free and simple.
One bit of functionality that is nice is the differenced VHDD that makes it easy (and space wise cheep) to keep backing up/reverting the image
VMWare, that's what we use here. We have both the full blown ESX for virtual servers and the VMWare workstations for development / testing. ESX resource management is very good, and easy to configure.
I've used VMWare (when the company would pay for it), VMWare Server (when the company would not), VirtualBox (because it's free, decent, and supports snapshots), Parallels on the Mac (which I bought), and Xen.
All work fine.
My current workhorse is VirtualBox, largely because it's free, supports snapshots, and runs on the various host platforms I have to use.
VMWare works pretty well, but for high cpu server apps we have found that Microsoft's Hyper-V works better because it has better cpu reservation abilities.
The key is that the system has snapshots, so you can easily roll back to several states (most do) and we have found that both VMWare and Hyper-V have excellent API's allowing us to kick off our automated tests when a new build completes.
Microsoft Virtual PC for Microsoft OS's, Virtual Box for *nix.
Virtual PC seem to be slightly faster and more stable, but it does not support linux.
We might have used VMWare if it was free,but our company would not spend the money.
Virtual box is great. It does have some stability issues if you run it inside Mac OS X. if you need a single solution to run multiple OS's this would be the one.
Linux/OpenSolaris on top of Virtual Box on top of Linux.

MAMP/LAMP native or virtual (Virtualbox/VMware)?

What is your preferred development environment ?
Native
WAMP/MAMP/LAMP (Apache, MySQL, PHP) on Windows/MacOS/Linux
Working copy local, SVN/CVS on server
IDE/Editor on the same system (Eclipse, Aptana, Zend...)
Virtual/Native (Server on VM)
LAMP on VirtualBox/VMware
working copy in the VM
IDE/Editor on host, access to the VM with Samba, FTP, SFTP (eventually mapping with tools like WebDrive)
Virtual (VM)
Complete development environment running in a VM (server, tools, IDE)
Host is only used for special tools not available on the OS running in the VM
All have pros and cons.
With BitNami stacks you can run the exact same XAMP environment locally or remotely (and make sure everybody on your team is running the exact same stack). It is free and works on Windows, Linux, Mac.
I like having the SVN repository somewhere on a web server.
It's reasonably secure (using Apache WebDAV), and it gives me a good chance of recovering quickly from any disasters that may befall my main development machine. I have the luxury of control over my own web server, but there are lots of cheap hosts that will do the job at low cost.
As regards VM or no VM:
Advantages of VM - very fast recovery from screwing up your development environment
Ability to try out different versions or upgrades quickly
If you have many systems running the VM host, ability to quickly move the whole environment
Can choose any Host
Disadvantages of VM - performance impact; extra setup complexity.
On balance, I go for "no VM" if all the tools are available on my host system, but I do use VM when I need to run a different OS (the host system is a Mac Pro, so if I need Visual Studio, I do it with Parallels).