Search This Blog

Saturday, February 18, 2012

Virtual Private Networking with Windows Server 2003 :: Overview


Consider a business organization that has its facilities spread across the country or around the world. There is one thing that it will need - a way to maintain fast, secure and reliable communication amongst all its branches. There are also many organizations which require their employees to access the network remotely, when they are on any on-site work. This way, the employees are able to access the network resources, as they are connected to the network of the company.
Until recently, the only choice available to the administrators was to use leased lines to maintain a WAN, which provides reliability, performance and security. However, this was not a very feasible solution, as maintaining a WAN is quite expensive. And the expenses increase with distance between the offices.
An alternative came in the form of Virtual Private Networks. A VPN is a private network that utilizes a public network (Internet) to connect remote sites or users together. Thus, instead of dedicated leased lines, a VPN uses a secure virtual connection, which is routed through the Internet, connecting remote sites or users to the network.

We can configure a Windows 2003 server to allow network access to remote clients either by configuring a dial-up remote access server or a VPN remote access server. Each method has its own advantages and disadvantages. However, the VPN technology is most widely used today, since it avoids additional costs that are associated with dial-up, in the form of long-distance phone services and hardware costs.
In order to configure a VPN server :
  • You have to select the network interface used to connect to the Internet
  • You need to assign an address pool. Every VPN client will need an IP address that is local to the VPN server, (The IP address should be of the same range as of the local network) so that they can access the resources of the local network.
  • Finally, you need to assign remote access permissions to the users who require the privilege.

VPN technology is most widely used today, since it avoids additional costs that are associated with dial-up, in the form of long-distance phone services and hardware costs.
Windows 2003 allows us to implement VPN using Microsoft proprietary PPTP and Cisco’s L2TP. PPTP is a very straight forward protocol and the implementation of VPN using it is very simple. Let me explain the basic steps required to configure a PPTP VPN remote access server.
  • Open RRAS MMC console - Select Start -> Administrative Tools -> Routing And Remote Access.
  • Select the server you want to configure - From the right pane of MMC, Right-click the server and choose the option, “Configure And Enable Routing And Remote Access“. The RRAS Setup Wizard appears. Click the Next button.
  • Configuration page - Select the “Remote Access (Dial-Up Or VPN)” radio button, and then click Next.
  • Remote Access page - Select the VPN check box. Here, we are concentrating on configuring a VPN RAS.
  • Internet Connections page - It lists all the network interfaces that are available to the RRAS. Select the interface which you are using to connect to the Internet.
  • IP Address Assignment page - This page allows you to define a pool of IP addresses which will be assigned, when a VPN client connects to the server. You can do this either using DHCP or by defining an explicit address range, from a specified range of addresses button.
  • Managing Multiple Remote Access Servers - We can use this option in the servers to set your RRAS server work with other RADIUS-capable servers. Here, you can also choose the option “No, Use Routing And Remote Access To Authenticate Connection Requests“, if you do not want to use RADIUS.
  • Summary page - Click on the Finish button to start the RRAS service.
By default, the users are not granted permission to use the services provided by VPN. In the next step, we determine the users for whom we allow remote access to our network. For this, execute the following steps.
  • Open User Management console.
  • On the Properties page of the user for whom we need to grant access to the VPN, select the Dial in properties page.
  • Select “Allow access” under Remote Access Permissions.
Your VPN is now configured.
Conclusion
Using a VPN can have a large impact on your company by increasing sales. Prior to VPN’s the only options for you to manage this type of communication were expensive leased lines, Frame Relay or ATM access circuits. VPN’s are the solution now. They essentially offer international business travelers with significant cost savings, compared to the dial-up charges.

NAT Simplified : Configuring and Deploying Network Address Translation


NAT - Network Address Translation, is a term that comes across regularly in the production environment. Here, I would like to explain the steps that you need to follow, in order to implement NAT in a Windows 2003 Server. The steps are fairly simple and if you already have a public address, you can set it up in less than an hour.
Basically, there are two benefits in using NAT:
  • It allows to secure our internal IP addressing scheme.
  • It also allows to save costs, because we don’t need to purchase a public IP address for each host in the network. We can hide several machines under a NAT server, which is configured to use a single public IP address. If you had to purchase or reserve an IP address for each computer and host in the internal networks across the globe, there would practically be no IP address left.

