Oracle11g_RAC_OELR5-U4_iSCSI(域名解析)两节点搭建

ClusterWare软件(Grid)   本地文件系统        本地磁盘
    voting disk(Grid)       ASM                 共享磁盘
    OCR(Grid)               ASM                 共享磁盘
    数据库软件              本地文件系统        本地磁盘
    数据库                  ASM                 共享磁盘




节点主机  主机公网IP       虚拟IP          私网IP(内部网络)
    rac1     192.168.10.101   192.168.10.11   100.100.0.101
    rac2     192.168.10.102   192.168.10.12   100.100.0.102

SCAN名称: rac-scan,  SCAN IP: 192.168.10.170  192.168.10.171


=======

RAC1

=======
设置DNS解析,修改2台虚拟机rac01,rac02上的/etc/hosts文件,添加以下内容:
#public
192.168.10.101 rac1.fedge.com rac1
192.168.10.102 rac2.fedge.com rac2
#vip
192.168.10.11   rac1-vip
192.168.10.12   rac2-vip
#private
100.100.0.101 rac1-priv
100.100.0.102 rac2-priv
#scan
192.168.10.170 scan.fedge.com  rac-scan
192.168.10.171 scan.fedge.com rac-scan
#dns
192.168.10.4  dns.fedge.com  dns12c
===========================================
#rac01,rac02上的/etc/resolv.conf,添加

search fedge.com
nameserver 192.168.10.4

cat >> /etc/sysconfig/network-scripts/ifcfg-eth0 <<EOF
DNS1=192.168.10.4
EOF

======================================
yum install binutils-2.* compat-libstdc++-33* elfutils-libelf-0.* elfutils-libelf-devel-* gcc-4.* gcc-c++-4.* glibc-2.* glibc-common-2.* glibc-devel-2.* glibc-headers-2.* ksh-2* libaio-0.* libaio-devel-0.* libgcc-4.* libstdc++-4.* libstdc++-devel-4.* make-3.* sysstat-7.* unixODBC-2.* unixODBC-devel-2.* pdksh*



rpm -q binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel gcc gcc-c++
rpm -q glibc glibc-common glibc-devel glibc-headers ksh libaio libaio-devel
rpm -q libgcc libstdc++ libstdc++-devel make numactl-devel sysstat unixODBC unixODBC-devel

mount /dev/cdrom /mnt/hgfs/
rpm -ivh /mnt/hgfs/Server/Packages/numactl-devel-2.0.7-6.el6.x86_64.rpm
rpm -ivh /mnt/hgfs/Server/Packages/compat-db42-4.2.52-15.el6.x86_64.rpm
rpm -ivh /mnt/hgfs/Server/Packages/compat-db43-4.3.29-15.el6.x86_64.rpm
rpm -ivh /mnt/hgfs/Server/Packages/compat-db-4.6.21-15.el6.x86_64.rpm
rpm -ivh /mnt/hgfs/Server/Packages/compat-libcap1-1.10-1.x86_64.rpm

vi /etc/security/limits.conf
oracle              soft    nproc   2047
oracle              hard    nproc   16384
oracle              soft    nofile  1024
oracle              hard    nofile  65536
oracle              soft    stack   10240
grid                soft    nproc   2047
grid                hard    nproc   16384
grid                soft    nofile  1024
grid                hard    nofile  65536
grid                soft    stack   10240


vi /etc/selinux/config
service iptables save
service iptables stop
/etc/rc.d/init.d/iptables status




#禁用 NTP  采用 CTSS
/sbin/service ntpd stop
chkconfig ntpd off
mv /etc/ntp.conf /etc/ntp.conf.original                       
rm /var/run/ntpd.pid       

rpm -ivh /mnt/hgfs/Server/Packages/iscsi-initiator-utils-*     

service iscsi start
service iscsid start
chkconfig iscsid on
chkconfig iscsi on
          
service iscsid start
chkconfig --list | grep iscsi
cat messages | grep iscsi

rpm -Uvh /mnt/hgfs/Server/Packages/iscsi-initiator-utils-*

iscsiadm -m discovery -t sendtargets -p 100.100.0.43

100.100.0.43:3260,1 iqn.2006-01.com.openfiler:racdb.fra1
100.100.0.43:3260,1 iqn.2006-01.com.openfiler:racdb.data1
100.100.0.43:3260,1 iqn.2006-01.com.openfiler:racdb.crs1

