资讯专栏INFORMATION COLUMN

Oracle ASM Filter Driver 简介和基本操作

IT那活儿 / 3758人阅读
Oracle ASM Filter Driver 简介和基本操作

 

点击上方“IT那活儿”,关注后了解更多内容,不管IT什么活儿,干就完了!!!


1

什么是 Oracle ASM Filter Driver (ASMFD)

 

ASMFD从Oracle Grid Infrastructure 12.1 (12.1.0.2)之后默认随 Oracle Grid Infrastructure一起安装,在12.2中,ASMFD在系统已经安装了ASMLIB的情况下无法安装,如果要安装和配置Oracle ASMFD,必须先卸载Oracle ASMLIB。也不支持扩展分区表,自18c起,AFD支持扩展分区表。
如上图,ASMFD是一个内核模块,位于Oracle ASM磁盘的I/O路径中。从逻辑上讲,ASMFD在Oracle二进制文件和包括存储硬件接口的底层操作环境之间提供了一个接口。
以下是ASMFD主要功能的描述:

1)拒绝非Oracle I/O

ASMFD仅允许使用特定于Oracle的接口进行写入,并防止非Oracle应用程序写入ASM磁盘。这可以保护ASM免受意外损坏。

2)减少操作系统资源使用

ASMFD公开了一个门户设备,可用于特定主机上的所有I/O。与多个数据库实例关联的所有进程都可以共享同一个门户设备。结果是使用ASMFD,所需的打开文件描述符数量大大减少。

3)启用设备名称持久性

ASMFD不需要额外的配置来通过使用udev规则或第三方存储驱动程序来确保设备名称的持久性。

4)更快的节点恢复

ASMFD允许Oracle集群件在不重新启动的情况下执行节点级别的防护。因此,使用ASMFD可以通过重新启动Oracle软件堆栈而不是重新启动整个节点来实现相同的结果。这个过程同样有效,但要快得多。

2

ASMFD基本操作

2.1 安装GRID软件前配置存储

1)以root用户来设置环境变量$ORACLE_HOME为Grid Home目录,设置环境变量$ORACLE_BASE为临时目录。

注意:设置环境变量$ORACLE_BASE为临时目录,避免安装前产生diagnostic或trace files,影响GRID软件安装。
$su root
#export ORACLE_HOME=/oracle/app/19.0.0/grid/
#export ORACLE_BASE=/tmp
2)使用ASMCMD afd_label命令来为Oracle ASM Filter Driver来准备磁盘。
绑定成功后会在/dev路径下,产生一个oracleafd/disk的路径,路径下的磁盘名都是AFD的标签名。
#/oracle/app/19.0.0/grid/bin/asmcmd afd_label DATA01 /dev/sdc --init
#/oracle/app/19.0.0/grid/bin/asmcmd afd_label DATA02 /dev/sdd --init
#/oracle/app/19.0.0/grid/bin/asmcmd afd_label DATA03 /dev/sde --init
3)使用ASMCMD afd_lslbl命令来验证磁盘是否已经被标记可以为Oracle ASMFD所使用。
如果去查看/dev/oracleafd,就会发现新的盘了,权限也已配置完成。
#/oracle/app/19.0.0/grid/bin/asmcmd afd_lslbl /dev/sdc
#/oracle/app/19.0.0/grid/bin/asmcmd afd_lslbl /dev/sdd
#/oracle/app/19.0.0/grid/bin/asmcmd afd_lslbl /dev/sde
#ls -ltr /dev/oracleafd/disks

4)当为Oracle ASMFD准备完磁盘后清除变量ORACLE_BASE。

#unset ORACLE_BASE
5)在安装脚本( gridSetup.sh)中的Create ASM Disk Group向导页面。
选择:/dev/sdc;/dev/sdd;/dev/sde,选中Configure ASM Filter Driver框以启用 Oracle ASM Filter Driver 的配置。

2.2 已安装GRID软件后使用ASMFD

1)更新Oracle ASM磁盘发现字符串以使Oracle ASMFD能够被发现设备。

查询当前发现路径:
#su - grid
$asmcmd dsget

新增发现路径:
$asmcmd dsset /dev/mapper,AFD:*
$asmcmd dsget

2)确认目前ASMFD模块(以下简称AFD)的状态,未加载。

$su - grid
$asmcmd afd_state

3)加载ASMFD模块(以下简称 AFD)。

所有节点设置环境变量:
$su -
#export ORACLE_BASE=/oracle/app/grid
#export ORACLE_HOME=/ora
cle/app/19.0.0/grid

停止所有节点CRS集群:
#/oracle/app/19.0.0/grid/bin/crsctl stop cluster -all


