Oracle RAC 高可用集群

霄
2024-11-06 / 0 评论 / 64 阅读 / 正在检测是否收录...

Oracle RVC 高可用集群

2024 年 **09 月 24 **日

版本号 修改日期 修改人 更新内容
V1.0 2024.09.24 肖霄

集群规划(在所有节点执行)

一****所有参与集群的机器需要双网卡上网

节点名称 Public网卡1 Private网卡2 VIP虚拟IP(分配网卡1 IP段的可用IP) SCAN名称 SCAN IP地址(分配网卡1 IP段的可用IP)
RACtest1 192.168.12.131 192.168.245.130 192.168.12.132 scan-vip 192.168.12.134
RACtest2 192.168.12.130 192.168.245.129 192.168.12.133

二**、系统配置**

2**.1关闭防火墙**

两台服务器都需要关闭,以保证安装不受防火墙影响,比如两台服务器互相Ping。

2**.2修改计算机名称**

两台计算机分别命名为**ractest1和rac**test2,选择稍后重启.

2**.3修改计算机登录账号密码**

安装前,确认两台服务器的管理员密码一致,如果不一致,需要改成一致.

设置虚拟内存16G以上

3.4配置DEP

3.5账户控制设置

3.6允许远程连接

在计算机-属性-远程设置中设置允许远程连接

3.7环境变量配置

右键“计算机”-“属性”-“高级系统设置”-“环境变量”中设置“TEMP”、“TMP”值为“%WINDIR%\temp”,本例为:“C:\Windows\temp”


3.8修改注册表

复制命令:

reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters" /v "DisableDHCPMediaSense" /t REG_DWORD /d 1 /f

reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\TCPIP6\Parameters" /v "DisabledComponents" /t REG_DWORD /d 4294967295 /f

reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" /v "EnableLUA" /t REG_DWORD /d 0 /f

执行完后重启一次节点

3.9设置共享硬盘

首先先把everyone权限给C盘,再进行后面的共享权限

右键硬盘>>共享>>高级共享;设置C盘的共享,并设置共享权限**为everyone**

两台服务器都要共享C盘(系统盘),**如果Grid安装在c盘之外的其他盘,也要一起共享**。

确保两台服务器能通过网络相互访问对方的安装盘,设置完成之后可在文件资源管理器中的地址栏中输入**\**计算机名**,如\ractest1,\ractest2)**,如果能访问,说明共享成功

需要关闭密码共享保护

网络设置

在网络连接中,重命名网卡,公网网卡为public(网卡1),私网网卡为private(网卡2);两个节点都进行配置

5.2配置网卡解析顺序(**如果是低于Window 2016的版本,请配置,其他直接忽略这一步**)

点击网卡选中后,按快捷键“Alt-N”, 配置解析顺序为公网网卡 Public 在前,私网网卡 Private 在后,并且取消IPV6支持。

5.3设置网络接口度量值

右击网卡->属性->Internet 协议版本 4(TCP/IPv4)属性->高级

,然后按下图设置(私有(private)300,公有(public)100

)

5.4 取消选中“在 DNS 中注册此连接的地址”

1. 选择“公网(public)”网络接口

2. 从右键菜单中选择“属性”

3. 从“网络”选项卡中选择“Internet 协议版本4(TCP/IPv4)”

4. 单击“属性”

5. 从“常规”选项卡中单击“高级...”

6. 选择“DNS”选项卡

7. 取消选中“在 DNS 中注册此连接的地址”的单选按钮

5.5修改每台机器的C:\Windows\System32\drivers\etc\hosts

在最后面追加写入自己规划的IP,比如我的,自己修改下面的IP,复制进hosts文件

#本机环路(这两个不用改)

127.0.0.1 localhost

::1 localhost

#(节点1 的public IP)

192.168.12.131 RACtest1

#(节点2 的public IP)

192.168.12.130 RACtest2

#(节点1 的private IP)

192.168.245.130 RACtest1-PRIV

#(节点2 的private IP)

192.168.245.129 RACtest2-PRIV

#(节点1 的虚拟 IP)

192.168.12.132 RACtest1-vip

#(节点2 的虚拟 IP)

192.168.12.133 RACtest2-vip

#(集群IP)