iscsiadm -m node -T iqn.2006-01.com.openfiler:racdb.crs1 -p 100.100.0.43 -l
iscsiadm -m node -T iqn.2006-01.com.openfiler:racdb.data1 -p 100.100.0.43 -l
iscsiadm -m node -T iqn.2006-01.com.openfiler:racdb.fra1 -p 100.100.0.43 -l
iscsiadm -m node -T iqn.2006-01.com.openfiler:racdb.crs1 -p 100.100.0.43 --op update -n node.startup -v automatic
iscsiadm -m node -T iqn.2006-01.com.openfiler:racdb.data1 -p 100.100.0.43 --op update -n node.startup -v automatic
iscsiadm -m node -T iqn.2006-01.com.openfiler:racdb.fra1 -p 100.100.0.43 --op update -n node.startup -v automatic



1. 得到磁盘的ID_SERIAL
(cd /dev/disk/by-path; ls -l *openfiler* | awk '{FS=" "; print $9 " " $10 " " $11}')
ip-100.100.0.43:3260-iscsi-iqn.2006-01.com.openfiler:racdb.crs1-lun-0 -> ../../sdd
ip-100.100.0.43:3260-iscsi-iqn.2006-01.com.openfiler:racdb.data1-lun-0 -> ../../sdc
ip-100.100.0.43:3260-iscsi-iqn.2006-01.com.openfiler:racdb.fra1-lun-0 -> ../../sde

2. 创建规则文件
udevadm info --query all --name=/dev/sdd
udevadm info --query all --name=/dev/sdc
udevadm info --query all --name=/dev/sde

显示:
DEVLINKS=/dev/block/8:48 /dev/disk/by-id/scsi-14f504e46494c45524f4452576c352d4d58386e2d4a7a6a53 /dev/disk/by-path/ip-100.100.0.43:3260-iscsi-iqn.2006-01.com.openfiler:racdb.crs1-lun-0
DEVLINKS=/dev/block/8:32 /dev/disk/by-id/scsi-14f504e46494c4552467248686c4c2d693570742d49314d6f /dev/disk/by-path/ip-100.100.0.43:3260-iscsi-iqn.2006-01.com.openfiler:racdb.data1-lun-0
DEVLINKS=/dev/block/8:64 /dev/disk/by-id/scsi-14f504e46494c455255476461584a2d734a31382d63724845 /dev/disk/by-path/ip-100.100.0.43:3260-iscsi-iqn.2006-01.com.openfiler:racdb.fra1-lun-0

touch /etc/udev/rules.d/99-asm-iscsi.rules
cat >>/etc/udev/rules.d/99-asm-iscsi.rules <<EOF
SUBSYSTEM=="block",KERNEL=="sd*",ENV{ID_SERIAL}=="14f504e46494c45524f4452576c352d4d58386e2d4a7a6a53", BUS=="scsi",SYMLINK+="iscsi/crs1/part"
SUBSYSTEM=="block",KERNEL=="sd*",ENV{ID_SERIAL}=="14f504e46494c4552467248686c4c2d693570742d49314d6f", BUS=="scsi",SYMLINK+="iscsi/data1/part"
SUBSYSTEM=="block",KERNEL=="sd*",ENV{ID_SERIAL}=="14f504e46494c455255476461584a2d734a31382d63724845", BUS=="scsi",SYMLINK+="iscsi/fra1/part"
EOF


3. 启动进程,使规则生效
udevadm trigger
start_udev

4.这样你就会在/dev/下看到
 # ls -l /dev/iscsi/*
/dev/iscsi/crs1:
总用量 0
lrwxrwxrwx 1 root root 10 10月 21 15:29 part -> ../../sdd1

/dev/iscsi/data1:
总用量 0
lrwxrwxrwx 1 root root 10 10月 21 15:29 part -> ../../sde1

/dev/iscsi/fra1:
总用量 0
lrwxrwxrwx 1 root root 10 10月 21 15:29 part -> ../../sdc1



service iscsi stop
service iscsi start

