Home Server Project: Part 3 (Operating System)

In the previous post in this series I mentioned the ProLiant DL380 G7 and how it has become the new work horse for my Home Lab, in this next part I am going to discus the operating system being deployed and some of the reasons why.

When initially delving into server operating system I had only ever uses Ubuntu Server 16.04, and while this is an ideal server operating system I required a OS that would allow for me to manage numerous elements with very little effort.

This lead to a hunt around the depths of the internet and I kept coming across a number of different options, the top three where UnRaid, FreeNAS and Exsi. Although each boast different features and use cases they all became very viable options.

vSphere Hypervisor

With the initial intention to deploy everything as a virtual machine Exsi was at the top of the pile, it is an industry standard and partnered with VMware’s vSphere it has remote management capabilities. This would allow for simple deployment of numerous virtual machines. The benefit of this is the ability to throw a new virtual machine up every time I required one.
Although this solutions would cost money I am able to receive it for nothing due to a deal offered by my University. Excluding Exsi there are a number of other solutions that allow for the deployment of virtual machines, Proxmos appears to be a popular solution and due to it being open-source is free to use.

FreeNAS

FreeNAS is a solution based on the FreeBSD operating system, once deployed on a system it allows for network attached storage to be utilized across your network. It also offers back up services for Windows, Mac and Linux meaning that as a NAS solutions it is very effective.
But aside from offering the previously mentioned features it also boast a number of plugins ranging from Plex Media Server to OwnCloud. This allows the the NAS to be used in a slightly more beneficial manner than a simple storage and back up solutions.

Although eventually FreeNAS was not deployed onto my main system, I do have a project to utilize the back up and storage abilities it offers.

UnRaid

UnRaid is a very intriguing service as the name would suggest it allows for you to “unraid” your devices. In my current system I have 8 146GB SAS drives all in raid 5. This allows for no data to be lost in the case that one drive fails.
UnRaid however allows for a software based solution to manage a similar system, with drives of varying size and speed. While I do not personalty utilize this features I can see the benefits if someone was to throw a server together using parts they had laying about.
UnRaid allows for both Virtual Machines and Dokcers to be used, this features is something that I have found very beneficial as the docker repository has hundreds of items that range from personal cloud storage to Plex Media Server. This is an easy and effective method to deploy software onto the server with very limited interaction from the user bar setting some parameters.
The use of Virtual Machines within UnRaid is also a huge benefit as it allows for virtual labs or mail servers to be deployed and easily managed from one window.

 

I finally settled on UnRaid as it appeared to hit all the criteria I was looking for and after having used it on my previous server I felt confident that it was the solution that would benefit my home lab the most. While it is not the free option and in some cases could be perceived as somewhat limiting I have found that if you tweak around with it enough there wont be much you can not do with it.

 

 

 

 

Home Server Project: Part 2

This post has been a long time coming and it is Part 2 of my Home Server Project, In Part 1 I discuss the HP ProLiant DL360 G5. Although initially I was utilizing that server it soon became apparent after a week that it was not an ideal solutions.
One of the biggest problems was that the DL360 G5 was incredibly loud and due to it being situated underneath a TV unit this made watching the media stored on it awkward and unpleasant.
This lead to a hunt for a new server that would offer a huge amount more power and hopefully would run more silently. After digging around the depth of eBay I came across the HP ProLiant DL380 G7.Although the DL360 had been my first server purchase ever, I felt that the build quality was good and I was slightly more familiar with it.

dl380g7hires__26718-1479211480-1280-1280
HP ProLiant DL380 G7

Specifications DL380 G7                                 Specifications DL360 G5 
CPU: 2x Xeon L5640  (12 Core’s Per CPU)      CPU:  2x Xeon 5150 (2 Core’s Per CPU)
RAM: 32 GB DDR3 ECC                                      RAM: 20GB DDR2 ECC
HDD’s: 8 x 146GB  15K SAS                               HDD’s:6 x 146GB SAS (Assorted Speeds)

I have opted to use UnRaid again as I found the ability to use dockers helpful and easy to manage, combine this with the abilities to run virtual machine it offers all aspects of what I require.
The Set up for UnRaid is simple and thankful the DL380 offers an internal USB port so there is no USB stick poking out of the front or rear.