192.168.12.134 scan-vip

5.6测试两点连通性

两台主机RACtest1和RACtest2互相ping 公共主机名和专用节点名,看是否ping 的通,注意这时候的**vipscan-vip**是ping 不通的

两台机器分别在cmd输入ping RACtest1,ping RACtest2

5.7同步时间节点

在 RACtest1服务器上运行命令:net time \RACtest1(查看 RACtest1的当前时间)然后在 RACtest1服务器上运行命令:

net time **\RACtest2** /set /y (设置 RACtest2时间与 RACtest1同 步)

net time \RACtest1

net time \RACtest2 --查看时间


修改操作系统参数,规避一些性能问题

必须禁用 DHCP 媒体感知。请以管理员用户身份分别在两台机器运行在命令窗口中执行以下命令:

netsh interface ipv4 set global dhcpmediasense=disabled

netsh interface ipv6 set global dhcpmediasense=disabled

使用以下命令验证更改:

netsh interface ipv4 show global

netsh interface ipv6 show global

修改过程如下图所示:

关闭默认的 SNP 功能

netsh int tcp set global chimney=disabled

netsh int tcp set global rss=disabled

使用以下命令验证更改:netsh interface tcp show global

根据ORACLE官方参考Doc ID 1384337.1,解决 section管理内存问题,该问题会导致WINDOWS数据库的监听无法工作,报错TNS-12531 TNS: Failed to allocate memory

导入这个注册表文件(右键另存为到一个地方,再双击导入注册表)
用以修复该问题

本地安全策略中—“本地策略”—“安全选项”中的用户账户控制内容如下图选中的所示,为“不提示,直接提升”

用户帐户控制:管理员批准模式中管理员的提升权限提示的行为 改为 不提示,直接提升

由于11g rac没有明确支持IPV6,最好禁用掉操作系统的IPV6

iSCSI多路径磁盘配置(这个配置只在存储服务器进行)

添加iSCSI服务

在iSCSI-Storage上添加iSCSI服务,选择添加角色和功能

选择iSCSI目标服务器,然后下一步安装

然后选到文件和存储服务-iSCSI,选择中间的新建iSCSI虚拟磁盘向导

建立ISCSI磁盘(2块5GB,1块10GB,物理服务器上的硬盘容量远大于这个值,需要因地制宜一下)

服务管理器内选择 文件和存储服务 iSCSI

  1. 选择服务器(默认本机),键入自定义路径(用于存放虚拟磁盘文件),也可以使用按卷选择

填写虚拟磁盘名称,路径中可以看到是作为虚拟磁盘文件名的

.设置磁盘大小及类型

新建iSCSI目标

命名下

添加

通过ip来选择目标(ip填其他集群节点机器的IP,允许它来访问)

不验证

完成

11.创建成功,重复三次新建三块盘

Client客户端服务器设置(在两个节点服务器操作)

添加多路径I/O功能

安装完成后需要重启

工具中选择MPIO

然后添加对iSCSI设备的支持,然后重启

我们在打开MPIO会发现多了这个MSFT的iSCSI设备

设置多路径连接

选择iSCSI发起程序

快速连接,填写ISCSI服务器IP

选择连接-启用多路径-高级

在这样选一下

在换个ip

选择自动配置

选择设备

MPIO这里可以设置策略

我们现在多路径已经设置成功后面我们只要去磁盘管理里初始化下硬盘即可。

新建简单卷

可以看到存储服务器创建的三块盘

 

不分配驱动器号或驱动器路径

 

不要格式化这个卷

 

只要在一台服务器上对三块磁盘进行新建简单卷操作,另外一台刷新即可;
三块磁盘如下,RAW表示裸设备(未进行格式化)

开始准备集群部署,grid安装部署

注意只在节点安装运行安装grid软件,右键setup.exe,以管理员身份运行,如图,另外一台节点会自动安装

选择‘高级安装’

选择安装语言

填写集群名称和 SCAN 名称,必须填写 hosts 文件中 SCAN IP 对应的主机名,确认去掉“配置GNS”复选框,除非你要使用GNS

将两个节点的主机名和虚拟IP名添加进来,主机名和虚拟IP名已经在hosts文件中配置

添加另外一个节点ip和vip

