Installing OHAC
From Genunix
- NicholasSolter - 11 Jun 2008
Attempting to install SCX 7/08 on Open Solaris? 2008.05, using scinstall (not JES installer)
First problem:
# ./scinstall -iI ./scinstall[1251]: .: syntax error at line 5975: `P' unexpected scinstall: Unable to load "/media/CDROM/Product/sun_cluster/Solaris_11/Tools/lib/scinstall_common" ./scinstall[1092]: print_errorexit_msg: not found [No such file or directory]
Seems like a ksh93 vs ksh88 problem. Needs further investigation.
-- ThorstenFrueauf - 16 Jun 2008
The problem seems to be within Solaris_x86/Product/sun_cluster/Solaris_11/Tools/lib/scinstall_common, line 5975 (similar again later on line 6001):
printf "$(gettext '%s: hostname.%s is empty, IPMP group will not be created for this adapter')\n" "${$PROG}" "${adp}" | logmsg
Note the "${$PROG}" - seems to be an error and should be replaced with "${PROG}".
A more general workaround seems to be to call scinstall with /usr/xpg4/bin/sh:
$ pfexec /usr/xpg4/bin/sh scinstall -Ii scinstall: Java Dynamic Management Kit (JDMK) is not installed. scinstall: Refer to the documentation for installation instructions. The Common Agent Container 2.0 is not currently installed. Please refer to the documentation for installation instructions. scinstall: scinstall did NOT complete successfully! Log file - /var/cluster/logs/install/scinstall.log.10396
Of course this brings us to the next question - how to install the missing shared components?
-- ThorstenFrueauf - 17 Jun 2008
If one installs the missing shared components from the SCX binary distribution:
Download SCX binaries to get the shared components (to e.g. /var/tmp/SCX):
$ cd /var/tmp/SCX/Solaris_x86/Product/shared_components/Packages/
$ pfexec pkgadd -d . SUNWj5rt
$ pfexec pkgadd -d . SUNWj5dev
$ pfexec pkgadd -d . SUNWjato
$ pfexec pkgadd -d . SUNWjhrt
$ pfexec pkgadd -d . SUNWjhdev
$ cd /var/tmp/SCX/Solaris_x86/Product/shared_components/Solaris_11/Packages/
$ pfexec pkgadd -d . SUNWmctag
$ pfexec pkgadd -d . SUNWmconr
$ pfexec pkgadd -d . SUNWmcon
$ pfexec pkgadd -d . SUNWmcos
$ pfexec pkgadd -d . SUNWmcosx
$ cd /var/tmp/SCX/Solaris_x86/Product/shared_components/Packages/
$ pfexec pkgadd -d . SUNWjdmk-runtime
$ pfexec pkgadd -d . SUNWjdmk-runtime-jmx
$ pfexec pkgadd -d . SUNWcacaocfg
$ pfexec pkgadd -d . SUNWcacao
$ pfexec pkgadd -d . SUNWtlsu
$ pfexec pkgadd -d . SUNWjaf
$ pfexec pkgadd -d . SUNWjaxp
$ pfexec pkgadd -d . SUNWwscl
$ pfexec pkgadd -d . SUNWjaxb2
$ pfexec pkgadd -d . SUNWxsrt
$ pfexec pkgadd -d . SUNWjaxb
$ pfexec pkgadd -d . SUNWjaxws
$ pfexec pkgadd -d . SUNWcacaort
$ pfexec pkgadd -d . SUNWaclg
$ pfexec pkgadd -d . SUNWcacaowsvr
$ cd /var/tmp/SCX/Solaris_x86/Product/shared_components/Solaris_11/Packages/
$ pfexec pkgadd -d . SUNWmfwk-rt
$ cd /var/tmp/SCX/Solaris_x86/Product/shared_components/Packages/
$ pfexec pkgadd -d . SUNWcacaomon
- Note: Although the there are IPS packages for SUNWcacaort and SUNWcacaowsvr within the pkg.opensolaris.org repository, those can not be used, since scinstall does the following check (e.g. line 7187 from ohac/usr/src/cmd/scinstall/lib/scinstall_common.ksh):
# Check the basedir of the Common Agent Container already installed
pkg_basedir=$(pkgparam ${rootarg} SUNWcacaort BASEDIR 2>/dev/null)
So while IPS does preserve some backwards compatibility to the SRV4 package tools, pkgparam does not work as expected for IPS packages.
Then "scinstall -Ii" will work when called by /usr/xpg4/bin/sh. One needs to select the lofi option for /globaldevices. Note that this option is NOT delivered with SCX 06/08. But the OHAC core tarball contains the source for it. For Open Solaris? 2008.05 we need the lofi option, since there is no possibility to configure a separate /globaldevives during installation.
-- ThorstenFrueauf - 19 Jun 2008
A build of ohac core on Open Solaris? 2008.05 (build 86) did work with the documented work arounds. The install via "scinstall -Ii" does also work.
After that I did a single node configuration. Here is the logifile content:
scinstall -ik -C Colorado -F -o -G lofi -P task=quorum,state=INIT Initializing cluster name to "Colorado" ... done Initializing authentication options ... done Setting the node ID for "v20z-1" ... done (id=1) Updating nsswitch.conf ... done Adding cluster node entries to /etc/inet/hosts ... done Configuring IP multipathing groups ...done Verifying that power management is NOT configured ... done Unconfiguring power management ... done /etc/power.conf has been renamed to /etc/power.conf.061908165810 Power management is incompatible with the HA goals of the cluster. Please do not attempt to re-configure power management. Ensure network routing is disabled ... done Network routing has been disabled on this node by creating /etc/notrouter. Having a cluster node act as a router is not supported by Sun Cluster. Please do not re-enable network routing.
The first boot looks as follows:
SunOS Release 5.11 Version snv_86 64-bit Copyright 1983-2008 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Hostname: v20z-1 Configuring devices. /usr/cluster/bin/scdidadm: Could not load DID instance list. /usr/cluster/bin/scdidadm: Cannot open /etc/cluster/ccr/did_instances. Booting as part of a cluster NOTICE: CMM: Node v20z-1 (nodeid = 1) with votecount = 1 added. NOTICE: CMM: Node v20z-1: attempting to join cluster. NOTICE: CMM: Cluster has reached quorum. NOTICE: CMM: Node v20z-1 (nodeid = 1) is up; new incarnation number = 1213887755. NOTICE: CMM: Cluster members: v20z-1. NOTICE: CMM: node reconfiguration #1 completed. NOTICE: CMM: Node v20z-1: joined cluster. ip: joining multicasts failed (18) on clprivnet0 - will use link layer broadcasts for multicast did instance 1 created. did subpath v20z-1:/dev/rdsk/c5t1d0 created for instance 1. did instance 2 created. did subpath v20z-1:/dev/rdsk/c4t0d0 created for instance 2. Configuring DID devices Reading ZFS config: done. Mounting ZFS filesystems: (14/14) obtaining access to all attached disks v20z-1 console login: Configuring the /dev/global directory (global devices) v20z-1 console login: Jun 19 17:04:48 v20z-1 Cluster.CCR: Unable to open door descriptor /var/run/rgmd_receptionist_door
