|
Network-attached storage (NAS) is a dedicated data storage technology. The NAS server provides centralized data storage, which is easily accessible to users who belong to different networks over the Internet. There are different applications that can be implemented using NAS, such as data storage and file sharing. The purpose of the NAS server that I am going to set up, is that of data storage. It is to be used to provide remote backup of the data in clients’ servers. The Operating System
Next step I have
to do is to decide on an OS to setup the NAS server, which is free and easy to use.
I came across
the site http://www.openfiler.com/
Openfiler is a project for a open source Network Attached Storage
(NAS) OS distribution. It was developed by Xinit Systems and provides
a file-based NAS system and block-based Storage Area Networking
(SAN) in a single framework. Openfiler brings together almost all
storage networking protocols into a single framework.
Installation
via VMware :
Openfiler is
a standalone Operating System, which requires access to all system
resources in order to function. I got confused on how to install it
remotely. Then I came to know that it can be installed in a virtual
machine environment such as VMware. I decided to try out first in a
test server which had a 40GB hard disk.
A VMware Server installs on any existing server hardware . It partitions a physical server into multiple virtual machines, and provides for more hardware utilization and flexibility. So my first task was to install
the VMware server.
The following packages needs to be installed in the remote server –
The VMware Server itself and also the Management Interface. Also
install the VMware Server Linux client package, both in the server
and your local machine. The rpms for the packages can be downloaded
from the VMware site and the installation steps too are documented
there. The installation
guide can be obtained from
http://pubs.vmware.com/server1/wwhelp/wwhimpl/js/html/wwhelp.htm
Once the VMware installation is complete, you need to connect to the
server remotely using the VMware Server client package. Login using
the IP address of the server and root password.
Once
you are connected to the VMware server, you need to create
a new virtual machine. It would create a set of files that represent
a new computer, with a blank, unformatted hard disk, onto which the
new operating system can be installed. The virtual disk by default
has its disk space preallocated at the time of creation. I created a
virtual disk of about 20GB size. The virtual disks are physically
located in the folder /var/lib/vmware/Virtual Machines/ .
Now I have to obtain the iso image for the
Openfiler OS. I got the latest one, Openfiler 2.1, from
http://sourceforge.net/
The Images of CD-ROMs are usually .ISO files. The .iso image was
downloaded to the folder that was created for the virtual disk in
the remote server, using wget command in SSH. Now, use the virtual
machine settings editor to connect the virtual machine’s CD-ROM
drive to the .ISO image file, then Power ON the virtual machine. The
Openfiler OS would start installing, and you would get a graphical
installation screen as per the steps given here:
http://www.openfiler.com/docs/install/graphical_install.html
Once the installation is complete, you can start configuring
Openfiler by pointing your browser at the host name or IP address of
the Openfiler system. The interface is mounted on https port 446.
e.g. https://test.myserver.com:446.
Installation
via Installer :
Now that
everything went fine in the test server, I decided to give a try in
the real server. But the actual server had a 2 TB hard disk, which
made my task difficult. I was not able to use VMware, as the hard disk size was
really huge to create virtual disks. So, I started thinking of other
options. There was still the restriction of no physical access to the
server.
Luckily, I got
IPMI access to the server. The Intelligent Platform Management
Interface (IPMI) specification has a set of common interfaces to
computer hardware which can be used to monitor system health and to
manage the system remotely. The IPMI provided a Text console, which I
could make use of in the installation purposes.
But the server
wasn't configured to show the grub menu over the serial console. This
would prevent us from selecting alternate kernels during the boot
process. I could find that, for grub to work with IPMI, it has to be
enabled for the serial console. Follow the steps given below to do
this.
Find the serial
port number and speed used on your server:
Code:
# grep agetty /etc/inittab
On my server the
console is connected to serial port 1 with a speed of 19200:
co:2345:respawn:/sbin/agetty
ttyS1 19200 vt100-nav
Now open
/boot/grub/grub.conf, and add the following lines below "hiddenmenu":
serial --unit=1 --speed=19200
terminal --timeout=80 console serial
Replace the port
number , timeout and speed if necessary.
To test this out,
reboot your server and then connect to the serial console as soon as possible using IPMIView. Eventually, after a minute or so, you should see the following message repeating:
Press any key to
continue.
Press any key to continue.
Pressing a key at
this point will launch GRUB on the serial console.
First off, you
would need to download the network installation image for the
Openfiler OS that you want to install. I was able to download one
boot.iso for Openfiler from <A HREF="http://www.rpath.org/rbuilder/project/openfiler/release?id=5076"http://www.rpath.org/rbuilder/project/openfiler/release?id=5076
I downloaded the
boot.iso image to the server itself, using the wget command. Next,
you need to create a temporary directory in which to mount the ISO
image to get the files out of it:
mkdir /nas
mount -o loop
boot.iso /nas
You also need to
create a directory in your /boot directory . The /boot should be on a
partition of its own. Copy the boot files from the iso image to the
folder created.
# mkdir /boot/nas
# cp -R /nas/* /boot/nas/
Next you need to
find the appropriate initial RAM disk and kernel files amongst these
boot files. These will generally be called "initrd-xxxxx"
and "vmlinuz-xxxxxx" respectively. Now that you have the
boot files in the boot partition, you need to configure GRUB to allow
you to boot into the installation.
Add the
following section to grub.conf file.
title NAS install
root (hd0,0)
kernel
/nas/isolinux/vmlinuz console=ttyS1,19200
initrd /nas/isolinux/initrd.img
This assumes that
your boot partition is /dev/sda1 (or /dev/hda1) as indicated by the
"(hd0,0)" part. If your /boot partition is different, you
can alter the device accordingly. The "console=ttyS1,19200"
part is very important as it tells the installation program to use the serial console accessible through the IPMI View program for the installation.
Now, you should get the iso image for the openfiler as mentioned earlier. I had a
second hard disk of 50GB, in the server. I mounted that as another
partition and downloaded the iso image for openfiler to that
partition.
Now, reboot the
server and choose the NAS install from the grub menu. The installer
would start running. Fill in the details appropriately. The installer
gives different options for installing the OS, such as NFS, FTP,
HTTP, Hard Disk, CDRom etc. I elected the Hard Disk option as my OS
image was on the second hard disk. I selected the appropriate hard
disk and gave the path to the iso image. Please note that Openfiler
does not exist with any other Operating System. The installer would
format the entire drive on which its being installed, before
installing the packages. The installer successfully completed
installing the Openfiler in the 2TB drive of my server in about 4-5
hours. The installation steps are the same as given earlier,
http://www.openfiler.com/docs/install/graphical_install.html.
Only difference that it would be text based and not graphical in
this case. You can partition the drive manually or automatically, as
you prefer. Once the installation is over, Reboot the server and you
would be able to get a new server with Openfiler OS installed.
Login to the Interface and configure the Openfiler as per your
requirements. A very good manual is available here :
http://www.openfiler.com/docs/manual/
The installation
process was a Trial and Error method which took up a lot of my time .
There may be other effective methods and there are other OS
distributions available for NAS. The steps given above depict the way
I set up my server .
References:
http://www.openfiler.com/
http://sourceforge.net/docman/?group_id=90725
http://www.vmware.com/support/pubs/server_pubs.html
http://www.znark.com/tech/serialconsole.html
http://www.cyberciti.biz/nixcraft/vivek/blogger/2004/03/how-to-mount-iso-image-under-linux.php
About the author: Reeshma Ajin works as Sr. Software Engineer in Bobcares.com. She has worked in Bobcares for over 4 years and mainly specializes in
Linux server administration.
|