searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

Oracle RAC 19C 静态安装脚本使用

2023-10-12 07:12:42
60
0

 

1.  概述

1.1          场景介绍

Oracle数据库位于企业数据中心核心位置,通常支撑着关键应用程序的运行,本文主要聚焦如何高效利用shell脚本进行Oracle RAC数据库的部署。

1.2          组件介绍

本文主要是针对Oracle RAC 19c版本进行安装部署,在部署前,需要在官网下载对应的安装部署包,可以从下面官网地址进行下载对应版本的安装包

主要安装包如下表所示:

安装包

cksum

Md5

说明

LINUX_X64_193000_grid_home.zip

131628984 2889184573

b7c4c66f801f92d14faa0d791ccda721

GI软件

LINUX_X64_193000_db_home.zip

3680739943 3059705302

1858bd0d281c60f4ddabd87b1c214a4f

Oracle软件

 

 

2.  资源规划

2.1          网络资源规划

数据库客户端通过Oracle Public Network网络平面访问数据库服务。

为了保证高可用和故障恢复,Oracle RAC要求每个节点配置一个虚拟IP ( Virtual IP),当发生故障时,虚拟IP会在不同节点之间漂移。另外,用户需要在Oracle Public Network子网中申请一个scan IP,该scan IP负责与数据库客户端通信,会把请求转到对应的虚拟IP,然后转到真实的Oracle RAC节点。

Oracle RAC节点之间需要通过Oracle Private Network平面互相通信,通信内容包括网络心跳和Cache Fusion,该网络平面只负责节点之间的内部通信,并且不能被外部访问,所以需要单独规划一个子网。

Oracle RAC集群地址规划,例如:

Oracle RAC节点名称

Public Network IP地址

Private Netwrk IP地址

虚拟IP地址

Scan IP地址

racnode1

11.50.36.143

11.150.132.143

11.50.63.72

11.50.63.74

racnode2

11.50.36.144

11.150.132.144

11.50.63.73

2.2          硬盘资源规划

除了创建主机自带的系统盘,本示例中主要使用iSCSI共享云硬盘,并挂载至Oracle RAC节点1和节点2,即racode1和racnode2。通过共享盘创建Oracle ASM(自动存储管理,Automatic Storage Management)磁盘组,其中磁盘组规划如下表所示。

ASM磁盘组名称

磁盘容量

磁盘个数

使用说明

GRID

40G

3

仲裁盘

DATA

400G

4

数据盘

REDO

100G

2

REDO盘

2.3          主机资源规划

这 2 台服务器组成一个集群。

节点类型

节点名称

实例名

Oracle RAC 节点 1

racnode1

swdbnew

Oracle RAC 节点 2

racnode2

swdbnew

3.  脚本一览

脚本

功能说明

待优化

 

实现节点1 Oracle RAC 19C软件安装前的若干环境参数一键配置

因调试机器网络限制,脚本只支持生成grid及oracle用户的密钥,暂不支持将密钥推送到对端节点,需要手动拷贝到对端节点实现节点间实现免密

 

实现节点2 Oracle RAC 19C软件安装前的环境参数一键配置

 

检查上述脚本执行后参数是否配置正确

 

 

实现安装grid集群前的软件包解压,2节点cvuqdisk安装及安装文件配置

 

 

 

实现grid集群安装前检查(grid节点安装前,需要根据检查结果解决问题再进行grid安装),如果检查成功,将自动进行grid软件安装

Grid软件安装结果需要人工打开日志进行判断

 

 

4.  使用指导

4.1          脚本使用前提

  • 确保待部署机器已安装可用且兼容数据库版本的OS
  • 确保待部署机器间已实现root用户免密互信(需手动部署)
  • 确保资源规划完成
  • 确保规划IP可用且不冲突
  • 确保硬盘资源中规划的盘已经映射到2台主机上
  • 确保两个安装包已上传到待部署机器的某个目录下,zip

LINUX_X64_193000_db_home.zip

 

4.2          节点参数一键配置

  • 脚本功能

