Friday, August 29, 2014

CentOS-6.5 : Install GFS2

In computing, the Global File System 2 or GFS2 is a shared disk file system for Linux computer clusters. GFS2 differs from distributed file systems (such as AFS, Coda, InterMezzo, or GlusterFS) because GFS2 allows all nodes to have direct concurrent access to the same shared block storage. In addition, GFS or GFS2 can also be used as a local filesystem. GFS  has no disconnected operating-mode, and no client or server roles. All nodes in a GFS cluster function as peers. Using GFS in a cluster requires hardware to allow access to the shared storage, and a lock manager to control access to the storage. The lock manager operates as a separate module: thus GFS and GFS2 can use the Distributed Lock Manager (DLM) for cluster configurations and the “nolock” lock manager for local filesystems. Older versions of GFS also support GULM, a server based lock manager which implements redundancy via failover.
Here is my testing environment:
Virtualbox:
  • Two CentOS 6.5 (64 bit) (node1 – node2).
  • Conga administration and management CentOS 6.5 (64 bit) (node3).
  • Shared disk between node1 and node2  /dev/sdb/.
Make  the  /etc/hosts on 2 nodes like this:
vi /etc/hosts
192.168.1.130  node1
192.168.1.131  node2
192.168.1.132  node3  ( management  Console)
Install this on node1 and  node2
 [root@node1 ~]# yum groupinstall "iSCSI Storage Client" "High Availability" "Resilient Storage"
[root@node2 ~]# yum groupinstall "iSCSI Storage Client" "High Availability" "Resilient Storage"
Install in Node3 (management node):
[root@node3 ~]# yum groupinstall "High Availability Management" "High Availability"

Format a GFS2 partition

Explanation:
Formatting filesystem: GFS2
Locking Protocol: lock_dlm
Cluster Name: unixmencluster1
FileSystem name: GFS
Journal: 2
Partition: /dev/sdb
The Node1 and 2 is sharing one disk  /dev/sdb.
[root@node1 ~]# mkfs.gfs2 -p lock_dlm -t unixmencluster1:GFS -j 2  /dev/sdb
 This will destroy any data on /dev/sdb.
 It appears to contain: data
Are you sure you want to proceed? [y/n] y
Device:                    /dev/sdb
 Blocksize:                 4096
 Device Size                1.00 GB (262144 blocks)
 Filesystem Size:           1.00 GB (262142 blocks)
 Journals:                  2
 Resource Groups:           4
 Locking Protocol:          "lock_dlm"
 Lock Table:                "unixmencluster1:GFS"
 UUID:                      ef9eda0d-a3da-b62d-f694-d738f5787285

And,
[root@node2 ~]# mkfs.gfs2 -p lock_dlm -t unixmencluster1:GFS -j 2  /dev/sdb
 This will destroy any data on /dev/sdb.
 It appears to contain: Linux GFS2 Filesystem (blocksize 4096, lockproto lock_dlm)
Are you sure you want to proceed? [y/n] y
Device:                    /dev/sdb
 Blocksize:                 4096
 Device Size                1.00 GB (262144 blocks)
 Filesystem Size:           1.00 GB (262142 blocks)
 Journals:                  2
 Resource Groups:           4
 Locking Protocol:          "lock_dlm"
 Lock Table:                "unixmencluster1:GFS"
 UUID:                      af45a3c0-da10-97b1-7ade-cb935778da78
1-  make password for ricci user on both machines node1 and node2
ricci is an agent that runs on any machine or cluster node to be administered. It is written in C for speed,
[root@node1 ~]# passwd  ricci
 Changing password for user ricci.
 New password:
 BAD PASSWORD: it is too short
 BAD PASSWORD: is too simple
 Retype new password:
 passwd: all authentication tokens updated successfully.
 [root@node1 ~]#
And
[root@node2 ~]#  passwd  ricci
 Changing password for user ricci.
 New password:
 BAD PASSWORD: it is too short
 BAD PASSWORD: is too simple
 Retype new password:
 passwd: all authentication tokens updated successfully.
 [root@node2 ~]#
2- start the ricci services
chkconfig ricci on
 [root@node1 ~]# /etc/init.d/ricci start
 Starting system message bus:                               [  OK  ]
 Starting oddjobd:                                          [  OK  ]
 generating SSL certificates...  done
 Generating NSS database...  done
 Starting ricci:                                            [  OK  ]
 [root@node1 ~]#
And
chkconfig ricci on
[root@node2 ~]# /etc/init.d/ricci start
 Starting system message bus:                               [  OK  ]
 Starting oddjobd:                                          [  OK  ]
 generating SSL certificates...  done
 Generating NSS database...  done
 Starting ricci:                                            [  OK  ]
 [root@node2 ~]#
3- Start Conga Services on (node3)
 [root@node3 ~]# /etc/init.d/luci start
 Start luci...                                              [  OK  ]
 Point your web browser to https://node3:8084 (or equivalent) to access luci
 [root@node3 ~]#
3-1 Stop The  network manager  and  start the Cluster manager
service NetworkManager stop
 /etc/init.d/cman restart
 4- Login to Luci Console
Login with root user and root password:
https://node3:8084
2014-05-28_155212gfs
then  under  mamager  Clusters  > Create
2014-05-28_161949gfs
Insert the Clustername  you created before in the formatting, node name or host name, password for and Ricci user:
2014-05-28_165221gfs
Click Create Cluster.
2014-05-28_165522gfs
after this the nodes should be live. if not please stop the network manager and restart v the cman service.
2014-05-28_165549gfs
5- Configure the Quorum
Under Configure  > Qdisk
2014-06-02_002109
6- Configure  Domain:
Failover Domain  > add
2014-06-02_002745
 7- Create Resources
Create under node1 and node GFS partition:
 [root@node1 ~]# mkdir /GFS
 [root@node2 ~]# mkdir /GFS
go to Ressources  >  add  > GFS2
2014-06-02_003415
8- Create  Sevice  group
Service Group  > Add
2014-06-02_003908
Add GFS2 resources:
2014-06-02_113923
Wait few minutes, then you will see something like this:
2014-06-02_112905
Check the status of the Cluster and the mount.
2014-06-02_113810
This is an small example in Vitualbox with 1 shared disk.
Cheers!

No comments: