Translator

UserOnline

, 9 Guests,

Archives

Print This Post Print This Post

Hyper-V 2012 Server Core

windows-hyper-v

I have been studying for my upgrade test for Microsoft Server 2012 and ran across Hyper-V 2012 Server Core.  So I down loaded it and set up a little lab that I could test it features and functionality.  I used 2 HP 8400 Workstations as the servers and a Dell M90 as the domain controller  with another laptop to use for access to the Hyper-V Servers.

The download was about 2 Gigs and installed really quickly.  So in about 30 minutes I had two virtual servers.  The DC was Windows Server 2012 and you will really need a domain to make some of the features work correctly.  With the domain up and the servers all connected I began the task of finishing configuration but if you have ever used a Windows Core server there is no real interface.  So to make this process a great deal easier you should download a tool called Corefig.  You can download it by clicking here.   This adds an easy to use interface that makes using a Core server a great deal easier.  Here is a pic of the interface.

corefig

This makes it a lot easier if you don’t want to run this on a domain, but you will still have some problems.  Anyhow, once you get the machines built and the basic configuration out of the way you can proceed with the building of you virtual machines.  Using ISO files makes this a great deal easier but physical media will be fine but you will need to put them in the server CD drive.  You will also need a Windows machine to access the Hyper V Manager so you can control the VMs with a GUI interface.  I used Windows 8 for this but Window 7 will work but you will have to download the remote administrations tools from Microsoft and install Hyper V Manager.

With all of that complete you can simply connect to the Hyper V servers and start the process of building the VMs.  I’m not going to go through building the VMs because it is pretty straight forward and easy to do.  The things I really like about Hyper V 3 is the replication and fail over features that are built in.  First I will go over replication.  It is also pretty easy to do.  The machines I am using are not part of a cluster and they don’t have any kind of shared storage.  But you can simply click on your VM and select replication.  My machines are on a domain so this process my or my not work with two standalone machines.  The replication menu will is also easy to use.  You just enter the Hyper V server to replicate to and it will begin.    After the initial replication of the VM it will update the VM copy on the other machine every few minutes.  If you had a large number of VMs replication this may take a little bit but I didn’t see any lag from this process.  Once the replication precess is up and working you can click on the replication tab and select failover.  This will make sure the replicated VM is up-to-date and power that machine on.  So if a server fails or you just need to do some work on a server you can move VMs back and forth with very little effort.  This feature is usually not part of a free Hypervisor.  Here is a pic of the replication menu on the Hyper V Manager.

hyperv2

Another feature is the ability to move the VMs from one server to another while they are still running without shared storage.  This one takes a little more setup time and will not work without a domain.  The first thing I did was create a security group and add my Hyper V servers to it.  Then I added two delegations to the Hyper V computers in Active directory.  On each of the Hyper V servers in Active Directory I selected properties and then delegation.  I the delegation menus I selected Trust this computer to trusted delegation service only and selected the Use Kerberos only radio button.  Then in the delegated service box I selected add and added the following services for the other server you will be moving VMs to:

  • cifs
  • Microsoft Virtual System Migration Service

With these delegations added you should no be able to move live VMs from one server to another.  The tab looks like the following.

hyperV_properties

Now with everything set up you should be able to right click on the VM in Hyper V Manager and select move.  It will ask you which server to move it to along with a few other questions on how you want this to be performed.  These are questions about moving the VM if you have shared storage or not, what you want to do with the VM files, and what drive on the other server you want to move the VM to.  Once you answer these questions you select finish and it will begin moving the machine to the other server.  If you wan to see that it is still live just log into the VM and you can see that it remains functional.  It will also close the RDP window and open it again for the other server once it is complete.  All in all this is a nice feature that the average person can use and makes it a lot easier for the maintenance and update to be installed on servers without any down time.