**********************************************************************************************0
su - root
userdel grid
groupadd -g 1200 asmadmin
groupadd -g 1201 asmdba
groupadd -g 1202 asmoper
useradd -m -u 1100 -g oinstall -G asmadmin,asmdba,asmoper -d /home/grid -s /bin/bash -c "Grid Infrastructure Owner" grid
chown -R grid:oinstall /home/grid
chown -R grid:asmadmin /dev/iscsi/*
mkdir -p /u01/app/grid
mkdir -p /u01/app/11.2.0/grid
mkdir -p /u01/app/oracle
chown -R grid:oinstall /u01
chown -R grid:oinstall /u01/app/grid
chmod -R 775 /u01/

id grid
------------------

su - grid
vi .bash_profile

# ---------------------------------------------------
# .bash_profile
# ---------------------------------------------------
# OS User:      grid
# Application:  Oracle Grid Infrastructure
# Version:      Oracle 11g release 2
# ---------------------------------------------------

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
      . ~/.bashrc
fi

alias ls="ls -FA"

ORACLE_SID=+ASM1; export ORACLE_SID

JAVA_HOME=/usr/local/java; export JAVA_HOME

ORACLE_BASE=/u01/app/grid; export ORACLE_BASE

ORACLE_HOME=/u01/app/11.2.0/grid; export ORACLE_HOME

ORACLE_PATH=/u01/app/oracle/common/oracle/sql; export ORACLE_PATH

ORACLE_TERM=xterm; export ORACLE_TERM

NLS_DATE_FORMAT="DD-MON-YYYY HH24:MI:SS"; export NLS_DATE_FORMAT

TNS_ADMIN=$ORACLE_HOME/network/admin; export TNS_ADMIN

ORA_NLS11=$ORACLE_HOME/nls/data; export ORA_NLS11

PATH=.:${JAVA_HOME}/bin:${PATH}:$HOME/bin:$ORACLE_HOME/bin
PATH=${PATH}:/usr/bin:/bin:/usr/bin/X11:/usr/local/bin
PATH=${PATH}:/u01/app/common/oracle/bin
export PATH

LD_LIBRARY_PATH=$ORACLE_HOME/lib
LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$ORACLE_HOME/oracm/lib
LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/lib:/usr/lib:/usr/local/lib
export LD_LIBRARY_PATH

CLASSPATH=$ORACLE_HOME/JRE
CLASSPATH=${CLASSPATH}:$ORACLE_HOME/jlib
CLASSPATH=${CLASSPATH}:$ORACLE_HOME/rdbms/jlib
CLASSPATH=${CLASSPATH}:$ORACLE_HOME/network/jlib
export CLASSPATH

THREADS_FLAG=native; export THREADS_FLAG

export TEMP=/tmp
export TMPDIR=/tmp

export LANG=en_US.UTF-8
umask 022
-------------------
su - root
groupadd -g 1301 oper
usermod -g oinstall -G dba,oper,asmdba -c "Oracle Software Owner" oracle
chown -R oracle:oinstall /u01/app/oracle
su - oracle
---------------
vi .bash_profile

# ---------------------------------------------------
# .bash_profile
# ---------------------------------------------------
# OS User:      oracle
# Application:  Oracle Database Software Owner
# Version:      Oracle 11g release 2
# ---------------------------------------------------

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
      . ~/.bashrc
fi

alias ls="ls -FA"

ORACLE_SID=racdb1; export ORACLE_SID

ORACLE_UNQNAME=racdb; export ORACLE_UNQNAME

JAVA_HOME=/usr/local/java; export JAVA_HOME

ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE

ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1; export ORACLE_HOME

ORACLE_PATH=/u01/app/common/oracle/sql; export ORACLE_PATH

ORACLE_TERM=xterm; export ORACLE_TERM

NLS_DATE_FORMAT="YYYY-MON-DD HH24:MI:SS"; export NLS_DATE_FORMAT

TNS_ADMIN=$ORACLE_HOME/network/admin; export TNS_ADMIN

ORA_NLS11=$ORACLE_HOME/nls/data; export ORA_NLS11

PATH=.:${JAVA_HOME}/bin:${PATH}:$HOME/bin:$ORACLE_HOME/bin
PATH=${PATH}:/usr/bin:/bin:/usr/bin/X11:/usr/local/bin
PATH=${PATH}:/u01/app/common/oracle/bin
export PATH

LD_LIBRARY_PATH=$ORACLE_HOME/lib
LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$ORACLE_HOME/oracm/lib
LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/lib:/usr/lib:/usr/local/lib
export LD_LIBRARY_PATH

CLASSPATH=$ORACLE_HOME/JRE
CLASSPATH=${CLASSPATH}:$ORACLE_HOME/jlib
CLASSPATH=${CLASSPATH}:$ORACLE_HOME/rdbms/jlib
CLASSPATH=${CLASSPATH}:$ORACLE_HOME/network/jlib
export CLASSPATH

THREADS_FLAG=native; export THREADS_FLAG

export TEMP=/tmp
export TMPDIR=/tmp


umask 022
----------------------
su - root

cat >>/etc/profile <<EOF
if [ \$USER = "oracle" ] || [ \$USER = "grid" ]; then
    if [ \$SHELL = "/bin/ksh" ]; then
        ulimit -p 16384
        ulimit -n 65536
    else
        ulimit -u 16384 -n 65536
    fi
    umask 022
fi
EOF
------------------------------
cat >> /etc/csh.login <<EOF
if ( \$USER == "oracle" || \$USER == "grid" ) then
    limit maxproc 16384
    limit descriptors 65536
endif
EOF
-----------------------
cat /proc/meminfo | grep MemTotal
cat /proc/meminfo | grep SwapTotal

dd if=/dev/zero of=tempswap bs=1k count=4000000
chmod 600 tempswap
mke2fs tempswap <<EOF
y
EOF

mkswap tempswap
swapon tempswap
*******************************************************************************************1
-------------------------
 cat /etc/sysctl.conf
-------------------------
rpm -qa --queryformat "%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n"| grep ssh
openssh-clients-5.3p1-84.1.el6 (x86_64)
libssh2-1.4.2-1.el6 (x86_64)
openssh-5.3p1-84.1.el6 (x86_64)
openssh-server-5.3p1-84.1.el6 (x86_64)
openssh-askpass-5.3p1-84.1.el6 (x86_64)
-------------------------------
#grid  oracle 各执行一次
su - grid
mkdir ~/.ssh
chmod 700 ~/.ssh
/usr/bin/ssh-keygen -t dsa
--------------------------------
#(替代方法)利用OUI 界面 cluster node -> setup 步骤安装
touch ~/.ssh/authorized_keys
ls -l ~/.ssh
ssh rac1 cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

ssh rac2 cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

ls -l ~/.ssh

scp ~/.ssh/authorized_keys rac2:.ssh/authorized_keys

chmod 600 ~/.ssh/authorized_keys
-------------------------------------
ssh rac1 "date;hostname"

ssh rac2 "date;hostname"
-------------------------
ssh rac1 hostname
ssh rac2 hostname
------------------------

rpm -ivh /media/soft/oracleasmlib-2.0.4-1.el6.x86_64.rpm
rpm -ivh /media/soft/oracleasm-support-2.1.8-1.el6.x86_64.rpm
----------------------
/usr/sbin/oracleasm configure -i <<EOF
grid
asmadmin
y
y
EOF
/usr/sbin/oracleasm init
------------------------
为了防止selinux阻止访问disk header
备份/etc/selinux/config
# cp /etc/selinux/config  /etc/selinux/config_bak

b)修改/etc/selinux/config
注释掉   SELINUX=enforcing
添加     SELINUX=disabled
vi /etc/selinux/config
# SELINUX=enforcing
  SELINUX=disabled
c)重启操作系统
# reboot

su - root
chown -R grid:asmadmin /dev/iscsi/*

dd if=/dev/zero of=/dev/iscsi/crs1/part bs=1024 count=100
dd if=/dev/zero of=/dev/iscsi/data1/part bs=1024 count=100
dd if=/dev/zero of=/dev/iscsi/fra1/part bs=1024 count=100

fdisk /dev/sdd
fdisk /dev/sdc
fdisk /dev/sde

oracleasm deletedisk CRSVOL1
oracleasm deletedisk DATAVOL1
oracleasm deletedisk FRAVOL1

/usr/sbin/oracleasm createdisk CRSVOL1 /dev/iscsi/crs1/part
/usr/sbin/oracleasm createdisk DATAVOL1 /dev/iscsi/data1/part
/usr/sbin/oracleasm createdisk FRAVOL1 /dev/iscsi/fra1/part


/usr/sbin/oracleasm scandisks
/usr/sbin/oracleasm listdisks


-------------------------
unzip grid  oracle soft
--------------------
su - root
cd /media/soft/gridsoft/grid/rpm/
CVUQDISK_GRP=oinstall; export CVUQDISK_GRP
rpm -ivh cvuqdisk-1.0.9-1.rpm

su - grid
cd /media/soft/gridsoft/grid/
./runcluvfy.sh stage -pre crsinst -n rac1,rac2 -fixup -verbose

su - grid
cd /media/soft/gridsoft/grid/
./runcluvfy.sh stage -pre crsinst -n rac1,rac2 -fixup -verbose


cluvfy.sh stage -pre crsinst -n rac1,rac2 -fixup -verbose

-------------------------
如果 已配置DNS服务器 则跳过这一步
-------------------------
mv /usr/bin/nslookup /usr/bin/nslookup.original

cat >> /usr/bin/nslookup <<EOF
#!/bin/bash

HOSTNAME=${1}

if [[ $HOSTNAME = "rac-scan" ]]; then
    echo "Server:          24.154.1.34"
    echo "Address:         24.154.1.34#53"
    echo "Non-authoritative answer:"
    echo "Name:    rac-scan"
    echo "Address:  192.168.10.170"
else
    /usr/bin/nslookup.original $HOSTNAME
fi
EOF

chmod 755 /usr/bin/nslookup
------------------------------
install grid cluster
*************************************************************
-----------------------------
su - grid
cd /media/soft/gridsoft/grid/
./runcluvfy.sh comp scan -verbose

cluvfy comp scan -verbose

Verifying scan

Checking Single Client Access Name (SCAN)...
  SCAN Name         Node          Running?      ListenerName  Port          Running?    
  ----------------  ------------  ------------  ------------  ------------  ------------
  rac-scan          rac1          true          LISTENER_SCAN1  1521          true        

Checking TCP connectivity to SCAN Listeners...
  Node          ListenerName              TCP connectivity?       
  ------------  ------------------------  ------------------------
  rac2          LISTENER_SCAN1            yes                     
TCP connectivity to SCAN Listeners exists on all cluster nodes

Checking name resolution setup for "rac-scan"...
  SCAN Name     IP Address                Status                    Comment   
  ------------  ------------------------  ------------------------  ----------
  rac-scan      192.168.10.170             passed                              

Verification of SCAN VIP and Listener setup passed

Verification of scan was successful.
-------------------------------------------
install oracle database
--------------------------------
su - oracle
mkdir ~/.ssh
chmod 700 ~/.ssh
/usr/bin/ssh-keygen -t dsa
--------------------------------
touch ~/.ssh/authorized_keys
ls -l ~/.ssh
ssh rac1 cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

ssh rac2 cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

ls -l ~/.ssh

scp ~/.ssh/authorized_keys rac2:.ssh/authorized_keys

chmod 600 ~/.ssh/authorized_keys
-------------------------------------
#机器的网络设备名称一样的话(忽略)
oifcfg setif -global eth4/100.100.0.0:cluster_interconnect
oifcfg setif -global eth5/192.168.10.0:public
oifcfg setif -global eth7/192.168.10.0:public
oifcfg setif -global eth6/100.100.0.0:cluster_interconnect
oifcfg delif -global */100.100.0.0
oifcfg delif -global */192.168.10.0