[root@rac19c1 ~]# /oracle/app/19.0.0/grid/bin/crsctl stop crs
CRS-2791: Starting shutdown of Oracle High Availability Services-managed resources on rac19c1
CRS-2673: Attempting to stop ora.crsd on rac19c1
CRS-2790: Starting shutdown of Cluster Ready Services-managed resources on server rac19c1
CRS-2673: Attempting to stop ora.qosmserver on rac19c1
CRS-2673: Attempting to stop ora.chad on rac19c1
CRS-2677: Stop of ora.qosmserver on rac19c1 succeeded
CRS-2677: Stop of ora.chad on rac19c1 succeeded
CRS-2673: Attempting to stop ora.rac19c.db on rac19c1
CRS-2677: Stop of ora.rac19c.db on rac19c1 succeeded
CRS-2673: Attempting to stop ora.LISTENER.lsnr on rac19c1
CRS-2673: Attempting to stop ora.LISTENER_DG.lsnr on rac19c1
CRS-2673: Attempting to stop ora.LISTENER_SCAN1.lsnr on rac19c1
CRS-2673: Attempting to stop ora.cvu on rac19c1
CRS-2673: Attempting to stop ora.rac19c1.vip on rac19c1
CRS-2673: Attempting to stop ora.rac19c1_2.vip on rac19c1
CRS-2677: Stop of ora.rac19c1_2.vip on rac19c1 succeeded
CRS-2677: Stop of ora.LISTENER.lsnr on rac19c1 succeeded
CRS-2677: Stop of ora.rac19c1.vip on rac19c1 succeeded
CRS-2673: Attempting to stop ora.rac19c2.vip on rac19c1
CRS-2677: Stop of ora.LISTENER_SCAN1.lsnr on rac19c1 succeeded
CRS-2673: Attempting to stop ora.scan1.vip on rac19c1
… …
CRS-2677: Stop of ora.cssd on rac19c1 succeeded
CRS-2673: Attempting to stop ora.gipcd on rac19c1
CRS-2673: Attempting to stop ora.gpnpd on rac19c1
CRS-2677: Stop of ora.gipcd on rac19c1 succeeded
CRS-2677: Stop of ora.gpnpd on rac19c1 succeeded
CRS-2793: Shutdown of Oracle High Availability Services-managed resources on rac19c1 has completed
CRS-4133: Oracle High Availability Services has been stopped.
AFD Configure安装,并加载Driver:
# /oracle/app/19.0.0/grid/bin/asmcmd afd_configure

4)如果遇到如下错误,因为ASMFD在系统已经安装了ASMLIB的情况下无法安装AFD。

5)检查AFD状态,如下显示已加载。

#/oracle/app/19.0.0/grid/bin/asmcmd afd_state

6)使用 Oracle ASMFD标签标记所有Oracle ASM磁盘。

#/oracle/app/19.0.0/grid/bin/asmcmd afd_label ocrdata01 /dev/sdf --migrate
#/oracle/app/19.0.0/grid/bin/asmcmd afd_label ocrdata02 /dev/sdg --migrate
#/oracle/app/19.0.0/grid/bin/asmcmd afd_label ocrdata03 /dev/sdh --migrate
#/oracle/app/19.0.0/grid/bin/asmcmd afd_lsdsk

7)如果报错ASMCMD-9513: ASM disk label set operation failed,请尝试修改/etc/oracleafd.conf,重新设置磁盘路径。

8)其他节点刷新afd磁盘标签信息。

# /oracle/app/19.0.0/grid/bin/asmcmd afd_refresh
# /oracle/app/19.0.0/grid/bin/asmcmd afd_lsdsk

9)启动CRS集群。

#/oracle/app/19.0.0/grid/bin/crsctl start cluster -all
10)检查Oracle ASM磁盘磁盘发现路径是否正确,不正确再次设置。
#su - grid
$asmcmd dsget

11)查看当前磁盘组磁盘,AFD已管理。

2.3 新增磁盘组

1)设置磁盘发现路径

$su - grid
$ asmcmd afd_dsset /dev/sd*
$ asmcmd afd_dsget

2)查询当前标记磁盘

$asmcmd afd_lsdsk

3)标签新的磁盘

su -
#/oracle/app/19.0.0/grid/bin/asmcmd afd_label DATA04 /dev/sde
#/oracle/app/19.0.0/grid/bin/asmcmd afd_lsdsk

4)如果不需要该磁盘,可以清除标签

#/oracle/app/19.0.0/grid/bin/asmcmd afd_unlabel DATA04
#/oracle/app/19.0.0/grid/bin/asmcmd afd_lsdsk

5)创建新的磁盘组

6)查询当前磁盘

7)查询当前磁盘组

 



END





本文作者:付青启

本文来源:IT那活儿(上海新炬王翦团队)

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/129529.html

相关文章

  • OpenStack设计与实现(二)Libvirt简介与实现原理

    摘要:一简介是由开发的一套开源的软件工具,目标是提供一个通用和稳定的软件库来高效安全地管理一个节点上的虚拟机,并支持远程操作。用户只关心高层的功能,而的实现细节,对于最终用户应该是透明的。本机之间的通信在初始化的过程中,所有的驱动被枚举和注册。 一、Libvirt简介 Libvirt是由Redhat开发的一套开源的软件工具,目标是提供一个通用和稳定的软件库来高效、安全地管理一个节点上的虚拟机...

    zzir 评论0 收藏0
  • 数据库连接池

    摘要:数据库连接池的基本原理是在内部对象池中维护一定数量的数据库连接,并对外暴露数据库连接获取和返回方法。统一的连接管理,避免数据库连接泄漏在较为完备的数据库连接池实现中,可根据预先的连接占用超时设定,强制收回被占用连接。 一、数据库连接池的原理 基本原理 对于一个简单的数据库应用,由于对于数据库的访问不是很频繁。这时可以简单地在需要访问数据库时,就新创建一个连接,用完后就关闭它,这样做也...

    olle 评论0 收藏0
  • 数据库连接池

    摘要:数据库连接池的基本原理是在内部对象池中维护一定数量的数据库连接,并对外暴露数据库连接获取和返回方法。统一的连接管理,避免数据库连接泄漏在较为完备的数据库连接池实现中,可根据预先的连接占用超时设定,强制收回被占用连接。 一、数据库连接池的原理 基本原理 对于一个简单的数据库应用,由于对于数据库的访问不是很频繁。这时可以简单地在需要访问数据库时,就新创建一个连接,用完后就关闭它,这样做也...

    Tamic 评论0 收藏0

发表评论

0条评论

IT那活儿

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<