Archive for December, 2010

20 steps to connect openfiler to esx as iscsi storage

December 25, 2010 4 comments

Openfiler is a Linux based small operating system that provides file-based network-attached storage and block-based storage area network and is free software. It can run with very minimal resource.Below I will show how we can take the benefit of openfiler to make SAN/NAS storage for our VMware ESX host.

There are two types of openfiler installation. You can click on the installation link to see all details on how to help

1.Text Based Installation

2.Graphical Installation

N:B:-Make sure you have not partitioned all the disk space.Make the OS partition to small size and keep rest as free space which later we will use as iSCSI LUN.

At the time of installation or post installation you have to configure static IP address and necessary DNS configuration.

Once your installation is done, after reboot you will get a screen like below where it will give the URL where you can access opnefiler from browser.

N:B:- Configure static IP address and necessary DNS configuration before doing anything

Step-1:Now open the URL given at openfiler startup screen using any browser to login to its web interface. For first time it will give a security warning like the picture shown below.

You just need to ignore the warning and proceed to the login page.

You will get a login screen like given below.

N:B:-Don’t login using the root user credentials what you have provided during openfiler installation.

Default username:-openfiler

Default Password:-password

Once after successful login you will get a screen which will be containing all your openfiler server information

Step-2:Go to volumes tab.If you are opening this for first time you will get a screen like below.

You have to select create new volume group. Then you will get a screen like below.

Step-3:Click on disk name (Here in my case its /dev/sdb) under Edit Disk which contains the free space we are going to use iSCSI storage. Now you will get a screen where you can make your physical volume.

From Partition Type dropdown menu select Physical volume and click Create.It will create a physical volume.

Step-4:Now click on Volume Groups on the right hand side. You will be presented a window like below.

Here give some valid name for the volume group and select the physical volumes shown in the list in order to add to the volume group. Then click on Add volume group.

Once volume group creation finishes you can see the volume group listed under volumes tab.

Step-5:Now volume group creation is done,So we have to configure LUN(Logical Unit Number).To do this click on Add Volume.

Here give some volume name and slide the slider to allocate space to LUN.Choose Filesystem type as iSCSI and click on create.

Step-6:Next action is to enable iSCSI service. For this open Services tab. You will find there are some service listed and have option to disable/enable the services. From here you have to enable iSCSI target server will be disabled by default.

Step-7:Once iSCSI is enabled we need to share the volume to specific IP/Networks. To do this open System tab and on bottom you will find Network Access Configuration. Here provide the details of the ESX/ESXi server information and click on update.

N:B:-Sometimes in Network Access Configuration if you will allow only host then the iSCSI volume may not be shown in storage volumes under vSphere client.To overcome this allow the whole network as shown in the second rule in Network Access Configuration.

Step-8:Now you need to configure the iSCSI target and allow for the host.To do this goto Volumes tab.On right hand side you will find iSCSI Targets.From there goto Target Configuration as shown in figure below.

You will see some long name under Target IQN.This is going to be your iSCSI target name.Click on Add to add the target.

Step-9:Then go to LUN Mapping and click on Map to map the LUN to the iSCSI target.

Step-10:Next goto Network ACL on the same page.You will see the list of network/hostname present here are similar to what you gave in Network Access Configuration before and all will be deny by default.You have to allow them and click on Update.

Now openfiler configuration is over.We have to attach the storage volume to our ESX/ESXi server.

To do that login to the ESX /ESXi server using vSphere client.

Step – 11:In vSphere client Goto to Inventory > Configuration > Networking.

Now you need to add VMkernel to have features like vMotion and HA.To do that click on Add Networking. Select VMkernel and click Next.

Step-12:-Now if you have more than one network adaptor you can create a new virtual switch but in my case I have only one so I choose use vSwitch0 which will handle the network traffic for VMkernel.Click Next to proceed.

Step-13:From the next screen you can choose the options to enable services like VMotion,FT etc. but as we are mainly focused on storage leave those part for now.