----------------
create rac database

su - grid -c "crsctl status resource -w \" TYPE co 'ora'\" -t"
crsctl check crs
crsctl status resource -t
crs_stat -t -v
-------------------
#stop rac
[oracle@rac1 ~]$ srvctl stop database -d racdb
[root@rac1 ~]# /u01/app/11.2.0/grid/bin/crsctl stop cluster

#start rac
[root@rac1 ~]# /u01/app/11.2.0/grid/bin/crsctl start cluster
[oracle@rac1 ~]$ srvctl start database -d racdb



srvctl start instance -d racdb -i racdb1
srvctl start instance -d racdb -i racdb2
-----------------
su - oracle

emctl start dbconsole


=======

RAC2

=======

yum install binutils-2.* compat-libstdc++-33* elfutils-libelf-0.* elfutils-libelf-devel-* gcc-4.* gcc-c++-4.* glibc-2.* glibc-common-2.* glibc-devel-2.* glibc-headers-2.* ksh-2* libaio-0.* libaio-devel-0.* libgcc-4.* libstdc++-4.* libstdc++-devel-4.* make-3.* sysstat-7.* unixODBC-2.* unixODBC-devel-2.* pdksh*


mount /dev/cdrom /mnt/hgfs/
rpm -ivh /mnt/hgfs/Server/Packages/numactl-devel-2.0.7-6.el6.x86_64.rpm
rpm -ivh /mnt/hgfs/Server/Packages/compat-db42-4.2.52-15.el6.x86_64.rpm
rpm -ivh /mnt/hgfs/Server/Packages/compat-db43-4.3.29-15.el6.x86_64.rpm
rpm -ivh /mnt/hgfs/Server/Packages/compat-db-4.6.21-15.el6.x86_64.rpm
rpm -ivh /mnt/hgfs/Server/Packages/compat-libcap1-1.10-1.x86_64.rpm

