Contained Within
Find More Documentation
Featured Support Resources
| Download this book in PDF
Creating the Configuration
8
- This chapter provides step-by-step instructions for creating a Solstice High Availability configuration using the hasetup(1M) command. hasetup provides an easy-to-use interface that allows initial configuration of the Solstice HA servers.
- Use the following table to locate specific information in this chapter.
-
8.1 Overview of Tasks
-
hasetup prompts or checks for the following information:
-
- Host names and logical hostnames
- Private network connections
- Additional public network connections
- Metadevice state database replicas on local disks
- The data services being used
- Allocating space for UNIX file system logs
- Metadevice state database replicas on multi-host disks
8.2 Preparing to Run hasetup
- The hasetup command prompts for considerable information about your Solstice HA configuration. During execution, the program checks to verify the information you enter, then writes the information to the Solstice HA configuration files.
-
hasetup provides default answers for most questions, providing the information is available from the network name services. The default answers are inside brackets. To accept the default, press Return. If no default is provided, you must provide an entry.
-
Caution - The Solstice HA configuration files should never be edited by hand. The hasetup program adds the necessary information to these files. If the information is inconsistent or incorrect in these files, both Solstice HA machines may crash and services may be unavailable.
- Use the worksheet provided in Table 8-1 to make a list of the hosts on each public network that are part of your Solstice HA configuration.
-
Table 8-1
|
| Server1 Public |
|
| Server2 Public |
|
| Physical Host Name | Logical Host Name | Network Interface | Physical Host Name | Logical Host Name | Network Interface |
| 1st Network | _____________ | _____________ | _____________ | _____________ | _____________ | _____________ |
| 2nd Network | _____________ | _____________ | _____________ | _____________ | _____________ | _____________ |
| 3rd Network | _____________ | _____________ | _____________ | _____________ | _____________ | _____________ |
| 4thNetwork | _____________ | _____________
Server1 Priv
| _____________ | _____________ | _____________
Server2 Priv
| _____________ |
| Private Link Host Name | Network Interface | Private Link Host Name | Network Interface |
| 204.152.64 | _____________ | _____________ | _____________ | _____________ |
| 204.152.65 | _____________ | _____________ | _____________ | _____________ |
· How to Run hasetup
-
-
As root, invoke hasetup from either of the servers in the configuration by entering the following:
-
# hasetup
Checking local /etc/nsswitch.conf file for Solstice HA compliance ... failed
Updating local /etc/nsswitch.conf file for Solstice HA compliance ... done
|
- When started, hasetup verifies the /etc/nsswitch.conf file is properly configured and if the file is not, it overwrites the file with a new version.
-
-
You will be asked if you want to set up additional public (client) network interfaces.
While discovering network connections, hasetup may generate messages on the system console. The following example accepts the default answer no. When you respond no, the network controllers on the additional public networks found by hasetup are turned off. If you respond yes, you will be prompted for the names of the network interfaces.
-
...
Attempting to discover local network controller config ... done
There are 5 unused network controllers on the "local" host
Do you want to setup any of those interfaces now (yes/no) [no]? no
Turning off network controller "qe0" on local host ... done
Turning off network controller "qe1" on local host ... done
Turning off network controller "qe2" on local host ... done
Turning off network controller "qe3" on local host ... done
Turning off network controller "le1" on local host ... done
...
|
-
-
Enter the host name of the first private network.
This is the name of the current host that will be used on the private network. By convention, this name is generated by using the primary host name and adding a -priv1 suffix. hasetup verifies the private host name you entered is in the /etc/hosts file, then probes the network to discover the corresponding private host name on the sibling host.
-
Caution - Never set up private network connections on one server that do not exist on the sibling.
-
...
Local hostname for the 1st private net [host1-priv1]? Return
Broadcast from "host1-priv1" to discover sibling's private hostname ... done
Local hostname for the 1st private net is set to "host1-priv1"
Sibling hostname for the 1st private net is set to "host2-priv1"
...
|
-
-
Enter the host name of the second private network.
The process followed in Step 3 is repeated. In this example the default was again accepted. hasetup verifies the private connectivity, which allows the command to perform remote command execution on the sibling host. This allows for a single point of administration from this point forward.
-
...
Local hostname for the 2nd private net [host1-priv2]? Return
Broadcast from "host1-priv2" to discover the sibling's private hostname.done
Local hostname for the 2nd private net is set to "host1-priv2"
Sibling hostname for the 2nd private net is set to "host2-priv2"
Checking access to "host1-priv1" from "host2-priv1" ... done
Checking access to "host2-priv1" from "host1-priv1" ... done
Checking access to "host1-priv2" from "host2-priv2" ... done
Checking access to "host2-priv2" from "host1-priv2" ... done
...
|
- The /etc/nsswitch.conf file is copied to the sibling host.
-
...
Copying /etc/nsswitch.conf to host "host2-priv1" ... done
...
|
- Network information about the sibling host is now verified. You are then asked if you want to sent up additional network interfaces on the sibling host. The default answer is no.
-
...
Attempting to discover sibling's network controller config ... done
There are 5 unused network controllers on the "sibling" host
Do you want to setup any of those interfaces now (yes/no) [no]? Return
Turning off network controller "qe0" on the sibling host ... done
Turning off network controller "qe1" on the sibling host ... done
Turning off network controller "qe2" on the sibling host ... done
Turning off network controller "qe3" on the sibling host ... done
Turning off network controller "le1" on the sibling host ... done
Attempting to rediscover sibling's network controller config ... done
Finding the name of the sibling host for the main public net ... done
Verifying that the two primary hostnames are on the same net ... done
...
|
-
-
Select the type of configuration.
You are now asked if the configuration is symmetric. If you answer no, the configuration is created with one logical host. You are then asked if the current host is the default master of the single logical host. Also, if you are creating an asymmetric configuration, you will not see Step 9, diskset allocation. In this example, the default (symmetric) configuration was selected.
-
...
Is this configuration symmetric (yes/no) [yes]? yes
...
|
-
-
Enter the logical host name for each server. (Only symmetric configurations will see this prompt.)
The logical host name entered is the name used by the server to communicate with the logical hosts. When the names are entered, the name service is checked for the associated IP address. If the IP address is found, it is used. If it is not found, you will be prompted for the IP address and it will
- be entered in the local and remote host's /etc/inet/host file only. The network name service will not be updated. You must perform this at a later time manually.
-
...
Logical hostname whose default master is "host1"? logicalhost1
Logical hostname whose default master is "host2"? logicalhost2
...
|
-
hasetup then checks the host information for consistency and copies the network files as shown below to the sibling.
-
...
Final checking of /etc/inet/hosts ... done
Updating /etc/inet/netmasks ... done
Copying /tmp/hosts.hasetup.1960 to host "host2" as /etc/inet/hosts ...done
Copying /etc/inet/netmasks to host "host2" ... done
...
|
-
hasetup prints the following four informational lines.
-
...
Diskset assigned to logical host "logicalhost1" [logicalhost1]? logicalhost1
Diskset assigned to logical host "logicalhost2" [logicalhost2]? logicalhost2
Pathprefix for logical host "logicalhost1" [/logicalhost1]? /logicalhost1
Pathprefix for logical host "logicalhost2" [/logicalhost2]? /logicalhost2
...
|
-
-
Select the highly available data services that will be used in the configuration.
You are asked first if HA-NFS is being used in the configuration, then about HA-ORACLE if you have installed the SUNWhaor package. The default answer is yes.
-
...
Will the HA-NFS data service be used (yes/no) [yes]? Return
Will the HA-ORACLE data service be used (yes/no) [yes]? Return
...
|
- The configuration files are updated and copied to the sibling host with all the information you have previously entered.
-
...
Updating "/etc/opt/SUNWhadf/hadf/hadfconfig" ... done
Updating "/etc/opt/SUNWhadf/hadf/cmm_confcdb" ... done
Copying /etc/opt/SUNWhadf/hadf/hadfconfig to host "host2" ... done
Copying /etc/opt/SUNWhadf/hadf/cmm_confcdb to host "host2" ... done
...
|
-
hasetup now checks and verifies the existence of Solstice DiskSuite metadevice state database replicas and compiles a list of the multi-host disks.
-
...
Checking for Solstice DiskSuite replicas on the local host ... done
Checking for Solstice DiskSuite replicas on the sibling host ... done
Verifying that disksets do not already exist ... done
Compiling the list of multi-host disks ... done
Checking the list of multi-host disks ... done
...
|
- The remainder of the procedure deals with setting up the diskset.
-
-
Reserve space for UFS logs on multi-host disks.
hasetup provides an easy way to allocate space for UFS logs. By default, hasetup reserves space on slice 6 of each disk in the diskset for UFS logs. UFS logging speeds reboots, provides faster local directory operations, and decreases synchronous disk writes. The UFS updates are safely recorded in a log before they are applied to the server. For information about how large to make the UFS log, see Section 3.1.17, "File System Size and Disk Layout," on page 3-19 for a complete discussion of UFS logging.
-
...
Do you want to reserve UFS log space at this time (yes/no) [yes]? Return
How large will the UFS logs be (Mbytes) [10]? Return
...
|
-
-
Assign disks to disksets.
By default, the hasetup program automatically allocates the disks as evenly as possible between the two disksets (in a symmetric configuration). This allocation is subject to the majority drive requirements of Solstice DiskSuite. You have the option of editing the allocations of controllers to the two disksets. To accept the default allocation, enter a y.
-
Caution - If you bypass diskset creation in this step (Step 9), you must create disksets manually before the Solstice HA configuration is functional. This will require that you use the metaset(1M) command and enter all the device names. When you do this, make sure the diskset names match the names given to the logical hosts. Refer to the Solstice DiskSuite 4.0 Administration Guide for additional information.
-
===================== Default Diskset Allocation =====================
relo-host2 relo-host1
c1t0d0, c1t0d1, c1t1d0, c1t1d1 c1t2d0, c1t2d1, c1t3d0, c2t0d0
c1t4d0, c1t4d1, c1t5d0, c2t2d0 c2t0d1, c2t0d2, c2t1d0, c2t1d1
c2t2d1, c2t2d2, c2t3d0, c2t3d1 c2t4d0, c2t4d1, c2t4d2, c2t5d0
c3t0d0, c3t0d1, c3t1d0, c3t1d1 c2t5d1, c2t5d2, c3t2d0, c3t2d1
c3t4d0, c3t5d0 c3t3d0, c3t4d1
Total number of disks: 18 Total number of disks: 18
======================================================================
Do you accept the default allocation of disks into disksets [y|n]? y
|
- If you respond with an n at the above prompt, you are allowed to edit the allocation of disks to each of the disksets, as shown in the following screen.
- You interact with the following screen using the up and down arrows on the keypad. To add disks to a different diskset, enter the drive name (cntndn). Shell syntax wild carding is accepted. The "Total number of disks" fields reflect any changes made during editing. When editing is complete, move the cursor to the last line and enter a y.
-
=================== Diskset Allocation =======================
relo-host1 relo-host2
c1t0d0, c1t0d1, c1t1d0, c1t1d1 c1t2d0, c1t2d1, c1t3d0, c2t0d0
c1t4d0, c1t4d1, c1t5d0, c2t2d0 c2t0d1, c2t0d2, c2t1d0, c2t1d1
c2t2d1, c2t2d2, c2t3d0, c2t3d1 c2t4d0, c2t4d1, c2t4d2, c2t5d0
c3t0d0, c3t0d1, c3t1d0, c3t1d1 c2t5d1, c2t5d2, c3t2d0, c3t2d1
c3t4d0, c3t5d0 c3t3d0, c3t4d1
Total number of disks: 18 Total number of disks: 18
======================= Edit Disksets =========================
Add to relo-host1:
Add to relo-host2:
Revert back to default diskset allocation [y]?
===============================================================
Is disk allocation editing complete [y|n]? y
|
- If you create a diskset that violates the configuration rules, hasetup will not allow the configuration to be saved. The following message will be displayed:
-
>> WARNING: disk configuration rules for one or both disksets violated! <<
Is disk allocation editing complete [y|n]?
|
- If you decide to ignore the message and use the diskset allocation that you entered, the following message will display:
-
==========================================================================
Each diskset must be balanced so that the number of disks
assigned to each set from any given controller is less than
half of the total number of disks assigned to that set.
This requirement is necessary in order to guarantee that a simple
majority of disks will always be present within a diskset if any
one controller fails.
The disk assignments for controller "<controller>"
in diskset "<diskset>" violated this requirement.
Please restart "hasetup" and try again.
==========================================================================
Exiting due to fatal error ...
|
-
-
Repartition and populate disks with metadevice state databases.
When editing is complete, you are asked whether you are ready to have hasetup repartition and populate the disks with metadevice state database replicas. On large configurations, repartitioning the disks can take awhile.
Caution - When disks are repartitioned, existing data will be destroyed. Also, repartitioning of the disks and creation of the replicas may take some time.
-
...
All multi-host disks will now be repartitioned and
populated with metadevice state database replicas.
Is this okay (yes/no)? y
Repartitioning all multi-host disks ... done
Creating diskset "relo-host1" ... done
Populating diskset "relo-host1" ... done
Releasing diskset "relo-host1" ... done
Creating diskset "relo-host2" ... done
Populating diskset "relo-host2" ... done
Releasing diskset "relo-host2" ... done
#
|
- If you respond with y, the disksets are automatically created and populated with metadevice state database replicas. If you respond with n, metadevice state database placement on multi-host disks and diskset creation are bypassed and hasetup configures the servers with only the data previously entered.
- When the metaset command is invoked by hasetup, slice 7 on every disk in the diskset is set up to contain only metadevice state database replicas. The remainder of the disk is partitioned as slice 0. It is important to keep in mind that when multi-host disks are mirrored, the metadevice state database replicas are not mirrored, only slice 0 is mirrored. Also, if you elected to have space allocated for UFS logging, a slice of the specified size will be created on slice 6.
- You may modify the disksets at any time after configuration using the metaset command.
|
|