实现Oracle RAC 19C软件安装前的若干环境参数一键配置,简化为脚本一键执行,无需单独命令行执行(扩展swap分区,安装Oracle Rac的依赖包,修改Oracle RAC节点主机名,配置Oracle RAC节点的hosts,禁用avahi-daemon,禁用NTP服务,修改系统配置文件fstab,关闭防火墙,关闭selinux,创建Grid和Oracle用户和组,创建数据库的目录和修改权限,环境变量配置,配置磁盘UDEV规则,grid和oracle用户配置互信密钥生成)。

  • 使用步骤
  1. 本地打开如下脚本,根据资源规划更改如下参数后保存;

待更改字段值

说明

node1="racnode1"

Oracle RAC节点名称1

node2="racnode2"

Oracle RAC节点名称2

grid_passwd="xxxxxx@123!"

自定义的grid用户密码

oracle_passwd=" xxxxxx @123!"

自定义的oracle用户密码

oracle_sid="swdbnew1" oracle_sid="swdbnew2"

自定义的oracle_sid

节点1为oracle_sid+1

节点2为oracle_sid+2

grid_sid="+ASM1"

grid_sid="+ASM2"

自定义的ASM

节点1为+ASM1

节点2为+ASM2

#public ip

11.50.36.143  ${node1}

11.50.36.144  ${node2}

#virtual ip

11.50.63.72  ${node1}-vip

11.50.63.73  ${node2}-vip

#scan ip

11.50.63.74  cluster-scanip

#private ip

11.150.132.143  ${node1}-priv

11.150.132.144  ${node2}-priv

Oracle RAC集群地址规划中的值

memneed=29*1024*1024

swap 分区值,脚本中默认是29G,可根据实际情况修改

  1. 使用 root 用户登录节点1,上传脚本至节点1,使用 root 用户登录节点2,上传脚本至节点2;
  2. 在2个节点脚本所在目录下,各自执行如下命令:

bash 文件名.sh

例如:

节点1:bash step1_for_node1.sh

节点2:  bash step1_for_node2.sh

 

4.3          节点参数配置后检查

  • 注意:

因机器网络限制,脚本执行结束后,暂不支持将密钥推送到对端节点,需要手动拷贝到对端节点实现节点间实现免密,若两台机器间网络互通,可自行更改脚本实现脚本免密。

  • 脚本功能

检查是否所有配置参数均配置正确。

Bash envcheck.sh

4.4          Grid参数一键配置

  • 脚本功能:实现安装grid集群前的软件包解压及安装文件配置
  • 脚本前提:前提是建立了root用户的互信关系,因为需要scp
  • 使用步骤
  1. 本地打开如下脚本,根据资源规划更改如下参数后保存

待更改字段值

说明

grid_zip="/var/oracle_zip/LINUX.X64_193000_grid_home.zip"

grid安装包所在绝对路径,将根据此路径解压LINUX.X64_193000_grid_home.zip

asm_ocr_name="GRIDDG"

自定义的仲裁group名称

ocr_disk="/dev/oracle/vote_sdc,/dev/oracle/vote_sdd,/dev/oracle/vote_sde"

3个仲裁盘在/etc/udev/rules.d/99-oracle-asmdevices.rule中的SYMLINK值

net_interface_list="bond0.170:11.50.32.0:1,bond1.321:11.150.128.0:5"

(重要!这里要填写正确,否则部署不会成功!)后缀1为公网网段,后缀5为私网网段,根据网络规划填写对应的网段

  1. 使用 root 用户登录节点1,上传脚本至节点1
  2. 仅需要在主节点上执行脚本,如下命令:

bash 文件名.sh

例如:

节点1:bash step2.sh

4.5          Grid安装前检查 

  • 脚本功能

实现grid集群安装前检查(grid节点安装前,需要根据检查结果解决问题再进行grid安装),如果检查成功,将自动进行grid软件安装

  • 使用步骤
  1. 本地打开如下脚本,根据资源规划更改如下参数后保存

待更改字段值

说明

precheck_log="/home/grid/grid_check1.log"

自定义的安装前检查目录,后续通过查看此日志判断是否环境检查成功

  1. 使用 root 用户登录节点1,上传脚本至节点1
  2. 仅需要在主节点上执行如下命令:

bash 文件名.sh

例如:

节点1:bash step3.sh

 

0条评论
0 / 1000
c****n
2文章数
0粉丝数
c****n
2 文章 | 0 粉丝
c****n
2文章数
0粉丝数
c****n
2 文章 | 0 粉丝
原创