vi /etc/security/limits.conf
oracle              soft    nproc   2047
oracle              hard    nproc   16384
oracle              soft    nofile  1024
oracle              hard    nofile  65536
oracle              soft    stack   10240
grid                soft    nproc   2047
grid                hard    nproc   16384
grid                soft    nofile  1024
grid                hard    nofile  65536
grid                soft    stack   10240


mkdir -p /u01/app/grid
mkdir -p /u01/app/11.2.0/grid
mkdir -p /u01/app/oracle
chown -R root:dba /u01
chown -R oracle:oinstall /u01/app/oracle
chown -R grid:oinstall /u01/app/grid
chmod -R 775 /u01/



chkconfig ntpd off
mv /etc/ntp.conf /etc/ntp.conf.original
rm /var/run/ntpd.pid

rpm -ivh /mnt/hgfs/Server/Packages/iscsi-initiator-utils-*

iscsiadm -m discovery -t sendtargets -p openfiler

iscsiadm -m node -T iqn.2006-01.com.openfiler:racdb.crs1 -p 100.100.0.43 -l
iscsiadm -m node -T iqn.2006-01.com.openfiler:racdb.data1 -p 100.100.0.43 -l
iscsiadm -m node -T iqn.2006-01.com.openfiler:racdb.fra1 -p 100.100.0.43 -l

