Okay guys, so once again we are back to
the cluster components. Till now we have understood the cluster from normal
diagrams, but let us get little bit inside the cluster. What is the cluster
and what are the components of the cluster and how a cluster is made.
First of all the main important component of a cluster is cluster nodes,
if you do not have cluster nodes definitely you cannot combine or make a
cluster it's a single machine. Which actually participates in the cluster,
so you have node and every machine that is part of the cluster is called as node,
and each node is responsible for providing the processing resources, it's
not your network it's not your clusterware software it's basically the single
node that processes the information at ground level. So every node is
responsible to process the information and who allocates the work to the nodes,
it is the clusterware software. Performs actual work in the cluster same
hardware configuration, so make sure every node in your cluster should have
same hardware configuration, see it is recommended by Oracle and if you try to
deviate from it you will see lot of performance issues, so it's always
recommended that whatever model or whatever a company server you take or
whatever configuration server you purchase for your node 1. It should be the
same configuration for all the nodes in the cluster. So do not deviate from it,
you can configure it, but definitely you will have performance issues and also
same operating system configuration. Today right now Oracle does not support
multi OS clustering solution, so you cannot create a cluster by installing
Linux on first node and installing Windows on second node and then install
clusterware software on top of it it's not possible you need to have the same
OS on all the nodes maybe in future Oracle might release a solution like
that, application software runs on each node ok with this statement it's not
specific to the application which will be using your database, more or less it
is related to your database software or the clusterware software so basically
each node will have the clusterware software each node
will have the ORACLE_HOME installed over there so that's why this is not related
to the application team it is related to our Oracle database and Grid software so
you need to install the grid software and the ORACLE_HOME on each node. You
cannot have one node installation and then continue. The second component of
cluster is nothing but our clusterware software without which, the multiple
nodes cannot work as one node. It's the software that makes the cluster it's not
the nodes that become cluster automatically it's the clusterware
software that makes them a cluster and it manages the workload as we have
already seen in our last session it's the job of clusterware software to
distribute the incoming connections to the nodes. The job of clusterware
software is to maintain a repository where it knows that ok what is the load
on node 1, what is the load on node 2 and depending on the load the new incoming
connections are given to the particular node and even let's take your node one
is down then the clusterware software is responsible for pushing the new
connections directly to node 2 that's the job of clusterware software where it
manages the workload. Again it manages the nodes so sometimes what happens.
Let's say your nodes are evicted if there is a term which is used in RAC
that is node eviction. The meaning of node eviction is sometimes your nodes
will go out of the cluster. Now it's the job of the clusterware software to
restart the node and join them back into the cluster that's how clusterware
software will manage the nodes, and there are few things that will understand in
the clusterware architecture where you will understand how clusterware
software manages the nodes, so the clusterware software is responsible
for providing high availability, so how does it perform or provides high
availability. Let's take there are 10 nodes in the
cluster and 9 nodes are down, if a user sends a request
the clusterware software wll try to check with node one, it's down. It will
check with node two, it's down. It will take with node three and continue till
node nine and after nine also it won't revert back to the user saying that
nodes are down it will try its best with every possible node and we have the
tenth node live in the cluster and the clusterware software will get it
executed over there and gives the results to the user, so that way the
clusterware software provides high availability.
It never reboots back to the user saying that boss your request landed on node 1
and node 1 is down we cannot help. This is how your clusterware software
basically provides the high availability, And! of course we have to install it on
every node if you don't install the clusterware software on every node it
won't be part of the cluster simple as that. It makes multiple servers
look like one server now you guys might have a question over here like how? How a
cluster is looked like one big machine to the outside world, so basically what
happens is you assign a name to a cluster and you communicate to the
cluster using that name. You do not give any IP address, you do not give any local
or physical name of the each node you just give a clusters name the clusterware software will then allocate the work, so let us look at this point what
and how the user connection happens in RAC we'll talk later. Let us understand
the cluster working in a generic term, these are your user connections your
users are connecting to the cluster. So on any cluster or wherever you install the
clusterware software let's take you have install the clusterware software on four nodes. All these nodes are connected and they are
speaking to the shade storage as well. Right, so whatever clients who try to
connect to your cluster, they will have a cluster name let's take My RAC.Oraclegenesis.com, this is the
cluster name. The clients will send their queries to this cluster name and this
cluster name is basically assigned to your clusterware software. So once the
client request comes to this clusterware name the job of the clusterware
software or the grid software in our case would be, to allocate the work to
the respective nodes. The best part about the clusterware software is, it
knows the load on each node and then it will try to send the work or allocate
the work to the particular nodes. The clusterware software are nothing but
the grid is the one who basically gives work to your nodes. It is not the client,
client will never directly interact with the node. Client will just send a request
to a name, the cluster name or a host name and that name is nothing but your
clusterware software name. The clusterware software will then decide by
itself where to send this request, the same way happens in the response time. Let's
take the work is given to node one, node one on physical node you have database
instance it will talk to the shared storage it will get the required blocks
into the instance and from the instance it is given back to the user. This is
generic working of a clustering software. So this is the
reason for the outside world whatever applications you have it will have only
one connection name, now the application does not know that whether this is a
single host whether this is a RAC software whether this is a cluster or
whether it is one server one single desktop nothing. The outside world is
just bothered to send their queries to this a particular name and from this
name the work is done. So why it is called as highly scalable
because let's take even though my cluster is up and running I can add
nodes to the cluster again and again without impacting the existing cluster
and without impacting the users. The same way let's take I want to reduce the
cluster I can remove the nodes from the cluster without impacting the existing
cluster and without impacting the users because when you remove the node from
the cluster your clusterware software is aware that okay boss node three is
removed and do not give any work to node three you have only node 1 and node two
with you to get the work done. So clusterware software will allocate
work to node 1 and node 2 when you add nodes to the cluster, then your cluster
ware software is smart enough ok we have 2 more nodes so next time new
connections will come we will give it to node 3 and node 4. So that is why cluster
ware software job is to manage the entire work within the cluster. And
finally grid clusterware software developed by Oracle. Next cluster
component that we have is shared storage. We know the importance of shared storage
and if you do not have shared storage, we will be getting into a trouble called as
no dependency, so let's take if you install entire database on node 1 and
other nodes are connecting to node 1 then it becomes node dependant. If
something happens to your node 1 you cannot access your database, so RAC is
the share everything architecture and how can you share. If you put things on
shade storage. It removes single node dependency and accessible by all nodes
multi node read/write permissions. Access volume manager and file system pick what
is the volume manager what is the file system and all this will be addressed
when we are under ASM topic, so for now just understand that shade storage is
the area where we push all the files and every node can access it.
Takes care of redundancy okay administers storage this can disk groups
Oracle RAC shade of everything architecture guy's these three points that
we have this is more related to Oracle ASM so I won't talk about them
right now. And finally the networks, networks we are
pretty much good with the network. Each node must be connected to network
minimum two or more local area networks recommended, see it depends on the
cluster some clusters might require more than two network also they might require
two Private Networks when we say two private network one private network for
inter node communication and another private network for shared storage
communication. It depends on the cluster to cluster, but Oracle RAC needs only two
networks one is public and one is private network. Now there are further
networks that we need to configure that is virtual IP, scan IP. Those two
networks we will be looking at when we are in the networking configuration. So
for now I won't talk about virtual IP, scan IP, scan listeners or local node
listeners, because we are focused towards the cluster component. So I am trying to
keep things as simple as possible because I don't want to confuse you
guys at initial stage.