So this version of Hyper V is really a big step forward in features and reliability.  I was not a fan of the previous versions but Hyper V 3 is really something to take a look at.  I have also considered moving my test lab over to this platform for the replication feature.  Finally to wrap everything up I have been playing around with Altero’s Hyper V Backup.  They have  a free edition and would make a test lab complete with Hyper V’s failover features and the ability to backup VMs for the just in case scenario.  If you wanted to use shared storage Hyper V supports iSCSI and is suppose to work with SMB 3.0.  So you could add a inexpensive NAS to the servers to truly make the system have high availability function.  So check it out you just might like it, I know I have.

 

 

Share this:
Share this page via Email Share this page via Stumble Upon Share this page via Digg this Share this page via Facebook Share this page via Twitter
Print This Post Print This Post

My Raspberry Pi Cluster

xd3io-R-Pi_Logo

After reading all these articles about R Pi clusters I wanted to add my two cents and put one together for myself.  Well first off I was not going to spend the amount of money that some of these projects had so I settled with 6 R Pis for my cluster.  Also I want to make mine a little more portable than the ones I was looking at so I could take it places without worrying that it would fall apart.  So here is the list of parts I used to build this.

  • 6   version B Raspberry Pis
  • 1   10 port powered USB hub
  • 1   5v USB powered fan
  • 1   project case
  • 6   micro USB cables
  • 1    8 port D Link Gigabit switch
  • 1    3 plug electrical extension cord
  • 6   Cat 5e cables
  • 6    video card heat sinks
  • 6    4 Gig micro SD cards with SD card adapters
  • 12   motherboard stand offs

Now I didn’t go out and buy everything here.  Some of the stuff I found in my chest that I store computer parts from other projects or broken computers.  I spent about $320 on everything except the switch, Cat 5 cables, and micro USB cables.  So here is what my R Pi Cluster ended up looking like.

Pi4

Pi3

Ok, it is not the prettiest thing out there but I can hook up one Cat 5 cable and plug in one cord to use the computer.  It has a power switch on the USB hub which is something I wanted, and I played with several ideas before I came to this setup.   The fan obviously to cool the computers inside the box and I attached the video card heat sinks to help with cooling.  They all run at around 40 degrees Celsius, plus the fan has a speed control to tweak it for your cooling needs.

So I imaged Raspbian onto one of the SD cards for the OS that I will be running on the cluster.  I installed  updates to the OS and then installed Ansible.  I downloaded Ansible from their website and installed it using make.  Once that was completed I created an image using ImageWriter because I did all of my work on a Windows 7 machine.

Now that I have an image I created one of the node SD cards and configured it.  To configure I created a hosts file that had all of the cluster IP addresses in it.  I also added a virtual NIC to the setup.  I did this so I could still SSH into the each node in the cluster.  To add the virtual NIC just go to etc/network and use nano, vi, or any other text editor you want, to modify the interfaces file.  Then just add an entry that looks like the following pic.

Untitled 19

Then I created the Ansible hosts.pi file.  This file simple defines every nodes role in the cluster.  It should have the controller and the slave nodes separated by bracketed names.  It should look like the following entry.

[headnode]
192.168.100.120
[Computenodes]
192.168.100.121
192.168.100.122
etc…

Once this was configured I made another image of the compute node and imaged the rest of the SD cards.  Once I had that finished I had to go back through each one and set the IP and the host name for each compute node.  Then I booted up the Raspberry Pis.  Now you have to setup a password less SSH connection for the nodes to talk to the controller node.

First thing is to create the account you want to use for the Ansible connection to each node.  I created an account named connect.  Then  you got to do is run  ssh-keygen -t rsa to generate the key on each node.  You will get output like the following:

Generating public/private rsa key pair.
Enter file in which to save the key (/home/a/.ssh/id_rsa): 
Created directory '/home/a/.ssh'.
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /home/a/.ssh/id_rsa.
Your public key has been saved in /home/a/.ssh/id_rsa.pub.
The key fingerprint is:
3e:4f:05:79:3a:9f:96:7c:3b:ad:e9:58:37: bc :37:e4

