Setup Oracle based on ASM inside Solaris Zones.

本文介绍如何在Solaris Zone环境下配置Oracle Real Application Clusters (RAC),包括设置Zone参数、安装配置软件、配置ASM实例及管理磁盘组等步骤。

1. Configure LZ zone1, here we use a lofs to map /oracle in LZ to /oracle in GZ, where locates the oracle binary data, we add a device to LZ, which match the /dev/vx/rdsk/oracle_dg/oracle_vol in GZ. We must set the limitpriv with proc_priocntl&proc_lock_memory or the ocssd.bin deamon will never startup in oracle11g, it will drop errors:

 

[root@vcsv245a /]#>more /oracle/product/11.1.0/db_1/log/zone1/cssd/cssdOUT.log

sched_set: unable to escalate (10/-1/1)

[root@zone1 cssd]#>dmesg

Jul 28 10:43:25 zone1 root: [ID 702911 user.error] Oracle Cluster Synchronization Service starting by user request.
Jul 28 10:43:26 zone1 root: [ID 702911 user.error] Cluster Ready Services completed waiting on dependencies.
Jul 28 10:43:33 zone1 last message repeated 9 times
Jul 28 10:54:51 zone1 root: [ID 702911 user.error] Cluster Ready Services completed waiting on dependencies.

 

[root@vcsv245a /]#>zonecfg -z zone1
zone1: No such zone configured
Use 'create' to begin configuring a new zone.
zonecfg:zone1> create
zonecfg:zone1> set zonepath=/zone/zone1

zonecfg:zone1> set autoboot=false
zonecfg:zone1> set limitpriv=default,dtrace_proc,dtrace_user,proc_priocntl,proc_lock_memory

zonecfg:zone1> add fs
zonecfg:zone1:fs> set dir=/oracle
zonecfg:zone1:fs> set special=/oracle
zonecfg:zone1:fs> set type=lofs
zonecfg:zone1:fs> end
zonecfg:zone1> add net
zonecfg:zone1:net> set address=10.200.117.214
zonecfg:zone1:net> set physical=bge0
zonecfg:zone1:net> set defrouter=10.200.117.1
zonecfg:zone1:net> end
zonecfg:zone1> add device
zonecfg:zone1:device> set match=/dev/vx/rdsk/oracle_dg/oracle_vol
zonecfg:zone1:device> end
zonecfg:zone1> verify
zonecfg:zone1> commit
zonecfg:zone1> exit

[root@vcsv245a /]#>vxedit -g oracle_dg set group=oinstall user=oracle mode=660 oracle_vol

[root@vcsv245a /]#>vxdg import oracle_dg
[root@vcsv245a /]#>vxvol -g oracle_dg startall

 

2. install and configure LZ

[root@vcsv245a /]#>zoneadm -z zone1 install

[root@vcsv245a /]#>zlogin -C zone1

Add oracle user and group just as the same as the ones in GZ.

bash-3.00# groupadd -g 800 oinstall

bash-3.00# groupadd -g 801 dba
bash-3.00# useradd -u 880 -g oinstall -G dba -d /export/home/oracle -s /usr/bin/bash -m oracle

bash-3.00# passwd oracle

bash-3.00# chown -R oracle:oinstall /dev/vx/rdsk/oracle_dg/oracle_vol

 

3. configure asm in LZ.

[root@zone1 /]#> /oracle/product/11.1.0/db_1/bin/localconfig add

 

4. It's better for us to use dbca to configure ASM and create database.

also we can use the following steps to configure ASM,

create a tmp pfile looks like this, we should make all required directories before we configure ASM.

 

        +ASM.asm_diskgroups='ASMDG'#Manual Mount
        *.asm_diskgroups='ASMDG'
        *.asm_diskstring='/dev/raw/raw*'
        *.background_dump_dest='/oracle/admin/+ASM/bdump'
        *.core_dump_dest='/oracle/admin/+ASM/cdump'
        *.instance_type='asm'
        *.large_pool_size=12M
        *.remote_login_passwordfile='SHARED'
        *.user_dump_dest='/oracle/admin/+ASM/udump'

su - oracle

export ORACLE_SID=+ASM

sqlplus / as sysdba

- creat spfile using the pfile

SQL> CREATE SPFILE FROM PFILE='/tmp/init+ASM.ora';
- start the instance with the NOMOUNT option
SQL> startup nomount
- To verify the status of the diskgroups
SQL> select * from v$asm_diskgroup;
- To Mount the diskgroups
SQL> alter diskgroup <diskgroupname> mount;
- To dismount the diskgroups
SQL> alter diskgroup <diskgroupname> dismount;
- To shutdown the ASM instance
SQL> shutdown immediate;

 

Now we can use database in zone environment.

 

btw: add/remove more devices into/from zone