Before going into the steps for implementing NAT, it will be useful to know how a NAT server modifies the outgoing and incoming packets.
  • The client machine generates a request and sends it to the NAT server. Let’s assume that the packet is intended to port 80 at 206.xx.xx.xx.
  • The NAT server scans the packet and creates an entry in the NAT table, which ties the real destination address and the port number to its origin and a substitute port number, that it chooses in random. It also replaces the source IP address in the packet with its own address, so that, replies from 206.xx.xx.xx will reach the NAT server.
The NAT table is the key to the whole process, because it associates the original source address and port with the destination address and port. When a packet arrives at the NAT server, it redirects it to the machine which actually generated the request, using the information in the NAT table.
NAT allows to secure our internal IP addressing scheme, and also to save costs, because we don’t need to purchase a public IP address for each host in the network.

Installing NAT Using the RRAS Console
In Windows, NAT is actually treated as another routing protocol that you install using the Routing and Remote Access Service (RRAS). You can open the RRAS snap-in by clicking: Start > Administrative Tools > Routing and Remote Access.
Note : You should have at least two network interfaces available on your computer for this; One for the public side and the other for the private side.
If you’ve already configured RRAS to handle some other feature, then you will need to configure NAT without deactivating RRAS, or it can lead to wiping out its configuration information.
Now, I’ll mention the steps that you need to follow if you have already configured RRAS to handle some other feature like IPX routing.
  1. In the RRAS snap-in, locate the server on which you want to enable NAT. If the icon has a small red downward arrow, right-click on it and choose the “Enable And Configure Routing and Remote Access Service” command. Also, choose the option for NAT/basic firewall in the RRAS Wizard to complete the NAT installation.
  2. Otherwise, right-click on the “General node” under IP Routing and select “New Routing Protocol“.
  3. In the “New Routing Protocol” dialog box, select the NAT/Basic Firewall option and click OK.
  4. You can see that a new node called NAT/Basic Firewall now appears under IP Routing.
Adding and Removing NAT Interfaces
Before you can use NAT on your local network, you have to add a NAT interface using the RRAS console.
Note: You have to distinguish between adapters that are connected to your local network and those connected (or that can connect) to the Internet, when adding a NAT interface.
Adding a NAT Interface
First, create an interface for your local network adapter.
Next, create the Internet adapter interface.
You can do this as follows.
  • Right-click on “NAT/Basic Firewall” and choose “New Interface“.
  • The “New Interface For Network Address Translation” dialog box comes up. Select the adapter that you want to use and click OK.
Setting NAT Interface Properties
Each NAT interface has its own set of properties. We can edit the properties by right-clicking an interface and choosing the Properties command on the context menu.
The relevant options to our discussion are: the NAT/Basic Firewall, Address Pool, Services And Ports tabs. Under each tab, I will explain the options that we need to be concerned about.
The NAT table is the key to the whole process, because it associates the original source address and port with the destination address and port.

The NAT/Basic Firewall Tab:
The NAT/Basic Firewall tab allows you to designate what kind of NAT interface it is.
  • The “Private Interface Connected To Private Network” radio button, is what you use to specify that the interface is bound to the adapter on your local network.
  • The “Public Interface Connected To The Internet” button specifies that the adapter is connected to the Internet.
The Address Pool Tab:
It basically lists the configured range of public IP addresses assigned to you. The address range is typically obtained from your ISP. You can manage the pool using Add, Edit, Remove, and Reservations buttons
The Services And Ports Tab:
Suppose you need to run a web server on your local network, which should serve requests from around the globe. In this case, you can set it up in a machine with a private IP and configure NAT to forward the requests that it receives on port 80 in the public interface, to port 80 on your internal Web server.
You can specify the ports to which inbound traffic should be mapped to, using the Services And Ports tab.
The Services And Ports tab lists the port mappings you have in effect. You can manage the the port mappings using buttons at the bottom of the pane.
Configuring NAT Properties
You can also specify the properties that affect all NAT interfaces and connections on your NAT server. This can be accessed by right-clicking the NAT/Basic Firewall node in the RRAS console and using the Properties command.
The Properties dialog box has four tabs:
  1. General tab,
  2. Translation tab
  3. Address Assignment tab and
  4. Name Resolution tab.