设置public用于“公共”,private用于“专用”。

19c请按下面三张图选择

此处选择‘自动存储管理(ASM)

填写磁盘组名CSR,点击标记磁盘

标记磁盘弹出框中,选择Add or change label

这里我将两个5G的磁盘标记成了CRS用作OCR和VOTE磁盘,10G的磁盘标记成了DATA用作数据磁盘(供Oracle数据存放数据文件等)

标记完成后就能看到相关磁盘,这里只选择两个CRS标记的磁盘,DATA标记的磁盘用于Oracle Database的安装

设置ASM账户口令(口令规则是大写字母+数字+小写字母),建议使用计算机密码

此处选择‘不使用 IPMI

19c选择

选择软件安装目录

先决条件检查,如果检查通过,则出现概要,如果提示失败,会有相应的提示,请根据提示 检查上一章节中的设置是否存在问题

19c直接全部忽略

开始安装后,网格基础结构配置处停顿约 20 分钟,此处也是 grid 安装成功与否的关键所在,如果此处出现问题,则需要卸载 grid,并检查之前所有的设置,然后再次尝试安装,直到显示成功为止

如果最后一个出错直接跳过

安装完成

7.3检查grid安装

在CMD 运行crsctl check cluster -all显示win1和win2的各种集群服务在线

 

ping scan-vip这时SCAN IP已经能ping通,说明Grid Infrastructure安装成功

八、安装数据库(只需在node1安装即可)

执行database目录下setup.exe程序
确认跳过‘指定电子邮件地

 

选择‘仅安装数据库软件’

 

网格安装选项选择“Real Application Cluster数据库安装”,并将两个节点都选上

 

选择安装语言

 

数据库版本选择企业版,组件都安装

 

选择安装位置

 

先决条件检查无问题跳转到概要

 

安装database数据库软件

 

 

根据提示在节点2上运行\bin>selecthome.bat 双击执行它激活产品。

 

 

 

如果执行selecthome报错,将db_home\bin 改成大写BIN,再次执行即可

九、建立ASM磁盘组(节点1操作,node1)

Cmd 输入asmca命令,等待几分钟在磁盘组选项卡中点击创建

 

给新创建的磁盘组命名, 冗余选择外部冗余, 如果没有符合的磁盘通过“在磁盘上加标记去添加”

冗余 选择 外部

 

点击确定, asmca去创建磁盘组DATA

 

 

提示DATA磁盘组创建成功,同样按照DATA的创建方法创建磁盘组CRS

 

十、DBCA建立数据库

进入数据库安装程序,安装类型选择集群数据库并创建数据库

19c请选择高级配置,之后一直点下一步,到达存储管理配置请看第二图选择MGMT分区,11c请到下面蓝色部分开始看

下一步后选成这样

11c的配置方法在这里

 

选择数据库模版: “一般用途或事务处理”

 

在数据库标识页面,设置如下
配置类型:管理员管理的
全局数据库名: orcl
SID前缀: orcl
并将所有
节点选中

 

管理选项页面,我们勾选配置企业管理器Enterprise Manager

 

数据库身份证明界面,对所有账户使用统一管理口令便于记忆和管理

 

进入数据库文件存储路径设置, 存储类型ASM自动存储管理, 文件存储位置为之前创建的磁盘组DATA外部冗余,下一步之后要输入asm管理的用户密码

 

 

根据需要开启归档和快速恢复区。 建议新建一个磁盘FRA做为快速恢复区,需要启动归档。 这里暂时使用CRS盘

 

勾选示例方案,下一步

 

初始化参数设置,内存选择典型,字符集设置选择简体中文

 

数据库存储配置, 以指定用于创建数据库的存储参数。这里的数据文件, 控制文建和重做日志都默认

 

勾选创建数据库,“完成”进入建库过程

 

 

 

建库完成后,安装程序dbca 会给出提示:

数据库的全局名称: orcl

标识符sid: orcl

*这样在Windows server 2012 上创建数据库集群成功,退出。*

 

十一、检查及测试

RACtest1服务

 

RACteest2服务

 

 

 

 

使用crsctl配置crs自动启动 cmd执行

crsctl enable crs

扫描二维码,在手机上阅读!
94

评论

博主关闭了当前页面的评论