zonecfg:zone1> remove device match=/dev/rdsk/c2t5006016030232106d0s2
zonecfg:zone1> add device
zonecfg:zone1:device> set match=/dev/rdsk/c2t5006016030232106d5s4
zonecfg:zone1:device> end
zonecfg:zone1> info
zonename: zone1
zonepath: /zone/zone1
brand: native
autoboot: false
bootargs:
pool:
limitpriv: default,dtrace_proc,dtrace_user,proc_priocntl,proc_lock_memory
scheduling-class:
ip-type: shared
inherit-pkg-dir:
        dir: /lib
inherit-pkg-dir:
        dir: /platform
inherit-pkg-dir:
        dir: /sbin
inherit-pkg-dir:
        dir: /usr
fs:
        dir: /oracle
        special: /oracle
        raw not specified
        type: lofs
        options: []
net:
        address: 10.200.117.214
        physical: bge0
        defrouter: 10.200.117.1
device
        match: /dev/vx/rdsk/oracle_dg/oracle_vol
device
        match: /dev/rdsk/c2t5006016030232106d5s4
device
        match: /dev/rdsk/c2t5006016030232106d4s4
device
        match: /dev/rdsk/c2t5006016030232106d0s4
device
        match: /dev/rdsk/c2t5006016030232106d1s4

 

$cat grid.rsp oracle.install.responseFileVersion=/oracle/install/rspfmt_crsinstall_response_schema_v19.0.0 INVENTORY_LOCATION=/grid/app/oraInventory oracle.install.option=CRS_CONFIG ORACLE_BASE=/grid/app/grid oracle.install.asm.OSDBA=asmdba oracle.install.asm.OSOPER=asmoper oracle.install.asm.OSASM=asmadmin oracle.install.crs.config.scanType=LOCAL_SCAN oracle.install.crs.config.SCANClientDataFile= oracle.install.crs.config.gpnp.scanName=master-scan oracle.install.crs.config.gpnp.scanPort=1521 oracle.install.crs.config.ClusterConfiguration=STANDALONE oracle.install.crs.config.configureAsExtendedCluster=false oracle.install.crs.config.memberClusterManifestFile= oracle.install.crs.config.clusterName=dbpool-cluster oracle.install.crs.config.gpnp.configureGNS=false oracle.install.crs.config.autoConfigureClusterNodeVIP=false oracle.install.crs.config.gpnp.gnsOption= oracle.install.crs.config.gpnp.gnsClientDataFile= oracle.install.crs.config.gpnp.gnsSubDomain= oracle.install.crs.config.gpnp.gnsVIPAddress= oracle.install.crs.config.sites= oracle.install.crs.config.clusterNodes=master,node oracle.install.crs.config.networkInterfaceList=bond0:10.10.156.0:1 oracle.install.crs.configureGIMR=false oracle.install.asm.configureGIMRDataDG=false oracle.install.crs.config.storageOption=FLEX_ASM_STORAGE oracle.install.crs.config.sharedFileSystemStorage.votingDiskLocations= oracle.install.crs.config.sharedFileSystemStorage.ocrLocations= oracle.install.crs.config.useIPMI=false oracle.install.crs.config.ipmi.bmcUsername= oracle.install.crs.config.ipmi.bmcPassword= oracle.install.asm.SYSASMPassword=oracle oracle.install.asm.diskGroup.name=OCRDG oracle.install.asm.diskGroup.redundancy=NORMAL oracle.install.asm.diskGroup.AUSize=4 oracle.install.asm.diskGroup.FailureGroups= oracle.install.asm.diskGroup.disksWithFailureGroupNames=/dev/asm-diskb,,/dev/asm-diskc,,/dev/asm-diskd, oracle.install.asm.diskGroup.disks=/dev/asm-diskb,/dev/asm-diskc,/dev/asm-diskd oracle.install.asm.diskGroup.quorumFailureGroupNames= oracle.install.asm.diskGroup.diskDiscoveryString=/dev/asm* oracle.install.asm.monitorPassword=oracle oracle.install.asm.gimrDG.name= oracle.install.asm.gimrDG.redundancy= oracle.install.asm.gimrDG.AUSize= oracle.install.asm.gimrDG.FailureGroups= oracle.install.asm.gimrDG.disksWithFailureGroupNames= oracle.install.asm.gimrDG.disks= oracle.install.asm.gimrDG.quorumFailureGroupNames= oracle.install.asm.configureAFD=false oracle.install.crs.configureRHPS=false oracle.install.crs.config.ignoreDownNodes=false oracle.install.config.managementOption=NONE oracle.install.config.omsHost= oracle.install.config.omsPort=0 oracle.install.config.emAdminUser= oracle.install.config.emAdminPassword= oracle.install.crs.rootconfig.executeRootScript=false oracle.install.crs.rootconfig.configMethod= oracle.install.crs.rootconfig.sudoPath= oracle.install.crs.rootconfig.sudoUserName= oracle.install.crs.config.batchinfo= oracle.install.crs.app.applicationAddress= oracle.install.crs.deleteNode.nodes= 有无书写错误或者顺序错误?
最新发布
09-21
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值