Quantcast
Channel: Oracle Bloggers
Viewing all articles
Browse latest Browse all 19780

Zone Creation on T5-8 SuperCluster

$
0
0

My customer had 140 application zones to create on his T5-8 SuperCluster. We did the first 2 by hand, it took about 1 hour per zone. We decided that we needed to automate the process. In short we needed a script.

We decided on a table driven approach. We came up with the following design:

The script creates a zone with an iscsi lun for root.
The zone may have a vnet IPMP device for the management port. This is optional.
The zone has a anet on top of the APP domains 10gig interface(sc_ipmp0) or it will build one if the 10GIG is IPMP.
The zone has an IB partition on the storage network.
It can create vnets on the primary and io domain for use as the mgmt port.

It assumes the supercluster binaries are in the default location.
export PATH=${PATH}:/opt/oracle.supercluster/bin

There are two tables.

/opt/LDOM_TABLE

A space delimited with
"ldom hostname"
"ldom mgmt port name"
"primary ldom mgmt name"
"zfs storage mgmt port name"
"machine type" fields.

For example:
etc6cn03:less LDOM_TABLE
"ldom hostname""ldom mgmt name""primary mgmt name""zfs sa mgmt name""type"
etc6cn01-app2 etc6cn03-app1-mgmt etc6cn01 etc6-sn1 T4
etc6cn01 etc6cn01 etc6cn01 etc6-sn1 T4
etc6cn02 etc6cn02 etc6cn02 etc6-sn1 T4

/opt/ZONE_INFO

A space delimited with
zonename
10_gig_name
10_gig_ip
10_gig_netmask (for example 22 or 24)
mgmt_name
mgmt_ip
mgmt_netmask
storage_name
storage_ip
storage_netmask
size_LUN_GB (size of rpool)
10_gig_interface
default_router
MASTER_ZONE (NONE if not cloning)
OS_type (sol10 or sol11)

etc6cn03:less ZONE_INFO
zonename 10_gig_name 10_gig_ip 10_gig_netmask mgmt_name mgmt_ip mgmt_netrmask storage_name storage_ip storage_netmask size_LUN_GB 10_gig_interface OS_type default_router MASTER_ZONE
etc6bpsez01 etc6bpsez01 10.129.184.88 24 etc6bpsez01-mgmt 10.129.183.80 24 etc6bpsez01-stor 192.168.30.27 22 100G sc_ipmp0 10.129.184.1 NONE sol11
etc6bpsez02 etc6bpsez02 10.129.184.93 24 etc6bpsez02-mgmt 10.129.183.81 24 etc6bpsez02-stor 192.168.30.28 22 100G bondeth0 10.129.184.1 NONE sol11
etc6bpsez03 etc6bpsez03 10.129.184.125 24 etc6bpsez03-mgmt 10.129.183.82 24 etc6bpsez03-stor 192.168.30.29 22 100G bondeth0 10.129.184.1 NONE sol11

Here is how we create the iscsi LUN:

LUN=$(iscsi-lun.sh create -z ${STORAGE_IP} -i ${ADMIN} -f ${STORAGE_INTERFACE} -n 1 -N 1 -s "SIZE_from_ZONE_INFO" -l 32K)

We name our storage IB partitions a certain way and assume standard naming.

NET1=$(dladm show-link | grep stor_ipmp0_0 | nawk '{print $5}')
NET2=$(dladm show-link | grep stor_ipmp0_1 | nawk '{print $5}')
if [ "${NET1}" == "" ] ; then
NET1=$(dladm show-link | grep ipmpapp0_0 | nawk '{print $5}')
NET2=$(dladm show-link | grep ipmpapp0_1 | nawk '{print $5}')
fi
NETNAME=$(print $ZONENAME | sed -e 's/-//')
NNAME1=$(print $NET1 | sed -e 's/net/n/')
NNAME2=$(print $NET2 | sed -e 's/net/n/')
if NNAME1 is NULL we use N1.
if NNAME2 is NULL we use N2.
dladm create-part -l ${NET1} -P 8503 ${NNAME1}_${NETNAME}_storib0
dladm create-part -l ${NET2} -P 8503 ${NNAME2}_${NETNAME}_storib0

We put our zone roots in /zones.
We assume the zone uses the same netmask and dns as the server.

We create a profile using /usr/sbin/sysconfig create-profile -o /opt/global.xml.

We edit /opt/global.xml and change the hostname to NODENAME. Then for each zone we can use sed to replace NODENAME with the actual zonename.

For a detailed discussion, please see MOS note 1916639.1.

Get Zone Creation Here


Viewing all articles
Browse latest Browse all 19780

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>