iscsiadm -m node -T iqn.2006-01.com.openfiler:racdb.crs1 -p 100.100.0.43 --op update -n node.startup -v automatic
iscsiadm -m node -T iqn.2006-01.com.openfiler:racdb.data1 -p 100.100.0.43 --op update -n node.startup -v automatic
iscsiadm -m node -T iqn.2006-01.com.openfiler:racdb.fra1 -p 100.100.0.43 --op update -n node.startup -v automatic


(cd /dev/disk/by-path; ls -l *openfiler* | awk '{FS=" "; print $9 " " $10 " " $11}')


1. 得到磁盘的ID_SERIAL
(cd /dev/disk/by-path; ls -l *openfiler* | awk '{FS=" "; print $9 " " $10 " " $11}')
ip-100.100.0.43:3260-iscsi-iqn.2006-01.com.openfiler:racdb.crs1-lun-0 -> ../../sdd
ip-100.100.0.43:3260-iscsi-iqn.2006-01.com.openfiler:racdb.data1-lun-0 -> ../../sdc
ip-100.100.0.43:3260-iscsi-iqn.2006-01.com.openfiler:racdb.fra1-lun-0 -> ../../sde

2. 创建规则文件
udevadm info --query all --name=/dev/sdd
udevadm info --query all --name=/dev/sdc
udevadm info --query all --name=/dev/sde

DEVLINKS=/dev/block/8:48 /dev/disk/by-id/scsi-14f504e46494c45524f4452576c352d4d58386e2d4a7a6a53 /dev/disk/by-path/ip-100.100.0.43:3260-iscsi-iqn.2006-01.com.openfiler:racdb.crs1-lun-0
DEVLINKS=/dev/block/8:32 /dev/disk/by-id/scsi-14f504e46494c4552467248686c4c2d693570742d49314d6f /dev/disk/by-path/ip-100.100.0.43:3260-iscsi-iqn.2006-01.com.openfiler:racdb.data1-lun-0
DEVLINKS=/dev/block/8:64 /dev/disk/by-id/scsi-14f504e46494c455255476461584a2d734a31382d63724845 /dev/disk/by-path/ip-100.100.0.43:3260-iscsi-iqn.2006-01.com.openfiler:racdb.fra1-lun-0

#vi /etc/udev/rules.d/99-asm-iscsi.rules
SUBSYSTEM=="block",KERNEL=="sd*",ENV{ID_SERIAL}=="14f504e46494c45524f4452576c352d4d58386e2d4a7a6a53", BUS=="scsi",SYMLINK+="iscsi/crs1/part"
SUBSYSTEM=="block",KERNEL=="sd*",ENV{ID_SERIAL}=="14f504e46494c4552467248686c4c2d693570742d49314d6f", BUS=="scsi",SYMLINK+="iscsi/data1/part"
SUBSYSTEM=="block",KERNEL=="sd*",ENV{ID_SERIAL}=="14f504e46494c455255476461584a2d734a31382d63724845", BUS=="scsi",SYMLINK+="iscsi/fra1/part"

3. 启动进程,使规则生效
udevadm trigger
start_udev

4.这样你就会在/dev/下看到
 # ls -l /dev/iscsi/*
/dev/iscsi/crs1:
total 0
lrwxrwxrwx. 1 root root 9 Mar  3 17:28 part -> ../../sdd

/dev/iscsi/data1:
total 0
lrwxrwxrwx. 1 root root 9 Mar  3 17:28 part -> ../../sdc

/dev/iscsi/fra1:
total 0
lrwxrwxrwx. 1 root root 9 Mar  3 17:28 part -> ../../sde


 #service iscsi stop
 #service iscsi start

userdel grid
groupadd -g 1200 asmadmin
groupadd -g 1201 asmdba
groupadd -g 1202 asmoper
useradd -m -u 1100 -g oinstall -G asmadmin,asmdba,asmoper -d /home/grid -s /bin/bash -c "Grid Infrastructure Owner" grid
chown -R grid:oinstall /home/grid