Among these, we need to be concerned only about the General tab and the Translation tab. Name Resolution Tab and the Address Assignment Tab allows us to decide whether we need to use the NAT addressing component and the NAT name resolution component of the NAT. It is not used commonly since almost all the networks have a DHCP server and a DNS server.
General Tab
The General tab allows you to change the amount of event logging information that the NAT software writes to the system event log.
Translation Tab:
The Translation tab help us to have a control over how long the the entries, remain in the NAT table after the use..
Conclusion
The translation tables in NAT are of short-lived nature, and it has been reported that devices on the internal network lose IP connectivity within short periods of time, unless there is a keep-alive mechanism by frequently accessing external hosts.
On the positive side, the greatest benefit of NAT is that it has been a practical solution to the exhaustion of IPv4 address space. Networks that previously required a block of network addresses can be connected to the Internet with a single dynamic or static IP address. :)

Virtualization with Microsoft (Virtual Server 2005 R2 SP1)


Talk about server virtualization, you go on talking about Virtuozzo, Xen, VMWare Server etc. This article aims to present another virtualization application offered by Microsoft - Microsoft Virtual Server 2005 R2 SP1.
A couple of attractive features about Microsoft Virtual Server 2005 R2 SP1 are: it is available free of cost and also it supports the usage of Microsoft Windows as well as Linux distributions as guest operating systems.

Where to get it?

Virtual Server 2005 R2 SP1 is offered as a free download by Microsoft. It can be freely downloaded by visiting the following URL:
In this article, we will deal with the 32-bit edition of this application.

System Requirements

The minimum system requirements for the physical computer are given below:
  1. An x86-based computer with a 550 megahertz (MHz) or faster (1 GHz recommended) processor with L2 cache, such as processors from any of the following families:
    • Intel-Xeon or Pentium families.
    • AMD-AMD64 or Athlon families.
  2. CD-ROM or DVD drive
  3. Super VGA (800 x 600) or higher resolution monitor recommended
  4. Host operating system: The 32-bit version of any of the following operating systems:
    • Microsoft Windows Server 2003, Standard Edition.
    • Microsoft Windows Server 2003, Enterprise Edition.
    • Microsoft Windows Server 2003, Datacenter Edition.
    • Microsoft Windows Small Business Server 2003.
    • Microsoft Windows XP Professional
By using Microsoft Virtual Server 2005 R2 SP1, it is possible to setup a virtual server, under which one or more virtual machines can be deployed. Let us first examine the components of a virtual server, before getting to the installation of it.

Virtual Server Components

A virtual server is an application that runs as a system service. Each virtual machine runs as a separate thread of this application. The host operating system provides two core functions to the virtual server:
  1. The host operating system kernel schedules CPU resources.
  2. Its device drivers enable virtual machines to access devices attached to the system