Click next to proceed

Step-14:Set an IP adress for the VMkernel

Click Next. Then click Finish to finish the process of creation of VMkernel.

Step-15: Go to Configuration TAB and click on Storage Adapters.Click on iSCSI Software Adapter.

Step-16: Click on Properties of iSCSI Software Adapter, then goto General > Configure and enable the software initiator checkbox.

Step-17:Then click on Dynamic Discovery tab.Click on Add and then put your Openfiler IP address in iSCSCI Server field. In my case the IP is

Click OK and then click Close to close the Properties window.Now a pop-up will appear to rescan all host bus adapter.Click on Yes to rescan.

Now you can see the storage device by selecting the iSCSI adapter as shown below.

Step-18:To create LUN goto Configuration > Storage > Add Storage.

Step-19:Once you will click on Add Storage you will be prompted as below

Click Next.

Select the iSCSI disk and click Next.You will be represented the disk layout.


Click Next to proceed.Now you will be prompted to put a datastore name.

Put any datastore name of your choice and click Next.

Select you block size from the dropdown list and click Next.

Now your LUN is ready.Click on Finish.

Step-20: Now automatically your Openfiler LUN will appear in datastore list.To view this go to Configuration>Storage.

N:B:-If your datastore is not appearing in the list just click on Rescan all to rescan the host bus adapter. Now you can definitely see your datastore.

Different Run levels in Linux and how to switch between them

What are different Run levels in Linux and how to switch between them?

Run levels:-Run levels define what processes or services to run automatically while the system boots up. This is defined in /etc/inittab file.

N. B: – The init process is the last step in the boot procedure and has pid of ‘1’.’ “init” is responsible for starting system processes as per defined in the /etc/inittab file.


“init” process checks which default run level is defined in /etc/inittab and starts the system in that run level which means all the services defined for that run level gets executed.


There are 7 different run levels present (run level 0-6) in Linux system for different purpose. The descriptions are given below.

0: Halt System (To shutdown the system)
1: Single user mode
2: Basic multi user mode without NFS
3: Full multi user mode (text based)
4: unused
5: Multi user mode with Graphical User Interface
6: Reboot System


Most desktop Linux distributions boot into run level 5, which starts up the Graphical Login Prompt. This allows the user to use the system with X-Windows server enabled. Most servers boot into run level 3, which starts the text based login prompt as it is advisable not to install graphical windows in a server as lots of space goes waste and also it takes lot of resource to run.


Each run level is defined inside its own directory structure. These directories are located in the /etc/rc.d/ directory, under which you have rc1.d, rc2.d… rc6.d directories where the number from 0 to 6 corresponds to the specific run level. Inside each directory symbolic links are defined to a  to master initscripts found in /etc/init.d or /etc/rc.d/init.d.


Switching or Changing between different runlevels:-

Method-1: Changing run level temporarily without reboot.

We can use init command to change rune levels without rebooting the system.

Ex:-if we are currently in run level 3 and want to go to run level 1, just we need to execute

# init 1

Or if you want to shutdown a machine you can take help of run level ‘0’ .Just you need to execute

#init 0

Remember this change is not permanent and on next reboot you will get your default runlevel.


Method-2: Changing run level permanently

If you want to change your default run level then

Open the file /etc/inittab and edit entry initdefault:

# vi /etc/inittab

Let’s set initdefault to 5, so that you can boot to X next time when Linux comes up:



Method-3:-Change run level at boot time

You can also change the run level at boot time. If your system uses LILO as the boot manager, you can append the run level to the boot command:

LILO: linux 3 or
LILO: linux 5

If your system uses GRUB, you can change the boot runlevel by pressing the `e’ key to edit the boot configuration. Append the run level(in our case 5) to the end of the boot command as shown:

kernel /vmlinuz-2.6.18-164.el5 ro root=LABEL=/ rhgb quiet  5



Categories: Linux Tags: , , , ,