Due to the acquisition of this other server my home network requires some potential upgrades as well, this included a 48 port managed switch. Although this was purchased in complete knowledge of it being over kill, it does allow for a huge amount of expansion in future.

 

NETGEAR FSM750S 48-PORT 10/100 L2 + 2 GB PORTS MANAGED STACKABLE SWITCH
NETGEAR FSM750S 48-PORT 10/100 L2 + 2 GB PORTS MANAGED STACKABLE SWITCH

Unfortunately due the builtin fan the sound levels produced by the switch did not work for the current setup and as a result a small managed 8 port switch was also purchased. Although the smaller switch is not rack mountable, in the currant setup this is not an issues as there is still no rack.

 

NETGEAR GS108Ev3 8-Port Gigabit Smart Managed Plus Switch
NETGEAR GS108Ev3 8-Port Gigabit Smart Managed Plus Switch

The acquisition of a server rack will be over the next few months as currently space is a concern. That being said I have seen a number of IKEA coffee tables that have been converted into make shift server racks.

Over the next few weeks there will hopefully be more detailed post regarding setting up the home lab as well as a detailed list of use cases.

Ubuntu Server Installation

The process of installing Ubuntu server be it on a Virtual Machine or an actual system can seem daunting at first, but aside from the GUI that Ubuntu Desktop boast the process is the same.

A prerequisite to the installation will be your boot media, I tend to use a USB stick for this as the process of creating the device is much easier and does not require any blank disks. There are a number of applications online that allow for you to create a bootable device but I have found Rufus to be the simplest and easiest to use.

Once you have the bootable device all you need to do is insert it into the system and power it on.

Stage 2 –  Select Language to display the installation in

wp-1520337492587..jpg

Stage 2 – Choose the type of installation, for the purpose of this tutorial and all my personal usage we will select “Install Ubuntu Server”

wp-1520337513268..jpg

Stage 3 – Select installation language

wp-1520337575410..jpg

Stage 3 – Select Location

wp-1520337588686..jpg

Stage 4 – Configure the keyboard, for the purpose of this demo it will be done manually. But there is the option for automatic keyboard detection

wp-1520337604215..jpg

Stage 5 – Select the keyboard configuration that best suit you

wp-1520337612418..jpg

Stage 6 – The installation detects disks and other hardware

wp-1520337622053..jpg

Stage 7 – The installer will acquire additional components such as the setup of the clock

wp-1520337655096..jpg

Stage 8 – The Installer then goes on to detect the network hardware

wp-1520337662332..jpg

Stage 8 –  Select the host name for the system or just the name of the system. An example might be mail if your device is intended to be a mail server.

wp-1520337670510..jpg

Stage 9 – Type in the users full name (The Username will be automatically detected using the users first name but can be changed)

wp-1520337679152..jpg

Stage 10 – Select user password and retype for confirmation

wp-1520337689733..jpg

Stage 11 – Select if you want your home directory to be encrypted (I usually select no as I have limited requirement for it)

wp-1520337698339..jpg

Stage 12 –  Confirm the automatic detection of the clock settings (If it is incorrect by selecting no you will be given the option to select yours)

wp-1520337706211..jpg

Stage 13 – The installer then detects all other disks and Hardware

wp-1520337716614..jpg

Stage 14 – Selecting the disk size and creating partitions (For this installation we only need this to be installed as a sole OS as the rest of the machines will be running virtually from this host server) You can select use entire desk or set up LVM. The only real benefit of LVM is on the fly partition changes.

wp-1520337725939..jpg

Stage 15 – Select this disk to write changes to

wp-1520337736007..jpg

Stage 16 – Confirm that you wish to write the changes, it may warn you that you will lose all existing data

wp-1520337744336..jpg

Stage 17 – Final confirmation to write changes to disk

wp-1520337751592..jpg

Stage 19 – The installer will then install the system to the disk/partition you have your opted for

wp-1520337759495..jpg

Stage 20 – Installer is configuring the Apt source lists

wp-1520337766753..jpg

Stage 21 – At this stage of the installation you are given the option to set up a Proxy connection, if you do not require this leave it blank and continue