Basically, a virtual server setup using Virtual Server 2005 will have the following components:
  1. Virtual Machine Monitor (VMM) - It is a kernel mode driver and acts as a firewall between the host operating system and virtual machines. It has access to the physical computer processor and manages resources between the two environments preventing application on a guest operating system from requesting excessive hardware resources from the host operating system.
  2. Virtual Server Service (Vssrvc.exe) - It creates virtual machines and projects the emulated hardware into the virtual environment. This service should be running to be able to create and run virtual machines using the virtual server.
  3. Virtual Machine Helper Service (Vmh.exe)- This allows the running of a virtual machine in the context of a specified user account. Specifying a user account is optional and if not specified the virtual machine runs under the account of the user that started it.
  4. Virtual Networks- A virtual network will consist of one or more virtual machines. It can be of two types:
    • Virtual network configured to use a network adapter in the physical computer- If a virtual network is attached to a physical adapter it can access the networks attached to that adapter. This configuration can be used to provide access for the virtual machines to external machines and networks.
    • Virtual network configured not to use a physical network adapter- If no physical network adapter is selected then the virtual machines attached to that network can communicate only to other virtual machines within that same internal virtual network.
  5. Administration Website - It is a browser based tool for configuring and managing the virtual server and its associated virtual machines and virtual networks.
  6. Virtual Machine Remote Control Client- It is used for remote management of virtual machines. It communicates with the VMRC server component of virtual server service using VMRC protocol developed by Microsoft for communication between VMRC clients and VMRC server.
  7. Virtual Machine Additions- This component adds enhancements to guest operating systems like:
    • Improved mouse cursor tracking and control.
    • Greatly improved overall performance.
    • Virtual machine heartbeat generator.
    • Optional time synchronization with the clock of the physical computer.
    Virtual Machine Additions are included for the following supported operating systems:
    • Microsoft Windows Server 2003 (all versions)
    • Microsoft Windows 2000 Server
    • Microsoft Windows NT Server 4.0 with Service Pack 6a (SP6a)
    • Microsoft Windows XP (all versions)
    • Microsoft Windows 2000 Professional
    • Microsoft Windows Millennium Edition
    • Microsoft Windows 98
    • Microsoft Windows 95
  8. Virtual Machines- Within the Virtual Server one or more virtual machines running their own operating systems can be created. The virtual machine emulates a standard x86-based computer including basic hardware except the processor. Using emulated hardware and the processor of the physical computer each virtual machine operates similar to a physical computer.The Virtual Machine Monitor (VMM) manages virtual machines, providing the software infrastructure for hardware emulation. Each virtual machine consists of a set of virtualized devices. The guest operating system and applications run on the virtual machine as if they were running on physical hardware, rather than emulated hardware. All software code running within the virtual machine runs in a separate VMM context.A virtual server can support upto 64 virtual machines. The number of virtual machines that can be run simultaneously is limited primarily by, the amount of RAM and hard drive space available in the physical computer. A single virtual machine can have a maximum RAM size of 3.6 GB. Also even if the physical computer has multiple processors installed in it virtual machines created will emulate only one processor. Each virtual machine requires at-least the following files to function properly:
    • A virtual machine configuration (.vmc) file in XML format that contains the virtual machine configuration information.
    • One or more virtual hard disk (.vhd) files to store the guest operating system, applications and data for the virtual machine.
  9. Virtual Hard Disks- A virtual hard disk provides storage for a virtual machine. Within the virtual machine it is visible as a physical disk, but actually it is file that resides on a physical disk that only the host operating system can access. The virtual machine does not have direct access to the physical disk that stores the .vhd file.There are four types of virtual hard disks that can be created:
    • Fixed-size disk- This is a .vhd file whose size is designated when the file is created. For example, if a fixed-size virtual hard disk of 10 GB size is created the virtual server creates a 10 GB .vhd file. All the storage space that is required by the virtual hard disk is reserved when it is created. During creation, it utilizes as much contiguous space as is available on the physical disk storing it.
    • Dynamically expanding disk- In this type of virtual hard disk the size of a .vhd file grows as data is written to the virtual hard disk. A maximum size however, has to be specified at the time of its creation and the .vhd file cannot expand beyond this size limit set.
    • Linked disk- A linked disk points to an entire physical disk attached to the physical computer. It is used for converting a physical disk to a virtual disk. These disks cannot be used to start a virtual machine.
    • Undo and Differencing disks- These disks store changes made to the virtual machine operating system configuration as well as the virtual hard disk to a separate file. This can be used to keep the original virtual hard disk unchanged when testing configuration changes or applications. A single undo disk is configured for all virtual hard disks associated with a virtual machine, while differencing disks have to be configured for individual virtual hard disks.

Setting up a Virtual Server

