Setting up a PXE boot server on Synology DSM 4.2 beta

I was excited to see that Synology have recently integrated a PXE solution in their latest version of Diskstation Manager – DSM 4.2 beta. This makes their NAS devices even more ideal in a home virtualisation lab as they are both cheap to buy and to run (the DS212 unit that I own consumes less than 20W in use), but also easy to configure and they offer a wide range of storage and network services such as CIFS / AFP / NFS / iSCSI, LDAP, PXE, TFTP, VPN, DNS.

They also offer more powerful Enterprise versions of their NAS devices, which run the same operating system but with much faster hardware. I’ve yet to test them in a production environment, but given my experience in the lab, I am sure they would be a competitive solution.

In this post I will show you how to set up a PXE boot server that will let you perform a network installation of Centos 6.3 using your Synology NAS.

What is PXE?

PXE (pronounced pixie) stands for Preboot eXecution Environment. It’s a technology that can be used to boot a computer into an operating system from it’s network card without needing anything to be installed on the computer’s local storage devices in advance. Most modern servers come with PXE support as standard.

It’s incredibly useful if you wish to automate the deployment of many servers without having to attend each one with an installation CD / DVD / USB stick. With a little work, you can also configure custom kickstart files to be served to each server, to save having to enter all the installation options manually.

How to set up your Synology NAS as a PXE boot server

Step 1 – Install DSM 4.2

Upgrade your Synology device to DSM 4.2 beta if you haven’t already. Follow the download links for your region, download the appropriate firmware that for your model of device, then upload it in the DSM admin panel – control panel – DSM update screen.

Step 2 – Set up the DHCP Service on your NAS

I would recommend you set up the DHCP server on your Synology first and test it works. If you are running this on your main LAN, you will need to disable the DHCP server on your router so they don’t conflict. You can download the DHCP server package in Package Center.

You will need to configure the relevant primary and secondary DNS, start and end IP addresses, netmask and gateway settings.

Synology DSM DHCP Settings

Once you are happy this is working, you can move on to configure the TFTP and PXE servers.

Step 3 – Set up the TFTP and PXE Services.

Tick the Enable TFTP service box. You also need to specify a folder somewhere on your NAS that can be used as the TFTP root folder.

Tick the Enable PXE service box. In the boot loader box type ‘pxelinux.0’. Fill out the remaining fields using the same settings you used for DHCP in step 2. This will override the DHCP service settings.

Synology DSM TFTP & PXE Server

 

This will set up a DHCP service which sets DHCP 67 (boot filename) in it’s DHCP offers to be PXELINUX.0. If the server making the DHCP request is performing a PXE boot, it will attempt to retrieve and load this file via TFTP from the DHCP server IP address. It is possible to tell the server to use a different server for TFTP using DHCP option 66 – but this is not necessary in our case because the Synology NAS is performing both functions.

Step 4 – Upload the PXELINUX scripts and PXE menu to your tftp folder.

In order to get PXE boot working, we now need to upload the PXELINUX.0 and a few associated files from the SYSLINUX project to the TFTP share. I’m sure you could use other boot loaders, but I have never tried any, so I’m going to stick to what I know!

According to the Centos wiki, the minimum required files to perform a PXE network installation of Centos 6.3 are:

  • pxelinux.0
  • menu.c32
  • memdisk
  • mboot.c32
  • chain.c32
  • pxelinux.cfg/default
  • path/to/your_kernel_of_choice
  • path/to/your_init_ramdisk_of_choice

You could download these yourself and edit pxelinux.cfg/default as necessary, but this is out of the scope of this blog, so to speed things up I have created a Github repository with all the files necessary for a Centos 6.3 install.

Simply download this repository as a ZIP file and copy the files inside your tftp folder.

This perfoms a network install using a kickstart I’ve created which will set up Centos 6.3 with a few KVM packages for use as a hypervisor. NB: The default password is changeme1122

Step 5 – Attempt to PXE boot a server.

All you need now is a server. Ensure the server is connected to the LAN with your Synology NAS on it, then power on the server and instruct it to perform a network boot. It should make a DHCP request to the NAS, and then perform a PXE boot using the files that we copied to the TFTP server.

If you want to load a different operating system, you need to copy across the relevant kernels / initial ramdisks for the distribution of your choice and then edit the PXE menu in pxelinux.cfg/default. You may also wish to either remove the kickstart parameter, or refer to a different kickstart of your own creation.

 

 

