I have recently acquired a Lenovo workstation, to replace my little Raspberry Pi 2 which I had been using at home as a server. The Lenovo has got slightly more RAM than the RPi, 32GB vs 1GB, slightly more computing power, and uses much more electricity. Anyway, I figured that having all the roles that I want to implement on a single server might not be the best of ideas since I’m one of those people who fiddle with their server settings quite often and frequently mess it all up…
VMware Workstation has been one of my most frequently used software on my desktop, in order to run sandboxed operating systems and run Linux on top of Windows. I’ve previously played with ESXi with several ultra powerful HP servers a few years ago, so naturally I went with the ESXi option to virtualise my server. The installation is fairly straightforward, but I will run through the process anyway because I had hit some snags on the way myself.
The iso file is downloadable from here. You will need to register for a VMware account in order to get the free serial number. At the time of writing this post, the latest version is ESXi 6.5, however it’s only released a couple of weeks ago and might not be suitable for production just yet. As a result I’ve gone with the ESXi 6.0 version 2 which (in my opinion) is much more robust.
After acquiring the ISO, make a bootable USB with it. There are plenty of options out there, but I like to use Rufus. It’s literally as simple as choose USB stick, choose ISO, click Start, and you are there.
Booting from the USB, you are going to be presented with the installation screen.
Note that I’m installing this example on a virtual machine (it’s a bit of a strange concept to grasp, as I’m installing a virtual machine host in a virtual machine on a real host…), but the process is exactly the same for when you are deploying it on an actual host.
After scanning for devices to install it to, it’s going to show you all the options. On my server, since I had a RAID1 setup, the LSI RAID card shows up in the “remote” section, but installation to any destination is exactly the same. Set a root password (note this should be a bit complicated and not frequently used. We’ll set up some special user permissions later on)
Installation should not take any time at all, since the entire operating system is a mere few hundred megabytes. When it asks you to reboot, do so (surprise!). After your computer has rebooted, a “intro” screen will be displayed with the network information on it. What I recommend, is to configure the Management Network (the one that you use to log into the ESXi host and do the configuration) on the host itself before doing anything else. It’s ideal to have a static IP, since you might be running DHCP servers on this host, and it’s not great if it needs to wait until the server to start automatically before being able to get a IP address.
Press F2, and enter your root password which you just set minutes ago. From here, you can go into “Configure Management Network”, and do the configurations according to your liking. Afterwards it’ll ask you if you want to restart the management network, if you don’t restart, it’ll not apply the updated settings to the host, so restart it.
That’s been fairly straightforward right? Now we get a little bit in-depth about it. On your computer (not the ESXi), open a web browser and go to the address your server is showing on its screen. From here, there are two options, A) Download vSphere Client for Windows, and B) Open the VMware Host Client. My suggestion is that you download the vSphere client, but VMware is pushing to move everything to the web, in version 6.5, it doesn’t even offer you the option to download vSphere. However, I do find that some settings are more easily configured with the vSphere client.
After installing the vSphere client, you will be prompted to login. Use your root username and password, with the IP address of your ESXi host which was either configured by you earlier, or obtained through DHCP.
What I like to do straight after logging in, is to configure another user so that I don’t have to use root all the time. I’m going to talk about two different options to add users to the host, one with Active Directory domain, one without. Feel free to skip ahead if some sections doesn’t match your situation.
Now, you should go to the web client. Go back to your browser, and click on “Open the VMware Host Client”, then login as before. On the left, under Host, there should be a “Manage” link, click on that, then choose the “Security & Users” tab on your right hand side. Then in the middle, there should be an option for “Authentication”, click on it, and you can join the domain on the right hand side.
If you experience any problems joining the domain, it could be because your DNS isn’t configured properly. You can either go back to the physical host, and configure your DNS by pressing F2, or, you can go to vSphere client, under configuration tab, “DNS and Routing” option, click on properties on the top right corner, and configure it there.
No Active Directory:
Well, if you don’t belong in a domain, this step is going to be much much easier for you.
Simply go to vSphere client, click on “Users” tab, right click at a blank space, there should be an option to add a user.
This prompt is slightly confusing in that it’s not clear what the uses of “login” and “user name” are. Let me clarify this for you: “Login” is what you use (much like root in earlier steps) to log into the host. “User Name” is just a description of who it is. So in my case, the login is “steven”, and “User Name” is “Steven X. Han”.
You’ve added your user, however, it is not permitted to do anything on the host. In order to grant your new user some permissions, go to “Permissions” tab in your vSphere client, right click on a blank space, and choose “Add Permission…”. On the left, you can “Add…” a user that you want to modify the permission of. (Note for the domain users, you will need to select your own domain on top in order to find the users in the domain instead of local users on the ESXi host) Then on the right, you can choose the Assigned Roles, I like to grant my user the “Administrator” role, because it’ll be very likely that everything I do will be under this user.
Click on okay at the bottom, now you can close the vSphere client, and log back in with your new user. Go ahead and check if you can, if you can’t do that, then go back and see if you’ve missed any steps.
Once your user is up and running, what I’d do at this stage is to assign the licence to the host, because the “evaluation warning” at every log-in makes me mad. If you remember, when you downloaded the ISO file, you were provided with a serial number, go to VMware website and find it, then you can use that to register your ESXi host.
Go to “Configuration”, then under Software on the left, click on “Licensed Features”. On the top right corner, you can click “Edit…”, and “Assign a new license key to this host”.
Have you kept up? Good.
The next step that I usually take, is to configure the network if you have multiple NICs, to achieve redundancy in case one of them fails.
I find the redundancy configuration is much more intuitive and easier to do on the web client, so I’ll go with the web client for this instruction. It is very simple. In the “Navigator” bar on the left, you should see “Networking”, clicking on that will show you all the networking bits and bobs on the right. Select “Virtual switches” tab, and there should be a switch called “vSwitch 0”. This is the virtual switch that (so far) all the traffic is going through, and clicking on it will bring up the settings and status for it.
As you can see, there is a warning telling you that it has no uplink redundancy. Simple click on “Actions”, then “Add uplink”. It will automatically detect your second NIC, and all you need to do is clicking “Save”. Boom – now you have network redundancy.
Now you are ready to add virtual machines to this host. It’s not too difficult is it?
Let me know if you encounter any problems along the way, and I’ll be happy to help out! In the mean time, if you have any suggestions on what I can improve on, I will be super excited to hear them!