Thursday Jul 02, 2009

Zones as the choice of virtualization offers many benefits in Solaris Cluster by virtue of the many options available to suit every need.  But for some new users, it would be a tad confusing with all the options and which one to use for which situation.  I have tried to summarize my views in this blog on the best fit.

To start with, we'll list the options:

1. Failover Zone/ HA Zone

2. Zone node

3. Zone Cluster

How did we end up with so many solutions? The concept of zones is fairly new in Solaris, i.e, starting with Solaris 10.  As the feature matures, more features are added and accordingly the Sun Cluster product starts taking advantage of it.

Now, let us dive into the details!

FAILOVER ZONE/HA ZONE:

The first supported solution for zones on Solaris 10 with Sun Cluster was introduced with the Sun Cluster 3.1u4 release. It is a GDS agent that makes the zone failover from one cluster node to the other. Of course, it requires that the zone configuration on the nodes be identical and the zone be installed on the shared storage for enabling failover.  This solution also has an option of monitoring the applications running inside the zone using SMF. 

It also supports branded zones apart from native zone.  Solaris8, Solaris9 and lx branded zones can also be made HA. The SMF based monitoring is particularly useful for legacy applications that don't have a Sun Cluster agent but still requires HA. This solution has been used in the now famous "Flying Containers" presentations at various events!  GUUG-Frühjahrsfachgespräch 2008 Tutorium Teil 2: Flying Container (German). For over view on the technical implementation, refer to Sun Cluster and Solaris 10 Containers.

ZONE NODE:

The Sun Cluster 3.2 release, enabled zones to be treated like physical nodes to be part of RGs. On 3.2, cluster services are automatically started on any native zone installed and configured on a Sun Cluster node. For those applications that were supported on Solaris Containers, it provided HA out of the box! Hence it is best for those applications which are supported with containers and have a Sun Cluster agent but don't have the requirement of the zone itself failing over in case of a failure.

It is very helpful if you have the application running in a combination of physical nodes and zones. Also those applications which are scalable and have to hosted exclusively in zones.

ZONE CLUSTER:

The feature released in the latest Sun Cluster release SC 3.2u2, introduces a new brand of zone called "cluster".  It enables the administrator to create a set of identical "cluster" zones on various physical cluster nodes that form a virtual cluster.  The administrator can delegate devices and other resources to the Zone Cluster.

This solution is very useful in hosted environments.  A single physical cluster can be partitioned and many virtual clusters can  be created for hosting different applications/isolate the application and data. Refer to the blue print on Deploying Oracle RAC in Zone Clusters.

In summary, there are many options available in Sun Cluster for taking care of your application deployment in Solaris zones.  You can choose which is the best fit once you can understand the benefits of each and hopefully this article was helpful introduction!

Tuesday Jun 30, 2009

The latest Sun Cluster agent patches for download:

 

 Agent  Solaris 9
 Solaris 10 SPARC
 Solaris 10 x86
HA PostgreSQL
126043-05
126044-05
126045-06
 HA Tomcat
126070-02
126071-02
126072-02
HA MySQL
126031-07
126032-07
126033-08

Wednesday Jun 17, 2009

On S10 x64 machine  (v20z box) with S10U5, filebench is not compiling with flex and bison packages downloaded from sunfreeware.  

Here is the configure error with flex:

bash$ ./configure
checking for a BSD-compatible install... config/install-sh -c
checking whether build environment is sane... yes
checking for gawk... no
checking for mawk... no
checking for nawk... nawk
checking whether make sets $(MAKE)... yes
checking for cc... cc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... no
checking whether cc accepts -g... yes
checking for cc option to accept ANSI C... none needed
checking for style of include used by make... GNU
checking dependency style of cc... none
checking dependency style of cc... (cached) none
checking for bison... bison -y
checking for flex... flex
checking for yywrap in -lfl... no
checking for yywrap in -ll... yes
checking lex output file root... configure: error: cannot find output from flex; giving up

 Now, If I uninstall flex and try, it fails during make:

bash$ make package

.......

.....

cc -D_REENTRANT -I. -I. -I.. -I../intl -DFILEBENCHDIR=\"/opt/filebench\"     -g -xO3 -DYYDEBUG=1 -c `test -f 'ipc.c' || echo './'`ipc.c
source='misc.c' object='misc.o' libtool=no \
depfile='.deps/misc.Po' tmpdepfile='.deps/misc.TPo' \
depmode=none /bin/bash ../config/depcomp \
cc -D_REENTRANT -I. -I. -I.. -I../intl -DFILEBENCHDIR=\"/opt/filebench\"     -g -xO3 -DYYDEBUG=1 -c `test -f 'misc.c' || echo './'`misc.c
source='multi_client_sync.c' object='multi_client_sync.o' libtool=no \
depfile='.deps/multi_client_sync.Po' tmpdepfile='.deps/multi_client_sync.TPo' \
depmode=none /bin/bash ../config/depcomp \
cc -D_REENTRANT -I. -I. -I.. -I../intl -DFILEBENCHDIR=\"/opt/filebench\"     -g -xO3 -DYYDEBUG=1 -c `test -f 'multi_client_sync.c' || echo './'`multi_client_sync.c
bison -y -d parser_gram.y
ld.so.1: bison: fatal: libintl.so.8: open failed: No such file or directory
*** Signal 9
make: Fatal error: Command failed for target `parser_gram.c'
Current working directory /tmp/filebench-1.4.8/filebench
*** Error code 1
make: Fatal error: Command failed for target `package'

As a workaround, using the binaries provided in /usr/sfw/bin seem to work.

Tuesday Jun 16, 2009

The latest core patches available for download:

126105-33   Sun Cluster 3.2: CORE patch for Solaris 9

126106-33   Sun Cluster 3.2: CORE patch for Solaris 10

126107-33   Sun Cluster 3.2: CORE patch for Solaris 10_x86

Friday Jun 12, 2009

Open High Availability (HA) Cluster 2009.06 brings superior high availability features to OpenSolaris 2009.06 making it an enterprise-ready mission critical deployment platform.

This Next Generation HA Cluster software provides:

- High Availability to OpenSolaris 2009.06 based on  proven, high quality Solaris Cluster technology
- Simplified configuration through minimized hardware  requirements
- Simplified delivery with IPS packages running  on OpenSolaris 2009.06
- Production level support on OpenSolaris 2009.06 by Sun.

Try the new features and make your deployment HA!

This blog copyright 2009 by maddy