How to Install and Configure Cluster with Two Nodes in Linux – Part 2

Hi all. Before we start the second part, let’s review about what we have done in Part 01. In Part 01 of this clustering series, we’ve discussed about clustering technique and in which cases it can be used along with the advantages and disadvantages of clustering. And also we have covered the pre-requisites for this setup and what each package will do after we configured the kind of a setup.

Setup Cluster with Multi Nodes
Setup Cluster with Multi Nodes – Part 2

You can review Part 01 and Part 03 from below links.

  1. What is Clustering and Advantages/Disadvantages of Clustering
  2. Fencing and Adding a Failover to Cluster – Part 3

As I said in my last article, that we prefer 3 servers for this setup; one server act as a cluster server and others as nodes.

Cluster Server: 172.16.1.250
Hostname: clserver.test.net

node01: 172.16.1.222
Hostname: nd01server.test.net

node02: 172.16.1.223
Hostname: nd02server.test.net   

In today’s Part 2, we will see how to install and configure clustering on Linux. For this we need to install below packages in all three servers.

  1. Ricci (ricci-0.16.2-75.el6.x86_64.rpm)
  2. Luci (luci-0.26.0-63.el6.centos.x86_64.rpm)
  3. Mod_cluster (modcluster-0.16.2-29.el6.x86_64.rpm)
  4. CCS (ccs-0.16.2-75.el6_6.2.x86_64.rpm)
  5. CMAN(cman-3.0.12.1-68.el6.x86_64.rpm)
  6. Clusterlib (clusterlib-3.0.12.1-68.el6.x86_64.rpm)

Step 1: Installing Clustering in Linux

So let’s start installing these packages in all three servers. You can easily install all these packages using yum package manager.

I will start by installing “ricci” package on all these three servers.

# yum install “ricci”
Install Ricci Package
Install Ricci Package

After ricci installation is done, we can see it has installed mod_cluster and cluster lib as its dependencies.

Ricci Installed Summary
Ricci Installed Summary

Next I’m installing luci using yum install “luci” command.

# yum install "luci"
Install Luci Package
Install Luci Package

After the installation of luci, you can see it has installed the dependencies it needed.

Luci Package Installed Summary
Luci Package Installed Summary

Now, let’s install ccs package in the servers. For that I entered yum install ccs.x86_64 which is shown in the list when I issued yum list |grep “ccs” or else you can simply issue yum install “ccs”.

# yum install “ccs”
Install CSS Package
Install CSS Package

Let’s install cman as the last requirement for this particular setup. The command is yum install “cman” or yum install cman.x86_64 as shown in the yum list as I mentioned earlier.

# yum install “cman”
Install CMAN Package
Install CMAN Package

We need to confirm the installations are in place. Issue below command to see whether the packages we needed are installed properly in all three servers.

# rpm -qa | egrep "ricci|luci|modc|cluster|ccs|cman"
All Packages Installed
All Packages Installed

Perfect all the packages are installed and all we need to do is configuring the setup.

Step 2: Configure Cluster in Linux

1. As the first step for setting up the cluster, you need to start the ricci service on all three servers.

# service ricci start 
OR
# /etc/init.d/ricci start 
Start Ricci Service on Cluster Server
Start Ricci Service on Cluster Server
Start Ricci On Node 01
Start Ricci On Node 01
Start Ricci On Node 02
Start Ricci On Node 02

2. Since ricci is started in all servers, now it’s time to create the cluster. This is where ccs package comes to our help when configuring the cluster.

If you don’t want to use ccs commands then you will have to edit the “cluster.conf” file for adding the nodes and do other configs. I guess easiest way is to use following commands. Let’s have a look.

Since I haven’t created the cluster yet, there’s no cluster.conf file created in /etc/cluster location yet as shown below.

# cd /etc/cluster
# pwd
# ls
Check Cluster Configuration File
Check Cluster Configuration File

In my case, I do this in 172.16.1.250 which is dedicated for cluster management. Now onwards, everytime we try to use ricci server, it will ask for ricci’s password. So you will have to set the password of ricci user in all servers.

Enter passwords for ricci user.

# passwd ricci
Set Ricci Password
Set Ricci Password

Now enter the command as shown below.

# ccs -h 172.16.1.250 --createcluster tecmint_cluster

You can see after entering above command, cluster.conf file is created in /etc/cluster directory.

Create Cluster Configuration
Create Cluster Configuration

This is how my default cluster.conf looks like before I do the configs.

Cluster Configuration
Cluster Configuration

3. Now let’s add the two nodes to the system. In here also we use ccs commands to make the configurations. I’m not going to manually edit the cluster.conf file but use the following syntax.

# ccs -h 172.16.1.250 --addnode 172.16.1.222
Add Nodes to Cluster
Add Nodes to Cluster

Add the other node too.

# ccs -h 172.16.1.250 --addnode 172.16.1.223
Add Second Node to Cluster
Add Second Node to Cluster

This is how cluster.conf file looks like after adding the node servers.

Cluster Configuration with Nodes
Cluster Configuration with Nodes

You also can enter below command to verify node details.

# ccs –h 172.16.1.250 --lsnodes
Confirm Cluster Node Details
Confirm Cluster Node Details

Perfect. You have successfully created the cluster yourself and added two nodes. For further details about ccs command options, enter ccs –help command and study the details. Since now you know how to create the cluster and add nodes to it, I will post Part 03 soon for you.

Thank you, till then keep connected with Tecmint for handy and latest How To’s.

Hey TecMint readers,

