Setting up a VMware Esxi 6.0 Virtual Server on OVH Hosting
Overview
We have been using dedicated server hosting for past couple of years. We were happy using servers from www.server4you.com. Although they have a bit slow support, they have good dedicated server offerings at bargain prices. Recently with our foray into the open source space we needed couple of Linux servers too. After struggling and hitting a roadblock with Server4you in trying to run virtualization on their servers, we started to look for other options. One of the strong contender we found was OVH.com. They have two other sister companies too, which provide bargain servers.
In this blog post we try to highlight some of the challenges and advantages that we faced while working with OVH. It took us several hours trying to figure out different parts of the service and get it functional. There have been several forum posts by others who have given important information to help us configure our servers correctly. In this blog post we are trying to string together our journey to make it easier for others. We specialize in bespoke software development and are not trained IT admins, but we definitely like to dabble into IT as far as we can. We are sure someone with a strong IT experience in virtualization might know these issues up front. But this is our layman’s view of this process.
Note: This is not a paid review of OVH, this is just describing our experience.
Getting Started
There were two very key features offered by OVH which attracted us to their servers. Firstly, bargain priced dedicated servers and secondly ability to run virtualization platform on their servers. We have not seen any other bargain provider giving such offerings, especially the latter feature to allow us to directly host a virtualization platform on their server. It was a good solution for our needs to host both dedicated Windows and Linux virtual machines and that to at a bargain – simply irresistible!
We picked the Enterprise SP-64 server with the following key specs:
- Intel Xeon E5-1620v2
- 64GB DDR ECC RAM
- 2x2 TB SATA3 (Software RAID)
- 500 Mbps bandwidth guarantee
- IP KVM
- 500 GB backup space
- Ability to have public IP’s at no monthly cost (one time fixed cost of $3 applies)
The server was far more powerful than our current servers as well as had enough hardware capabilities to host several Linux VM’s. Once we fixed the server and purchased it, there came the first hurdle. They required identity proof of our company and the individual purchasing, only after identity verification the payment gets collected. It was late night, we did not have my documents on hand. So the next morning, we emailed them the documents. Within couple of hours, we got an confirmation to purchase. Punch-in the credit card info and we hit hurdle number 2 (it’s a regular occurring hurdle), all credit card payments are manually authorized by their staff! Since we are based in Mumbai, India in GMT +5:30 timezone, it usually takes a while before their staff gets to approving our payment manually. We am not sure what policies have lead them to make this a practice, but in todays rapid world waiting for manual verification seems too much. It sucks all the excitement out of the process as well as you waste days waiting on every step.
Finally, in couple of hours the payment got approved and a server got assigned to us. OVH has a pretty mature control panel that lets to view and control several aspects of your services. Its one of the most detailed panel we have seen and are pretty happy with the control it gives us.
Figure 1: OVH Hosting control panel.
Hyper-V 2012 R2 Virtualization – a failed effort
As soon as we had access to the servers one of the first thing to do was pick a virtualization platform. We have been using Hyper-V internally and were pretty confortable with it so we went with it first. In the OVH control panel (as shown above) you can click on the System (OS) spanner icon and choose an OS of your choice. They have several options of base OS and virtualization platforms to choose. This is again a pretty unique feature we have seen in their hosting and a pretty good one too. Installation of Hyper-V server went smoothly and RDC credentials were sent via email. We could remote into the server and get to the command prompt.
Internally we were used to using the RSAT tools for Windows 8.1 to manage Hyper-V servers. We expected the same to work for this server, but couple of hours of goggling solutions we figured out that RSAT tools only work in Intranet environment. As soon as the server detects that it is in a public internet environment RSAT tools do not work. We found a workaround to remotely managing the server using this guide written by Mark Thompson. Only difference we found that after we installed chocolatey, we could not install Google Chrome, so we installed Firefox and went ahead with it. Another useful tool to download and install was explorer plus plus. It’s a free file manager and a good replacement for missing Windows Explorer on the barebones Hyper-V server. Once FireFox was installed we could download the Linux/Windows ISO of our choice and store it locally. Then use the free 5Nine Hyper-V manager to create new virtual machines using that ISO. It was pretty straight forward once the ISO was downloaded, to get a VM up and running. But that VM had no internet connectivity. Unlike a local network with DHCP where new machines can get IP Addresses assigned automatically, VM’s on the internet need public static IP addresses if you wish to use them for hosting purposes. This is where we had been stuck with server4you hosting in the past and were curious to see if OVH had the right solution for this.
In order to assign public IP to your virtual machine you need to first order it from OVH. OVH allows about 256 IP Addresses to be assigned to a single machine at a one time setup cost. Although there is a cravat now that ARIN has exhausted IPv4’s, you might have to first raise a support ticket with OVH requesting them to allow you to purchase additional IP addresses for your server. If they approve, then you need to go into the OVH control panel –> IP –> Order Additional IP’s. This will open a wizard asking you the number of IP’s you wish to purchase and the cost for it. Remember you can only purchase as many IP’s as they OVH support has enabled for your server. If you need more you need to contact their support.
The same manual verification process follows after payment for IP’s, so you need to wait till you payment is verified and the IP’s get assigned to you. Once the new IP’s are assigned to you, in order to use them in virtual machines you need to generate a Virtual MAC for them. In layman terms, hosting companies configure their routers to ensure that the public IP’s that they distribute is only assigned to their servers to avoid abuse. They lock the IP address to a particular network MAC to ensure only that machine can use the IP address. This was the same problem we were facing with server4you hosting, the only difference in OVH is that their control panel allows you to assign a Virtual Mac to the IP address so that you can directly assign the IP address to the virtual machine. This again is a very good feature in OVH, without this there is no point of hosting VM’s because you will never be able to assign them public IP’s.
Go the the IP section in the control panel, expand the new IP’s you have received and click on the settings icon and select Add a virtual MAC from the context menu. A dialog similar to figure 2 is shown, select Create a new Virtual MAC. Type can be OVH for all other platforms, only select vmware if you are using vmware esxi because it requires virtual mac’s in a particular format. Then give the name of the virtual machine you will apply this IP to and click Confirm. This will take a while and generate a MAC for your IP address.
Once you have generate the virtual MAC, use this guide from OVH to setup static MAC for your Virtual Machine. Unfortunately for us, after several tries and reboot we were never able to get the public IP working in the VM. Nor we could get internet access for our VM’s. OVH only provides support for their hardware and not for software configuration. We scanned the net for different articles. The steps to take were redone couple of times. We also went through re-install of Hyper-V and reconfiguration but no matter what we were not able to get it working.
Online forums posts some users facing similar issues felt that there were routing issues with OVH and it took ages for them to acknowledge or fix. Several users had even cancelled their accounts because support was not able to fix the issue. It was frustrating and we were dejected thinking probably the offer was too good. The problem was that it was a software configuration issue and OVH support only helps with hardware issues and there was no clear forum answer too. Dejected, we clearly failed in this configuration effort.
VMWare ESXI 6.0 – A success
Going through the forum posts we read about several users who had been successful in using OVH with VMWare ESXI. Although it was a new platform for us, we wanted to give it a try since it pretty comparable to Hyper-V in terms of performance and capabilities. As well as its free like the Hyper-V server. Hence we want ahead and installed VMware ESXI 6.0 from the OVH control panel using the default partition options. Once the install was done OVH emailed us the link to the web interface for VMware ESXI server which is basically the IP address of your server accessed over HTTPS. This began our newbie journey in working with ESXI. We are sure someone with VMWare ESXI experience will find our journey humorous but our hope to to help those like us who do not have deep knowledge of ESXI to get started with it.
Figure 3: VMWare Esxi 6.0 Web interface
VMWare provides a free windows tool vSphere client to manage the server. Although the tool has several limitations and can’t access the latest features provided by ESXI 6.0. There is a paid vCenter tool from VMWare which allows which allows full management for ESXI, but we choose to stick to the free tool for now. Click on the Download vShpere Client for Windows link from the webpage loaded from the link provided in OVH by email. Once the vSphere client is installed start it and use the credentials for root use provided in the OVH email to login to your ESXI server. The vSphere Windows client lets to configure all basic parts of ESXI as well as allows you to create and mange virtual machines.
Here again the challenge came of how to upload a Linux/Windows ISO to ESXI to boot and create a VM. There are several solutions, some forum posts suggested to ssh into esxi server and then using command line tools to download the iso’s. But its pretty hard to find direct links to ISO installers and we did not want to muck around in ssh until we knew what we were doing.
Figure 4: vSphere Client Summary tab
The other way to to upload an image using vSphere client. First download the appropriate ISO to your local machine. Then use the vSphere to upload the image. In vSphere client, go to the Summary tab and right-click on datasource1 (highlighted in Figure 4 above) under Storage section and select Browse Datastore from the context menu. Note: you might not see backupstore under storage section like figure 4, we will talk about it a bit later.
In the Datastore Browser, click the Add Folder icon to create a new folder called Installer (you can name it whatever you like). Note: On a new server there will not be any folders created like shown in Figure 5.
Then double click on the newly created Installer folder to open it. Then click on the Upload file/Folder icon (circled in red in Figure 5) and select a local ISO to upload and click OK. Then wait for the ISO to upload. It could take a long time depending on your upload connection speed. Usually DSL connections have a higher download but a very low upload speed, so it could take ages. Luckily we had our existing dedicated server running, so we installed vSphere client on it and uploaded the ISO’s from there. It was a much faster and pain free process. You could use an Azure or Amazon Vm for some time to just upload the ISO and then shut them down once you are done if your upload bandwidth is crappy.
Once you have the ISO uploaded you can use the Create a new Virtual Machine wizard from the vSphere client to go ahead and create new virtual machines as required. We would also suggest that before you power up you new VM, you also generate a new virtual mac for the IP in OVH (as described above) but this time choose the VMware option which generating the virtual mac to make it vmware compatible. Then go under network settings for the vm and assign a the generated static virtual mac as shown in this guide. Either during installation or post installation you can follow this guide from OVH to assign the static IP to the virtual machine. Once you correctly assign the virtual MAC as well as the static IP the vm should be able to access the internet as well as you should be able to ping into the vm’s static IP address. This approach worked well for us and we continue to use this deployment. There were a couple of more things that we needed to setup to complete our installation.
ESXI 6.0 – Add a free license
The VMWare ESXI 6.0 installed by default has a 60 day trial period and it needs a free license from VMWare to be installed. You can follow this guide to generate and install a free ESXI license (please skip the part of the guide which relates to download and install of ESXI since we already have it installed)
Restrict Access to ESXI
As we were working with our new server, we found one day that we were no longer able to login into server. No one had changed the passwords, but the vSphere client would simply refuse to login. Worried we used the OVH control panel to reboot the server (a good feature from OVH which allows quick automated reboots) and were able to login post the reboot. On looking at the event logs in vSphere client we found that someone had started to attack our vmware server by running a password list, and due to failed password attempts the root account was being locked out. Googling we found that root account on ESXI 6.0 can’t be disabled and this is a common problem. So we suggest you use this guide to configure ESXI to only accept connections from your IP addresses. There might be several other ways to secure your ESXI, but we found this one to be good enough to meet our needs.
Setting up Backup datastore
One of the neat features which OVH provides is 500gb of backup disk space. Not only that, it allows FTP, NFS and CIFS access to the backup storage so that you can easily configure it as a network drive in ESXI as well as from within your VM clients. Follow this detailed guide from OVH to configure your backup space as well as to allow your new Public IP’s to have access to the backup storage. You will receive an email with the FTP username, password and servername of the backup once its created, please refer to the email to configure further. Once backup is configured in the vSphere client go to Configuration tab and click on Storage under Hardware. Then click Add Storage to bring up the Add Storage wizard as shown in Figure 6. Select Network File System option and click next.
Figure 6: Add Storage wizard step 1
Figure 7: Add Storage Wizard step2
On refer to the email with ftp details of you backup space to get the access details. In step 2 of the Add Storage wizard fill the following information:
Server: The FTP server name given in your email
Folder: /export/ftpbackup/login – Where login is given in your email
Datastore Name: This can be anything you want
Clicking on Next will allow you to add the backup storage as an NFS datasource for ESXI. Once this is setup you can move files to the backupstore using the Browse Datastore popup from the summary page.
Conclusion
This blog post has tried to highlight our journey in setting up VMWare ESXI 6.0 on OVH hosting server. We hope that this post helps those who are new to OVH hosting and makes it easier for them to setup their server. VM backups is one major area we have not yet explored and are currently relying on each client VM backing up its data to the backup storage. But eventually we will have to figure backup for VM’s and that should serve as a new blog post.