Setting up a virtual server involves the following steps:
  1. Installation of IIS

  2. IIS, specifically the World Wide Web Service component of IIS, has to be installed on the host operating system. It is required by the administration website used to manage Virtual Server.
  3. Installation of Virtual Server

    1. Download the Setup.exe file from the link given in the URL above and start the setup wizard.
    2. Continue the installation till you reach the ‘Setup type’ page.
    3. On this page select the ‘Complete’ installation option and proceed.
    4. On the ‘Configure Components’ page accept the default website port or enter another one and proceed.
    5. Then, either accept the default ‘Configure the Administration Website to always run as the authenticated user’, or select ‘Configure the Administration Website to always run as the Local System account’ and proceed.
    6. Finally click ‘Install’ and to begin the installation and then ‘Finish’ when the ‘Setup Complete’ page appears.
    1. To setup Virtual Server Service:
      • Start the setup wizard and continue till you reach the ‘Setup Type’ page
      • On the computer you wish to install the Virtual Server service, select the ‘Custom’ installation option in the ‘Setup type’ page.
      • Then in the next page click on ‘Virtual Server Web Application’ and select ‘This feature will not be available’.
      • After that proceed with the installation and complete it as explained above.
    2. On the computer you wish to install the Administration Website:
      • Select the ‘Custom’ installation option in the ‘Setup type’ page and in the next page click on ‘Virtual Server Service’.
      • Select ‘This feature will not be available’ and complete the installation.
    1. Create a new virtual machine:

      • Open the Administration Website.
      • In the Virtual Machines section of the navigation pane click on Create.
      • Enter the fully qualified path to the location you want to store the virtual machine files in the ‘Virtual machine name’ textbox.For example, if you want to create the virtual machine named Virt under the C:Virt folder enter the following name’ C:VirtVirt. This will create the Virt.vmc configuration file under C:Virt.If you enter just a name instead of the fully qualified path the virtual machine files will be created in the default location, C:Documents and SettingsAll UsersShared Documents.
      • In the ‘Virtual machine memory’ text box enter the amount of RAM you want to set aside for the virtual machine.
      • In the ‘Virtual hard disk’ setting you can either select ‘Create a new virtual hard disk’ and enter the size of the virtual disk to create it or select ‘Use an existing virtual hard disk’ and enter the fully qualified path to the virtual hard disk.
      • The virtual network adapter for the virtual machine can be configured to be connected to a physical network adapter, if you wish so, using the ‘Connected to’ drop down menu.
      • After entering all these options click ‘Create’ to create the new virtual machine.
    2. Add a virtual machine from an existing configuration:

      • Open the Administration Website.
      • In the Virtual Machines section of the navigation pane click Add.
      • Enter the fully qualified path to the virtual machine configuration file and click Add.
    1. In the Administration Website go to the Virtual Disks section in the navigation pane and point to create.
    2. Click on the type of hard disk to be setup from the following options available:
      • Dynamically expanding virtual hard disk.
      • Fixed size virtual hard disk.
      • Differencing virtual hard disk.
      • Linked virtual hard disk.
    3. Enter the fully qualified file name for the virtual disk you wish to create and its size and then click ‘Create’.
    4. The only type of hard disk which requires any additional setting is the linked virtual hard disk for which the physical drive to which it has to be linked needs to be selected before clicking ‘Create’.
    1. Open the Administration Website.
    2. Under the ‘Virtual Machines’ section in the navigation’s pane, point to configure and then select the appropriate virtual machine.
    3. In the ‘Configuration’ section towards the lower part of the page, click CD/DVD, then either:
      • In the CD drive of the physical computer running the Virtual Server service, Insert the startup CD for the operating system. Click Physical CD/DVD drive. Also select the corresponding CD or DVD drive letter from the drop-down menu, if necessary.
      • Or
      • Click Known image files. The ISO image (.iso) file containing a startup CD image can be selected from the drop-down menu, if the file is located in the default folder (Documents and SettingsAll UsersDocumentsShared Virtual Machines). Else, type the image file’s complete directory path in ‘Fully qualified path to file’
    4. After that go to status, point to the virtual machine name and click Turn On.
    5. Point to the virtual machine name, once the virtual machine is turned on. Then click Remote Control to connect to it and complete the operating system installation.
    • Red Hat Enterprise Linux 2.1 update 6
    • Red Hat Enterprise Linux 3.0 update 6
    • Red Hat Enterprise Linux 4.0
    • SUSE Linux Enterprise Server 9.0
    • Red Hat Linux 7.3
    • Red Hat Linux 9.0
    • SUSE Linux 9.2
    • SUSE Linux 9.3
    • SUSE Linux 10.0
  4. The Virtual Server can be configured to have both the Virtual Server Service and Administration Website components on the same physical computer or on separate computers.
    To setup both components on the same physical computer:
    To setup both components on separate computers:
    Now let us examine the methods for adding virtual machines, virtual hard disks to the virtual server.

    Adding Virtual Machines

    Everything related to the administration of the virtual server and the virtual machines is done from the Administration website accessed as shown below,
    Start–>All Programs–>Microsoft Virtual Server–>Administration Website.
    Adding a virtual machine to the virtual server can be done in two ways:

    Setting up virtual hard disks

    The most commonly used virtual hard disks are fixed-size virtual hard disks and dynamically expanding virtual hard disks. All hard disks are setup using the same procedure as explained below:
    While creating a virtual machine, a previously created virtual hard disk of any of the above mentioned types, except linked virtual hard disk, can be used.

    Adding an operating system to the virtual hard disk

    When the virtual machine is created, a virtual version of the CD/DVD drive in the physical machine is created in it. This CD/DVD drive can be configured to either capture a physical disk inserted into the physical drive or capture an ISO image file available anywhere in the physical computer. To configure this:
    Another and a much more easier way to deploy the guest operating system would be to copy the .vhd file of another virtual machine having the same operating system and application settings as the machine you wish to setup, rename it to match that name of the new machine you are setting up and then simply specify it as the virtual hard disk for the virtual machine you create. This method can be used to setup the virtual machine and deploy the guest operating system quickly and reduce the time it takes to setup the virtual machine. However, if the virtual machine whose .vhd file is being copied, as well as the new machine being deployed, belongs to an active directory domain the Sysprep utility needs to be run to prepare the operating system for transfer before copying the virtual hard disk.

    Conclusion

    Virtual Server 2005 R2 SP1 definitely offers a cost effective and robust technology that can be used to deploy virtual servers in a production environment and presents itself as a viable alternative to the VMWare Virtual Server applications. The guest operating systems supported by it, in addition to Microsoft Windows operating systems, include the following Linux distributions as well:
    So it can be used for application development and application migration across multiple platforms and the consolidation of separate application servers under a single server bringing down administrative and operations cost, as well as improve resource utilization. It is also capable of providing efficient and quick disaster recovery solutions to enterprise as well as business users.