id grid

su - grid
gedit .bash_profile

# ---------------------------------------------------
# .bash_profile
# ---------------------------------------------------
# OS User:      grid
# Application:  Oracle Grid Infrastructure
# Version:      Oracle 11g release 2
# ---------------------------------------------------

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
      . ~/.bashrc
fi

alias ls="ls -FA"

ORACLE_SID=+ASM1; export ORACLE_SID

JAVA_HOME=/usr/local/java; export JAVA_HOME

ORACLE_BASE=/u01/app/grid; export ORACLE_BASE

ORACLE_HOME=/u01/app/11.2.0/grid; export ORACLE_HOME

ORACLE_PATH=/u01/app/oracle/common/oracle/sql; export ORACLE_PATH

ORACLE_TERM=xterm; export ORACLE_TERM

NLS_DATE_FORMAT="DD-MON-YYYY HH24:MI:SS"; export NLS_DATE_FORMAT

TNS_ADMIN=$ORACLE_HOME/network/admin; export TNS_ADMIN

ORA_NLS11=$ORACLE_HOME/nls/data; export ORA_NLS11

PATH=.:${JAVA_HOME}/bin:${PATH}:$HOME/bin:$ORACLE_HOME/bin
PATH=${PATH}:/usr/bin:/bin:/usr/bin/X11:/usr/local/bin
PATH=${PATH}:/u01/app/common/oracle/bin
export PATH

LD_LIBRARY_PATH=$ORACLE_HOME/lib
LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$ORACLE_HOME/oracm/lib
LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/lib:/usr/lib:/usr/local/lib
export LD_LIBRARY_PATH

CLASSPATH=$ORACLE_HOME/JRE
CLASSPATH=${CLASSPATH}:$ORACLE_HOME/jlib
CLASSPATH=${CLASSPATH}:$ORACLE_HOME/rdbms/jlib
CLASSPATH=${CLASSPATH}:$ORACLE_HOME/network/jlib
export CLASSPATH

THREADS_FLAG=native; export THREADS_FLAG

export TEMP=/tmp
export TMPDIR=/tmp

export LANG=en_US.UTF-8
umask 022
-------------------
groupadd -g 1301 oper
usermod -g oinstall -G dba,oper,asmdba -c "Oracle Software Owner" oracle
su - oracle
--------------
gedit .bash_profile

# ---------------------------------------------------
# .bash_profile
# ---------------------------------------------------
# OS User:      oracle
# Application:  Oracle Database Software Owner
# Version:      Oracle 11g release 2
# ---------------------------------------------------

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
      . ~/.bashrc
fi

alias ls="ls -FA"

ORACLE_SID=racdb1; export ORACLE_SID

ORACLE_UNQNAME=racdb; export ORACLE_UNQNAME

JAVA_HOME=/usr/local/java; export JAVA_HOME

ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE

ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1; export ORACLE_HOME

ORACLE_PATH=/u01/app/common/oracle/sql; export ORACLE_PATH

ORACLE_TERM=xterm; export ORACLE_TERM

NLS_DATE_FORMAT="DD-MON-YYYY HH24:MI:SS"; export NLS_DATE_FORMAT

TNS_ADMIN=$ORACLE_HOME/network/admin; export TNS_ADMIN

ORA_NLS11=$ORACLE_HOME/nls/data; export ORA_NLS11

PATH=.:${JAVA_HOME}/bin:${PATH}:$HOME/bin:$ORACLE_HOME/bin
PATH=${PATH}:/usr/bin:/bin:/usr/bin/X11:/usr/local/bin
PATH=${PATH}:/u01/app/common/oracle/bin
export PATH

LD_LIBRARY_PATH=$ORACLE_HOME/lib
LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$ORACLE_HOME/oracm/lib
LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/lib:/usr/lib:/usr/local/lib
export LD_LIBRARY_PATH

CLASSPATH=$ORACLE_HOME/JRE
CLASSPATH=${CLASSPATH}:$ORACLE_HOME/jlib
CLASSPATH=${CLASSPATH}:$ORACLE_HOME/rdbms/jlib
CLASSPATH=${CLASSPATH}:$ORACLE_HOME/network/jlib
export CLASSPATH

THREADS_FLAG=native; export THREADS_FLAG

export TEMP=/tmp
export TMPDIR=/tmp

export LANG=en_US.UTF-8