Or if you may get a text based picture depending on the version you have installed.  Then on the 
controller node enter the following commands to import the keys for each node.
ssh connect@(hostname) mkdir -p .ssh  It will ask for the account password.  
Then enter cat .ssh/id_rsa.pub | ssh connect@(hostname) 'cat >> .ssh/authorized_keys'  It will ask 
for the password again.  Finally enter ssh connect@(hostname) hostname to test the connection.  If
you are having trouble I used the following site to setup my password less ssh connection.

http://www.linuxproblem.org/art_9.html
  

Now that the ssh is setup run  the command  ansible all -m ping .  If everything worked you should get a screen that looks like following pic.

Untitled 20

I wrote several scripts for cluster administration as well.  Such as cluster shutdown, reboot, and update.  With a functioning cluster you can install OpenMPI, SLURM, or any other message passing programs for the full multi node super computer.  The NVIDIA cluster used SLURM, the Beowulf cluster used MPI so the choice is up to you.  I will write another post once I have everything finished and running as I would like it to.  Hope this help get you started and I will say that I have had fun getting this working and in a form that can be easily trans ported.  I am sure I will refine my design and make it better.  Let me know what you think or if you have problems I will help you as best I can.  Here are the links to the NVIDIA and Beowulf clusters websites.

http://blogs.nvidia.com/blog/2013/07/19/secret-recipe-for-raspberry-pi-server-cluster-unleashed/

http://coen.boisestate.edu/ece/raspberry-pi/

Good Luck

Share this:
Share this page via Email Share this page via Stumble Upon Share this page via Digg this Share this page via Facebook Share this page via Twitter
Print This Post Print This Post

Portable DHCP and DNS with Dual Server

Recently I needed at quick DHCP server for some testing and didn’t want to build a full DHCP server.  So I went to the Internet and found this handy tool that was both a DHCP and DNS server in one.  It was called Dual Server and it did everything I needed and more.  Here is a list of features:

  • Either DHCP or DNS or Both Services can be used.
  • DHCP hosts automatically added to DNS, If both services used
  • DHCP Supports 125 ranges, all options, range specific options
  • DNS Supports Zone Transfer and Zone Replication
  • DHCP Supports BOOTP Relay Agents, PXE Boot, BOOTP
  • Dynamically Detects Listening Interfaces, can listen on 125 interfaces
  • HTTP Interface for Lease Status
  • Filtering of Ranges by Mac Range, Vendor Class and User Class
  • Very easy configuration, no Zone files required
  • Allows Replicated operations for DHCP and DNS
  • Very Low Memory and CPU use
  • Can be installed and used by person not having DNS/DHCP Concepts
  • Designed to run as Replicated Load sharing Duplex Operation

I extracted the files and ran it from a flash drive which makes this portable and handy for a quick DHCP server on the fly.  It has pretty straight forward configuration using a INI file and a HTML file to monitor the leases that have been handed out.  It can be ran as a service or from a command terminal.  Here is a few pic of the interface.

Web Interface

CMD Terminal

I am sure you can use this on a more permanent basis but I only used it for a short while.  So I don’t know how well it performs for a full network of devices.  However it performed well for my use and I added it to my tool bag for future use.  To get it up and running just run the EXE file which will extract the files.  Then open the DualServer.ini file and put in your range and machine IP address to listen on.  There is a ton of other options that can be configured such as the domain your on, replication to other DNS servers, and the level of logging you want.  These are just a few things you can do.  The INI file is loaded and I am sure it can be configured to fit your need.

So if you need a quick DHCP server or you don’t have a server OS and need a simple to use option look into Dual Server.  It can be found at the following link.  http://sourceforge.net/projects/dhcp-dns-server/    The Dual Server website is at the following link:  http://dhcp-dns-server.sourceforge.net/

 

Share this:
Share this page via Email Share this page via Stumble Upon Share this page via Digg this Share this page via Facebook Share this page via Twitter
Page 1 of 4612345...102030...Last »