How to setup Network attached Storage


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

Tomorrow’s Virtualization hopes


 Sometimes, one is just not enough. When you’ve got one server with rocketing performance, you could very well make the maximum utilization of it. Obviously, I’m talking about Virtualization. We’ve had quite a lot of products out there in the market. Many of them proprietary and a few, free. I have read once, “A nice product which is free is better than a great product which costs.” But today, my choice is one awesome product which is free, and is absolutely fabulous. I’m going to talk about my own favorite Virtualization Solution- KVM.

KVM, Kernel-based Virtual Machine is a complete and perfect virtualization solution for Linux. With KVM, you can have multiple machines running anything they want, may it be Linux or Windows. To make things brighter, from 2.6.20, the mainline linux will have a kernel component of KVM. That means faster and more stable workloads.
One thing which grabbed our attention was, during the migration the KVM gave almost negligible down-time and completed the migration perfectly well. And guess what, the KVM reminded me of those days in college when we learned about the ACID properties of database. Upon success of migration, the whole set-up will continue to run on the new host. Upon failure, everything remains as it ever were. That is, it will continue to work on the source host, again without down-time.
Now, we’ve got plenty of Management tools available for working our way around up in here. One such tool is Virtual Machine Manager. This one is also known as virt-manager. It acts as desktop user interface for managing virtual machines. It is sweet, and acts as a complete tool kit for managing our resource. Virt-manager contains many tools like
  • Virt Install- a cli interface for provisioning the various OS’s

  • Virt Clone- a cli tool for cloning existing inactive guests

  • Virt Image- a tool for installing guest operating systems based on a pre-defined master image.

  • Virtual Machine Viewer- s a lightweight interface for interacting with the graphical display of virtualized guest OS.
KVM can very well be proclaimed as the immediate future of Virtualization, and rightfully so. With the kind of tools available for managing it, I feel the “immediate future” is going to extend for quite some time.