umask 022
----------------------
su - root
mkdir -p /u01/app/grid
mkdir -p /u01/app/11.2.0/grid
chown -R grid:oinstall /u01
mkdir -p /u01/app/oracle
chown oracle:oinstall /u01/app/oracle
chmod -R 775 /u01
---------------------
vi /etc/profile
if [ \$USER = "oracle" ] || [ \$USER = "grid" ]; then
    if [ \$SHELL = "/bin/ksh" ]; then
        ulimit -p 16384
        ulimit -n 65536
    else
        ulimit -u 16384 -n 65536
    fi
    umask 022
fi
EOF
------------------------------
cat >> /etc/csh.login <<EOF
if ( \$USER == "oracle" || \$USER == "grid" ) then
    limit maxproc 16384
    limit descriptors 65536
endif
EOF
---------------------------
cat /proc/meminfo | grep MemTotal
cat /proc/meminfo | grep SwapTotal

dd if=/dev/zero of=tempswap bs=1k count=4000000
chmod 600 tempswap

mke2fs tempswap

mkswap tempswap

swapon tempswap
********************************************************************************1
-----------------------------------
 cat /etc/sysctl.conf
--------------------
rpm -qa --queryformat "%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n"| grep ssh
-------------------------
su - grid
mkdir ~/.ssh
chmod 700 ~/.ssh
/usr/bin/ssh-keygen -t dsa
-------------------------
ssh rac1 "date;hostname"

ssh rac2 "date;hostname"
*************************************************************
---------------------------
rpm -ivh /media/soft/oracleasmlib-2.0.4-1.el6.x86_64.rpm
----------------------

/usr/sbin/oracleasm configure -i
grid
asmadmin
y
y
/usr/sbin/oracleasm init
------------------------
为了防止selinux阻止访问disk header
备份/etc/selinux/config
# cp /etc/selinux/config  /etc/selinux/config_bak

b)修改/etc/selinux/config
注释掉   SELINUX=enforcing
添加     SELINUX=disabled
# vi /etc/selinux/config
# SELINUX=enforcing
  SELINUX=disabled
c)重启操作系统
# reboot

su - root
chown -R grid:asmadmin /dev/iscsi/*

/usr/sbin/oracleasm scandisks
/usr/sbin/oracleasm listdisks
-------------------------
CVUQDISK_GRP=oinstall; export CVUQDISK_GRP
rpm -ivh cvuqdisk-1.0.9-1.rpm

vi /etc/sysconfig/ntpd
# Drop root to id 'ntp:ntp' by default.
OPTIONS="-x -u ntp:ntp -p /var/run/ntpd.pid"
# Set to 'yes' to sync hw clock after successful ntpdate
SYNC_HWCLOCK=no
# Additional options for ntpdate
NTPDATE_OPTIONS=""

*********************************************************************
-----------------------------------
mv /usr/bin/nslookup /usr/bin/nslookup.original

cat >> /usr/bin/nslookup <<EOF
#!/bin/bash

HOSTNAME=${1}

if [[ $HOSTNAME = "rac-scan" ]]; then
    echo "Server:          24.154.1.34"
    echo "Address:         24.154.1.34#53"
    echo "Non-authoritative answer:"
    echo "Name:    rac-scan"
    echo "Address:  192.168.0.170"
else
    /usr/bin/nslookup.original $HOSTNAME
fi
EOF

chmod 755 /usr/bin/nslookup

su - grid
cd /media/soft/gridsoft/grid/
./runcluvfy.sh comp scan -verbose
-------------------------------------------


[grid@rac1 ~]$ crsctl stop crs
CRS-4563: Insufficient user privileges.

CRS-4000: Command Stop failed, or completed with errors.

dd if=/var/tmp/.oracle/npohasd of=/dev/null bs=1024 count=1

---------------------------
[root@rac2 ~]# su - oracle
[oracle@rac2 ~]$ emctl status dbconsole
Oracle Enterprise Manager 11g Database Control Release 11.2.0.3.0
Copyright (c) 1996, 2011 Oracle Corporation.  All rights reserved.
https://rac1:1158/em/console/aboutApplication
EM Daemon is not running.
------------------------------------------------------------------
Logs are generated in directory /u01/app/oracle/product/11.2.0/dbhome_1/rac2_racdb/sysman/log
[oracle@rac2 ~]$ emctl start dbconsole
Oracle Enterprise Manager 11g Database Control Release 11.2.0.3.0
Copyright (c) 1996, 2011 Oracle Corporation.  All rights reserved.
https://rac1:1158/em/console/aboutApplication
Starting Oracle Enterprise Manager 11g Database Control ....... started.
------------------------------------------------------------------
Logs are generated in directory /u01/app/oracle/product/11.2.0/dbhome_1/rac2_racdb/sysman/log

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值