Oracle RAC 19C 静态安装脚本使用

2023-10-12 07:12:42
60
0

 

1.  概述

1.1          场景介绍

Oracle数据库位于企业数据中心核心位置,通常支撑着关键应用程序的运行,本文主要聚焦如何高效利用shell脚本进行Oracle RAC数据库的部署。

1.2          组件介绍

本文主要是针对Oracle RAC 19c版本进行安装部署,在部署前,需要在官网下载对应的安装部署包,可以从下面官网地址进行下载对应版本的安装包

主要安装包如下表所示:

安装包

cksum

Md5

说明

LINUX_X64_193000_grid_home.zip

131628984 2889184573

b7c4c66f801f92d14faa0d791ccda721

GI软件

LINUX_X64_193000_db_home.zip

3680739943 3059705302

1858bd0d281c60f4ddabd87b1c214a4f

Oracle软件

 

 

2.  资源规划

2.1          网络资源规划

数据库客户端通过Oracle Public Network网络平面访问数据库服务。

为了保证高可用和故障恢复,Oracle RAC要求每个节点配置一个虚拟IP ( Virtual IP),当发生故障时,虚拟IP会在不同节点之间漂移。另外,用户需要在Oracle Public Network子网中申请一个scan IP,该scan IP负责与数据库客户端通信,会把请求转到对应的虚拟IP,然后转到真实的Oracle RAC节点。

Oracle RAC节点之间需要通过Oracle Private Network平面互相通信,通信内容包括网络心跳和Cache Fusion,该网络平面只负责节点之间的内部通信,并且不能被外部访问,所以需要单独规划一个子网。

Oracle RAC集群地址规划,例如:

Oracle RAC节点名称

Public Network IP地址

Private Netwrk IP地址

虚拟IP地址

Scan IP地址

racnode1

11.50.36.143

11.150.132.143

11.50.63.72

11.50.63.74

racnode2

11.50.36.144

11.150.132.144

11.50.63.73

2.2          硬盘资源规划

除了创建主机自带的系统盘,本示例中主要使用iSCSI共享云硬盘,并挂载至Oracle RAC节点1和节点2,即racode1和racnode2。通过共享盘创建Oracle ASM(自动存储管理,Automatic Storage Management)磁盘组,其中磁盘组规划如下表所示。

ASM磁盘组名称

磁盘容量

磁盘个数

使用说明

GRID

40G

3

仲裁盘

DATA

400G

4

数据盘

REDO

100G

2

REDO盘

2.3          主机资源规划

这 2 台服务器组成一个集群。

节点类型

节点名称

实例名

Oracle RAC 节点 1

racnode1

swdbnew

Oracle RAC 节点 2

racnode2

swdbnew

3.  脚本一览

脚本

功能说明

待优化

 

实现节点1 Oracle RAC 19C软件安装前的若干环境参数一键配置

因调试机器网络限制,脚本只支持生成grid及oracle用户的密钥,暂不支持将密钥推送到对端节点,需要手动拷贝到对端节点实现节点间实现免密

 

实现节点2 Oracle RAC 19C软件安装前的环境参数一键配置

 

检查上述脚本执行后参数是否配置正确

 

 

实现安装grid集群前的软件包解压,2节点cvuqdisk安装及安装文件配置

 

 

 

实现grid集群安装前检查(grid节点安装前,需要根据检查结果解决问题再进行grid安装),如果检查成功,将自动进行grid软件安装

Grid软件安装结果需要人工打开日志进行判断

 

 

4.  使用指导

4.1          脚本使用前提

  • 确保待部署机器已安装可用且兼容数据库版本的OS
  • 确保待部署机器间已实现root用户免密互信(需手动部署)
  • 确保资源规划完成
  • 确保规划IP可用且不冲突
  • 确保硬盘资源中规划的盘已经映射到2台主机上
  • 确保两个安装包已上传到待部署机器的某个目录下,zip

LINUX_X64_193000_db_home.zip

 

4.2          节点参数一键配置

  • 脚本功能

实现Oracle RAC 19C软件安装前的若干环境参数一键配置,简化为脚本一键执行,无需单独命令行执行(扩展swap分区,安装Oracle Rac的依赖包,修改Oracle RAC节点主机名,配置Oracle RAC节点的hosts,禁用avahi-daemon,禁用NTP服务,修改系统配置文件fstab,关闭防火墙,关闭selinux,创建Grid和Oracle用户和组,创建数据库的目录和修改权限,环境变量配置,配置磁盘UDEV规则,grid和oracle用户配置互信密钥生成)。

  • 使用步骤
  1. 本地打开如下脚本,根据资源规划更改如下参数后保存;

待更改字段值

说明

node1="racnode1"

Oracle RAC节点名称1

node2="racnode2"

Oracle RAC节点名称2

grid_passwd="xxxxxx@123!"

自定义的grid用户密码

oracle_passwd=" xxxxxx @123!"

自定义的oracle用户密码

oracle_sid="swdbnew1" oracle_sid="swdbnew2"

自定义的oracle_sid

节点1为oracle_sid+1

节点2为oracle_sid+2

grid_sid="+ASM1"

grid_sid="+ASM2"

自定义的ASM

节点1为+ASM1

节点2为+ASM2

#public ip

11.50.36.143  ${node1}

11.50.36.144  ${node2}

#virtual ip

11.50.63.72  ${node1}-vip

11.50.63.73  ${node2}-vip

#scan ip

11.50.63.74  cluster-scanip

#private ip

11.150.132.143  ${node1}-priv

11.150.132.144  ${node2}-priv

Oracle RAC集群地址规划中的值

memneed=29*1024*1024

swap 分区值,脚本中默认是29G,可根据实际情况修改

  1. 使用 root 用户登录节点1,上传脚本至节点1,使用 root 用户登录节点2,上传脚本至节点2;
  2. 在2个节点脚本所在目录下,各自执行如下命令:

bash 文件名.sh

例如:

节点1:bash step1_for_node1.sh

节点2:  bash step1_for_node2.sh

 

4.3          节点参数配置后检查

  • 注意:

因机器网络限制,脚本执行结束后,暂不支持将密钥推送到对端节点,需要手动拷贝到对端节点实现节点间实现免密,若两台机器间网络互通,可自行更改脚本实现脚本免密。

  • 脚本功能

检查是否所有配置参数均配置正确。

Bash envcheck.sh

4.4          Grid参数一键配置

  • 脚本功能:实现安装grid集群前的软件包解压及安装文件配置
  • 脚本前提:前提是建立了root用户的互信关系,因为需要scp
  • 使用步骤
  1. 本地打开如下脚本,根据资源规划更改如下参数后保存

待更改字段值

说明

grid_zip="/var/oracle_zip/LINUX.X64_193000_grid_home.zip"

grid安装包所在绝对路径,将根据此路径解压LINUX.X64_193000_grid_home.zip

asm_ocr_name="GRIDDG"

自定义的仲裁group名称

ocr_disk="/dev/oracle/vote_sdc,/dev/oracle/vote_sdd,/dev/oracle/vote_sde"

3个仲裁盘在/etc/udev/rules.d/99-oracle-asmdevices.rule中的SYMLINK值

net_interface_list="bond0.170:11.50.32.0:1,bond1.321:11.150.128.0:5"

(重要!这里要填写正确,否则部署不会成功!)后缀1为公网网段,后缀5为私网网段,根据网络规划填写对应的网段

  1. 使用 root 用户登录节点1,上传脚本至节点1
  2. 仅需要在主节点上执行脚本,如下命令:

bash 文件名.sh

例如:

节点1:bash step2.sh

4.5          Grid安装前检查 

  • 脚本功能

实现grid集群安装前检查(grid节点安装前,需要根据检查结果解决问题再进行grid安装),如果检查成功,将自动进行grid软件安装

  • 使用步骤
  1. 本地打开如下脚本,根据资源规划更改如下参数后保存

待更改字段值

说明

precheck_log="/home/grid/grid_check1.log"

自定义的安装前检查目录,后续通过查看此日志判断是否环境检查成功

  1. 使用 root 用户登录节点1,上传脚本至节点1
  2. 仅需要在主节点上执行如下命令:

bash 文件名.sh

例如:

节点1:bash step3.sh

 

文章来自个人专栏
文章 | 订阅
0条评论
0 / 1000
请输入你的评论
0
0