如何一步步搭建Exadata虚拟机——DB节点

原文链接: http://www.dbaleet.org/how_to_build_an_exadata_simulator_step_by_step_2_build_a_db_node

上一篇文章介绍了如何搭建一台Exadata Cell节点(存储节点)的虚拟机,本篇则继续介绍如何搭建一台DB节点(计算节点)的虚拟机。

总的来说, 搭建DB节点虚拟机的难度比搭建Cell节点虚拟机的难度要小很多,因为绝大多数过程都与在Linux下安装Oracle Clusterware/Database 11gR2的步骤一样,所以我这里不会特别详细的介绍如何搭建一套标准的11gR2的oracle环境。对11gR2 Clusterware/Database安装不熟悉的同学建议观看ML同学的视频教程:Maclean教你一步一步使用Vbox在Linux 5上安装Oracle 11gR2 RAC

值得一提的是这里DB节点并不是仅局限于使用RAC。 例如我这里就使用 Grid Infrastructure for a Standalone Server的方法(主要原因是我的机器太烂 )此链接提供了一个简单的安装文档可做参考。OK, Let get started.

首先需要安装一个Linux虚拟机,建议内存为1.5G以上,操作系统还是使用Oracle Linux 5.7。

 

安装的时候手工配置使用静态ip地址分配:我的网络配置如下:

 

 