wp-1520337774462..jpg

Stage 22 – The installer is selecting and installing the required software

wp-1520337782323..jpg

Stage 23 – At this stage I would suggest selecting “Install security update automatically” but decided based on your own preferences

wp-1520337790673..jpg

Stage 24 – The software selection alow for you to pre install certain packages before the initial boot into the server. This could potently save time, but I personal add all my software after the installation so select manual package.

wp-1520337799751..jpg

Stage 25 – The installer will then install any selected softwares and clean up once it is done.

wp-1520337808297..jpg

Stage 26 – The installer then sets up and installs the GRUB boot loader

wp-1520337815585..jpg

Stage 27 – If this is the only OS on the system then you need not worry about just selecting yes.

wp-1520337823198..jpg

Stage 28 – Confirm and finish the installation

wp-1520337832162..jpg

 

After you have finished the installation the system will reboot and you should remove the bootable media from the system before it boots back up.

A good method on first logging into the new system is to run the commands below as there is a high change the system will inform you that there are a number of packages that require updating. You can run them all at once with example 1 or individual wit example 2.

Example 1

sudo apt-get updates; sudo apt-get upgrade; sudo apt-get dist-update

Example 2

sudo apt-get updates
sudo apt-get upgrade
sudo apt-get dist-update

I hope this helps when installing Ubuntu server, and if you enjoyed check out my Home Server Project

 

Home Server Project: Part 1

I recently stumbled upon a HP ProLiant DL360 server, and after using an old ThinkPad T400s as a mail server I felt it would be a worth while investment.
Although this purchase was made without thinking about all the details in full such as the sound of the server and the weight and size.104684Specifications

  • CPU: 2x Xeon 5150 @ 2.66 GHz
  • RAM: 20GB (Mixture of 2 & 4 GB sticks)
  • HDD’s: 6 x 146GB SAS drive (876 GB SAS Total)
  • PSU: 700W
  • Storage Controller: Smart Array P400i Controller

hp-proliant-dl360-g5-1x-quad-core-xeon-e5440-2-8ghz-4gb-raid-700w-1u-rack-server-2-31583-p

So overall it is a decent bit of kit for the price, but the next step was deciding what to do with it. I had a number of ideas but was limited due there only being 4 CPU cores. After a small amount of research and a quick check on eBay there is the option to upgrade to two 4 Core CPU’s for between £10-£30.

Buy upgrading the core count it will alow for a much greater amount head room in regard to Virtual Machines. Ideally the server will run Ubuntu 17.10 Server and utilise a number of headless Virtual Machines to run the rest of my intended operations.

I have decided definitely on a Plex server to alow for distribution of media around my house and with Plex Pass outside of the home. This is something I have set up a number of time and feel that by running it through a VM will make it easier as I will be able to remote into a Visual environment. I have seen a number of posts online mentioning the creation of a headless Plex server but to keep it simple when using an external drive I have decided to use Ubuntu Desktop.

Then there will be a virtual environment that will run my mail server, this will be done with iRedMail for no other reason than top keep it simple and easy. As iRedMail is a kind of all in one solution adding all of the packages required and create a web system for admin and accessing emails.
I could use PostFix and create the entire server bit by bit, but have found this solution to be more tedious and not as efficient. The mail server its self-will not require anything to fancy and the web-based access will be very rarely used, as Thunderbird or Android email will be used to send and receive mail.

This leaves me with a couple of other options that I am debating, one of which is a small NAS back up server for both mine and my partners Laptops. This wont require all that much storage space as it will only really be for crucial documents and potently documents we need to share. So it would only be 150GB or so. I have not looked too deep into this yet as I am still debating buying a dedicated NAS system.

I would also like to host a small web server to potently host Michael Talks Tech from my own server, I am aware that using WordPress is probably a much more reliable system. But I feel that if I have the capabilities I should at least consider it, I am also working on a number of projects that will require dedicated web hosting. So to reduce cost and control my data a small web server is a potential idea.

This project will be on going and Part 2 will be mainly focused on the initial setup and installation of the system and Virtual Machines. I would love to hear any other suggesting that I might not have considered.