Exciting news! Every month, our top blog commenters will have the chance to win fantastic rewards, like free Linux eBooks such as RHCE, RHCSA, LFCS, Learn Linux, and Awk, each worth $20!

Learn more about the contest and stand a chance to win by sharing your thoughts below!

Thilina Uvindasiri
I'm a BSc Special (Hons) graduate in Information Technology and works as an Engineer-Systems. Love to work, explore and research Linux and play rugby as a hobby.

Each tutorial at TecMint is created by a team of experienced Linux system administrators so that it meets our high-quality standards.

Join the TecMint Weekly Newsletter (More Than 156,129 Linux Enthusiasts Have Subscribed)
Was this article helpful? Please add a comment or buy me a coffee to show your appreciation.

47 Comments

Leave a Reply
  1. Is there a way to register Nagios or monitoring tools with Linux HA (Pacemaker, Corosync, pcs)?

    Also, I would appreciate it if you leave a comment to see if there are any websites you can refer to.

    Reply
  2. [root@node01 ~]# ccs -h node01 –createcluster clus_cluster
    Unable to connect to node01, make sure the ricci server is started.

    [root@node01 ~]# service ricci status
    ricci (pid 2416) is running…

    sir , can help me to figure this out , why its showing like “make sure the ricci server is started.” as i ain’t able to proceed further

    Reply
  3. Cannot install ricci in Centos 7. It says”No package ricci available.Error: Nothing to do”. Please help in configuring the clustering in Centos 7.

    Reply
    • As I’ve mentioned in some other queries on the same publish, some packages are deprecated in CentOS 7and RedHat 7. There are new packages introduced.

      Reply
  4. Hi Thilina,
    great article, appriciate.
    but i’m stuck at –>
    $ ccs -h 192.168.1.201 –addfenceinst dsfence 192.168.1.202 Method1
    Method ‘Method1’ not found in node ‘192.168.1.202’

    I was installing all cluster package (ricci, clusterlib, modcluster, luci, ccs, cman) on master-server
    should i install luci, ccs and cman on others 2 servers?

    pls advice

    Reply
    • Hi Nauman,

      As I’ve mentioned in some other queries on the same publish, some packages are depricated in CentOS 7and RedHat 7. There are new packages introduced.

      Reply
  5. Hi Thilina,

    I have created Clusters using LUCI Cluster.conf is created in Nodes but it did not created in master server. I transferred cluster.conf to master using scp.

    I have already raised this query in other posts also, that after creating clusters i am unable to start cman service in master server.

    Unable to get the configuration.
    Cannot find node name in cluster.conf
    cman_tool :Corosync daemon could not start.Check Cluster logs for details.

    Reply
    • Hi, having an issue similar to Rakesh – ‘Cannot find node name in cluster.conf’, therefore cman_tool will not start.

      Any resolution found?

      Reply
      • Rakesh and Tom,

        Does the entries in the conf can be resolved by master server? You may check the hosts file file and verify.

        Reply
        • I believe only Nodes will have cman running on it.Not the Cluster manager.

          So cman will work for both nodes not Cluster Server

          Reply
  6. Wait, so are all three servers serving content? Such that the CMS server, Node 1, and Node 2 could all be running an Apache webserver? Or is the CMS server not affiliated in this matter?

    Reply
    • Hi Clark,

      The CMS does not affiliated in any content serving activity. It only serves the purpose of handling Nodes. But if you want the CMS too to serve the content, it not impossible but not recommended by the good standards.

      Reply
    • Hi Duncan,

      I’ve not used this in a Fedora environment. Try it and let the community know. It’ll be a good research for you.

      Reply
  7. Hi Thilina,

    Thanks for Posting this articles. It’s really helpful for the beginner. Can you just help out by posting the last part i.e Part 4

    Reply
  8. Hi,

    The article was excellent.

    I have face the following error.

    Error: Unable to retrieve information from ricci (is modcluster installed?)

    #ccs -h 192.168.6.1 –createcluster eq_cluster

    I have checked modcluster package with yum

    modcluster.x86_64 0.16.2-29.el6

    Packages was installed.

    Pls can u guide

    while try to execute

    Reply
  9. Why not use luci? It will save you trouble in typing via command line.. luci is part of conga suites together with ricci and its a web base and its very easy to use and will show same result

    Reply
    • Hi Mark,
      Doing everything using a GUI is not for an Engineer who seek to gain knowledge. By using commands not only you know what happens after you executing such commands but also give you opportunities to gain knowldege that way. But you are correct. using luci interface will make things easier . But less fun.

      Reply
  10. Great article. Have not used what you are using. But will take a look :D. i have mostly used xCAT “Xtreme cluster administration toolkit” , which i think is a really good.

    Reply
  11. Perhaps you did and I missed it, or are planning on doing it before finishing this series, but you may want to clarify that this is valid for CentOS/RHEL up to version 6. I could not find most of the packages listed in this article in my RHEL 7 box (unless they can be found in some fancy repository :) ). Nice work!

    Reply
    • Thanx for pointing it out Gabriel. For some reason, RHEL/CentOS have deprecated the packages above. You can use corosync, pacemaker, pcs instead

      Reply

Got Something to Say? Join the Discussion...

Thank you for taking the time to share your thoughts with us. We appreciate your decision to leave a comment and value your contribution to the discussion. It's important to note that we moderate all comments in accordance with our comment policy to ensure a respectful and constructive conversation.

Rest assured that your email address will remain private and will not be published or shared with anyone. We prioritize the privacy and security of our users.