[root@db ~]# cat /etc/hosts
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1               db localhost.localdomain localhost
::1             localhost6.localdomain6 localhost6
[root@db ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0 
# Intel Corporation 82540EM Gigabit Ethernet Controller
DEVICE=eth0
BOOTPROTO=none
BROADCAST=192.168.56.255
HWADDR=08:00:27:36:02:2B
IPADDR=192.168.56.102
NETMASK=255.255.255.0
NETWORK=192.168.56.0
ONBOOT=yes
GATEWAY=192.168.56.1
TYPE=Ethernet
USERCTL=no
IPV6INIT=no
PEERDNS=yes

在安装Linux的时候注意选择开发的安装包。没有选择没关系,可以通过配置yum安装oracle-validated。

安装完毕以后,mount Oracle Linux 5.7的iso文件作为yum源,我的做法如下:

[root@db media]# mount
/dev/mapper/VolGroup00-LogVol00 on / type ext3 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
/dev/sda1 on /boot type ext3 (rw)
tmpfs on /dev/shm type tmpfs (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)
/dev/sr0 on /media/OL5.7 x86_64 dvd 20110728 type iso9660 (ro,nosuid,nodev,uid=0)
[root@db media]# umount /media/OL5.7\ x86_64\ dvd\ 20110728/
[root@db media]# mkdir /media/iso
[root@db media]# mount /dev/sr0 /media/iso
mount: block device /dev/sr0 is write-protected, mounting read-only
[root@db ~]# vi  /etc/yum.repos.d/ol5.repo
[root@db ~]# cat /etc/yum.repos.d/ol5.repo 
[OL5]
name=OL 5
enabled=1
gpgcheck=0
baseurl=file:///media/iso/Server/

然后执行yum -y install oracle-validated就安装了所有Oracle需要的rpm包并且默认创建好了所有的用户组和用户。

安装完成以后建议关闭一些不需要的服务以节省系统的资源:

chkconfig --level 2345 auditd off && service auditd stop 
chkconfig --level 2345 autofs off && service autofs stop 
chkconfig --level 2345 avahi-daemon off && service avahi-daemon stop
chkconfig --level 2345 bluetooth off && service bluetooth stop
chkconfig --level 2345 cups off && service cups stop 
chkconfig --level 2345 ip6tables off && service ip6tables stop 
chkconfig --level 2345 iptables off && service iptables stop 
chkconfig --level 2345 isdn off && service isdn stop 
chkconfig --level 2345 kudzu off && service kudzu stop
chkconfig --level 2345 mcstrans off && service auditd stop
chkconfig --level 2345 netfs off && service netfs stop
chkconfig --level 2345 pcscd off && service pcscd stop 
chkconfig --level 2345 restorecond off && service restorecond stop
chkconfig --level 2345 rhnsd off && service rhnsd stop 
chkconfig --level 2345 sendmail off && service sendmail stop
chkconfig --level 2345 setroubleshoot off && service settroubleshoot stop
chkconfig --level 2345 smartd off && service smartd stop
chkconfig --level 2345 xinetd off && service xinetd stop
chkconfig --level 2345 yum-updatesd off && service yum-updatesd stop

同时建议关闭SELinux:

在/etc/selinux/config中将SELINUX=enabled修改为SELINUX=disabled,然后

echo 0 >/selinux/enforce就关闭了SELinux。

在开始安装Clusterware之前需要创建两个Exadata所需的配置文件。Exadata所需要的配置文件有两个一个是cellinit.ora,此文件中填入DB节点的ip地址和子网掩码。另外一个是cellip.ora, 此文件填入Cell节点的ip地址,我本机的配置如下所示:

[root@db ~]# mkdir -p    /etc/oracle/cell/network-config
[root@db ~]# chown -R grid:oinstall  /etc/oracle/cell/network-config
[root@db ~]# chmod -R 775 /etc/oracle/cell/network-config
[root@db ~]# vi /etc/oracle/cell/network-config/cellinit.ora 
[root@db ~]# cat /etc/oracle/cell/network-config/cellinit.ora 
ipaddress1=192.168.56.102/24
[root@db ~]# vi /etc/oracle/cell/network-config/cellip.ora 
[root@db ~]# cat /etc/oracle/cell/network-config/cellip.ora 
cell="192.168.56.101"

然后就可以开始安装Oracle Grid Infrastructure了。

如果前面的配置正确,在配置ASM一步就能看到Cell的Griddisk了。

 

这些以o/开头的ASM磁盘就是Exadata Cell端创建的griddisk。当然在安装的时候可以选择普通的裸盘(raw disk)而非griddisk作为磁盘组,到Grid Infrastructure安装完毕以后通过asmca来添加/新建新的磁盘组。

 

 

创建完成以后如图所示:

 

如果没有找到griddisk,也可以尝试手工修改ASM_DISKSTRING到”o/cell的ip地址/*”。例如:我的ASM_DISKSTRING为: “o/192.168.56.101/data*”

创建完成以后可以通过SQLPLUS和asmcmd来查看其属性:

[grid@db bin]$ export ORACLE_HOME=/u01/app/grid/product/11.2.0/grid
[grid@db bin]$ export ORACLE_SID=+ASM
[grid@db bin]$ ./sqlplus

SQL> select disk_number, name, failgroup, path, header_status from v$asm_disk where path like 'o/%' order by disk_number;

DISK_NUMBER NAME                           FAILGROUP                      PATH                                     HEADER_STATUS
----------- ------------------------------ ------------------------------ ---------------------------------------- ----------
          0 DATA_CD_DISK01_CELL1           DATA_CD_DISK01_CELL1           o/192.168.56.101/data_CD_disk01_cell1    MEMBER
          1 DATA_CD_DISK02_CELL1           DATA_CD_DISK02_CELL1           o/192.168.56.101/data_CD_disk02_cell1    MEMBER
          2 DATA_CD_DISK03_CELL1           DATA_CD_DISK03_CELL1           o/192.168.56.101/data_CD_disk03_cell1    MEMBER
          3 DATA_CD_DISK04_CELL1           DATA_CD_DISK04_CELL1           o/192.168.56.101/data_CD_disk04_cell1    MEMBER
          4 DATA_CD_DISK05_CELL1           DATA_CD_DISK05_CELL1           o/192.168.56.101/data_CD_disk05_cell1    MEMBER
          5 DATA_CD_DISK06_CELL1           DATA_CD_DISK06_CELL1           o/192.168.56.101/data_CD_disk06_cell1    MEMBER
          6 DATA_CD_DISK07_CELL1           DATA_CD_DISK07_CELL1           o/192.168.56.101/data_CD_disk07_cell1    MEMBER
          7 DATA_CD_DISK08_CELL1           DATA_CD_DISK08_CELL1           o/192.168.56.101/data_CD_disk08_cell1    MEMBER
          8 DATA_CD_DISK09_CELL1           DATA_CD_DISK09_CELL1           o/192.168.56.101/data_CD_disk09_cell1    MEMBER
          9 DATA_CD_DISK10_CELL1           DATA_CD_DISK10_CELL1           o/192.168.56.101/data_CD_disk10_cell1    MEMBER
         10 DATA_CD_DISK11_CELL1           DATA_CD_DISK11_CELL1           o/192.168.56.101/data_CD_disk11_cell1    MEMBER
         11 DATA_CD_DISK12_CELL1           DATA_CD_DISK12_CELL1           o/192.168.56.101/data_CD_disk12_cell1    MEMBER

ASMCMD> lsdg
State    Type    Rebal  Sector  Block       AU  Total_MB  Free_MB  Req_mir_free_MB  Usable_file_MB  Offline_disks  Voting_files  Name
MOUNTED  EXTERN  N         512   4096  4194304     11328    11152                0           11152              0             N  DATA/
ASMCMD> lsattr -l -G data
Name                     Value       
access_control.enabled   FALSE       
access_control.umask     066         
au_size                  4194304     
cell.smart_scan_capable  TRUE        
compatible.asm           11.2.0.0.0  
compatible.rdbms         11.1.0.7.0  
disk_repair_time         3.6h        
sector_size              512         
ASMCMD> lsdsk -G data
Path
o/192.168.56.101/data_CD_disk01_cell1
o/192.168.56.101/data_CD_disk02_cell1
o/192.168.56.101/data_CD_disk03_cell1
o/192.168.56.101/data_CD_disk04_cell1
o/192.168.56.101/data_CD_disk05_cell1
o/192.168.56.101/data_CD_disk06_cell1
o/192.168.56.101/data_CD_disk07_cell1
o/192.168.56.101/data_CD_disk08_cell1
o/192.168.56.101/data_CD_disk09_cell1
o/192.168.56.101/data_CD_disk10_cell1
o/192.168.56.101/data_CD_disk11_cell1
o/192.168.56.101/data_CD_disk12_cell1

最后,继续按照标准的流程来安装Oracle Database,建立数据库实例,监听等。

这样一套简单Exadata的虚拟机就搭建好了。

下一篇文章会讲如何对Exadata虚拟机应用当前最新的Bundle Patch。

Comment

*

沪ICP备14014813号-2

沪公网安备 31010802001379号