Raspberry Pi Measurements & Dimensions

I was asked by Tim Lossen on one of my previous Raspberry Pi posts if I could take some measurements of the Pi board so that he could complete a 3D model of it that he is working on. Unfortunately, we don’t have a ruler in our house, so I’ve printed off some ruler sheets, and taken some photos of the board along side the rulers. Hopefully this will allow someone to take some more precise measurements of the components using Photoshop and it’s rulers.

I’ve also measured the heights to be the following:

  • Ethernet port – 13mm tall
  • Usb 2.0 ports – 15mm
  • Audio jack – 10mm
  • RCA video – 13mm
  • HDMI – 6 mm
  • SD Card – 4.5 mm (underneath)
  • Micro USB power – 2.5 mm

Raspberry Pi playing a 1080p video

In this short clip, I use my Raspberry Pi board to play a 1080p video – Big Buck Bunny. The playback is flawless with no interruptions. The commands used were:

sudo /opt/vc/bin/vcfiled
sudo /opt/vc/bin/ilplayer /home/pi/big_buck_bunny_1080p_h264_ac3.mkv

Big Buck Bunny is a short animated film by the Blender Foundation – (c) copyright 2008, Blender Foundation / www.bigbuckbunny.org.

Raspberry Pi #8 First Photoshoot

I came home from work this evening to find a small brown parcel containing a Raspberry Pi beta board that I had won in an ebay auction earlier this week. It was a charity auction with all the proceeds go to supporting the Raspberry Pi foundation whose aim is to promote computer science and electronics at the school level. I think this is an admirable aim – computer science has enabled me to run my own business, and I feel passionately that we should improve the teaching of it in schools.

The production boards should be going on sale in the next few months for £16 / £25 each depending on the model you choose. For those of you who are looking forward to ordering your own, I have taken some photos of it against my iPhone so you can get a better idea of the size for yourselves.

The first thing that strikes you about the Raspberry Pi board is how small it is. I had seen pictures of it online, but I’m sure it looked bigger! It’s great to see how far computing has evolved since I got my first BBC Model B computer approximately 25 years ago.

You can see the full size Raspberry Pi board diagram here.

Although these boards were designed for schools, I think they will transform the world of computing in myriad other ways. A few years ago the OLTP foundation set out to build a $100 laptop. 2012 marks the beginning of the $20 desktop.

What is the Raspberry Pi?

The Raspberry Pi board is effectively an entire computer on a credit card size board. Like a cut down Mac Mini, all you need is a keyboard and a monitor and you can run a full Linux desktop operating system like Fedora or Debian. It’ll even play Quake 3 and full 1080p films!

Re-using these photos

I’m releasing all these photos under the Creative commons attribution license:

Creative Commons License
Raspberry Pi Beta Board #8 Photos by Paul Maunders is licensed under a Creative Commons Attribution 2.0 UK: England & Wales License.

Raspberry Pi Beta Boards Raise Over £16,000 in ebay auctions

The Raspberry Pi Beta Board auctions have now finished, raising a total of £16,336 for the Raspberry Pi Charity.

  • The lowest winning bid was £930 for board 9
  • The highest winning bid was £3,500 for board 1

You can view the full spreadsheet here.

NVIDIA ION Actual Size

NVIDA have released a computing platform that fits in the palm of your hand, and is capable of playing 1080p HD movies, with 7.1 digital surround sound. The NVDIA ION boards will power Netbooks, Small Form Factor PCs, and we will no doubt see some of them integrated directly in to TV sets.

NVIDA ION Actual Size

Specifications

  • Intel Atom CPU & NVIDIA GeForce 9400M GPU
  • Size: 100 mm x 72 mm (Pico-ITX)
  • Power Consumption: 18W
  • Max resolution: 2560 x 1600
  • Network: 10 / 100 / 1000 Mbps
  • Video Out: HDMI / DVI / VGA

I recently retired my home media server as it was using too much power (approx 200 Watts!), so with a typical consumption of less than 20 watts, the new ION platform would make a perfect replacement.

It is rumored that the NVIDIA ION may power a refreshed version of Apple’s Mac Mini, potentially as soon as March 2009, and with Apple’s Snow Leopard OS designed to take advantage of the power of GPU cores for ordinary desktop operations – we may soon see these start to replace large inefficient workstations.

It happened to the laptop market with netbooks, now it’s time for desktops with nettops.

Replacing fluorescent lamps with LED T8 lights

Our office currently runs standard fluorescent strip lights (1500mm T8 tubes) throughout, with over 60 bulbs across 3 floors. We are considering upgrading all the lights to LED bulbs, in order to save power and to make them compatible with an office automation system (to turn them on and off automatically).

Energy savings

So, how much energy will they save? Well a standard fluorescent bulb consumes about 58w, whereas the new LED bulbs consume around 20W. Therefore over the course of a year I would anticipate the energy savings to be as follows:

  Standard Fluorescent Bulb LED Bulb
Power Consumption 58 Watts 20 Watts
Hours in use 10 hours per day, 5 days a week, 52 per year
Hours per year 2,600
Kilowatt hours per year (watts / 1000 * hours) 150.80 kWh 52 kWh
Cost per year (at 10p per kWh) £15.08 £5.20

Thus the saving is about £10 per year per bulb.

We are currently asking suppliers to quote us for 60 bulbs, and the prices we have received so far range between £25 to £60 per bulb.

The bulbs are rated for about 50,000 hours of constant usage, which should mean they would last nearly 20 years at the rate of usage we have forecast.

Standard bulbs last about 5,000 hours (2 years) and cost around £2 each.

It looks like the energy saving bulbs should pay for themselves after 3 – 5 years, and return a yield of around 20% thereafter.

Things I haven’t factored in:

  • Cost of installation / replacing bulbs (slighty more difficult to initially install, but they last 10 times as long and therefore need less labour to replace).
  • Reduced heat from operation – might require less air conditioning in summer months)

iPhone over the air sync with Google Calendar

We’ve been desperate for a centralised calendar solution that can sync with all our desktop PCs and iPhones for a while now, and yesterday one of our developers, Matt, found a solution for us.

It combines the following technologies:

Essentially Google Calendar is used to provide a central calendar, this is then synced to the iPhones via Nuevasync, which provides a free exchange interface. The calaboration tool makes it easy to sync your iCal with the Google Calendar, and then MobileMe is needed if you want to have a private calendar on your iPhone as well.

Matt has written some in-depth instructions on how to set up over the air calendar syncing on your iPhone, over on his blog.

Attack of the Wee PCs

Anyone looking for an ultra portable / mini laptop / sub notebook / netbook is now spoilt for choice. It seems that after the OLPC (one laptop per child) project announced they were aiming to build an ultraportable device for $100, every manufacturer wants a piece of the pie.

Name Screen Size Weight Price
ASUS EEE PC 7" – 10" 0.92 – 1.1 KG £160 – £340
OLPC XO-1 7.5 1.45 KG $200 ($400 give one get one)
Dell Mini 9 8.9" 1.035 KG £269 – £299
Acer Aspire One 8.9" 0.99 – 1.26 KG £198 – £269

References:

Wikipedia – Comparison of Netbooks

SATA hard drives for our coraid ATAoE SAN

We are looking to purchase some drives for a Coraid SR1521 storage appliance. Coraid maintain a list of compatible drives on their site, so it would be wise for us to stick to drives that have been tested without problems.

Hard drives comparison

  • All disks shown are 1TB SATA drives.
  • MTBF is the Mean Time Between Failures
  • AFR is the Annualised Failure Rate. This is the % of the population of these drives that are likely to fail in an average year. I’ve calculated this myself based on 24/7 usage (e.g 8760 / MTBF * 100).
Manufacturer Model Type Part Number MTBF AFR Price (inc VAT)
Seagate Barracuda ES.2 Enterprise ST31000340NS 1,200,000 0.73% £165.59
Seagate Barracuda 7200.11 Desktop ST31000340AS 750,000 1.17% £99.99
Samsung Spinpoint F1 * Desktop HD103UJ 600,000 1.46% £89.85

Notes
* The Samung Spinpoint F1 has not been tested on a Coraid device yet.

Tom’s hardware have a comparison of SATA disk transfer rates.

X-bit labs have an in-depth comparison on 1TB disks.

Samsung make an interesting point in their spintpoint F1 announcement pdf. Although buying a 1TB drive may cost more per Gigabyte than 2 x 500GB drives, the 2 drive solution is twice as likely to fail per Gigabyte. However, it will generally be slower as you have less spindles.