关于asmlib 具体的作用分析-阿里云开发者社区

开发者社区> 长烟慢慢> 正文

关于asmlib 具体的作用分析

简介: 目前只有linux 操作系统上有asmlib 包,其他的系统暂时还没有。asmlib 简化磁盘管理,取代原来我们在linux 上常用rawdevices 服务。(也就是说,asmlib是由几个os库文件组成的,用来简化管理磁盘,安装了它,不用使用raw devices了) 根据uname –r 检测结果,下载的驱动程序包名称与其一致。
+关注继续查看

目前只有linux 操作系统上有asmlib 包,其他的系统暂时还没有。asmlib 简化磁盘管理,取代原来我们在linux 上常用rawdevices 服务。(也就是说,asmlib是由几个os库文件组成的,用来简化管理磁盘,安装了它,不用使用raw devices了)

根据uname –r 检测结果,下载的驱动程序包名称与其一致。务必!!!


1、asmlib的安装过程

1、查看内核:

[root@rac2 ~]# uname -a

Linux rac2.lyg.com 2.6.18-164.el5#1 SMP Tue Aug 18 15:51:48 EDT 2009 x86_64 x86_64 x86_64 GNU/Linux

2、Oracle ASMlib下载地址:

http://www.oracle.com/technetwork/server-storage/linux/downloads/index.html

下载以下rpm包(注意rpm包版本和Linux内核版本一致):

oracleasm-support-2.1.8-1.el5.x86_64

oracleasm-2.6.18-164.el5-2.0.5-1.el5.x86_64

oracleasmlib-2.0.4-1.el5.x86_64

3、安装(所有节点)

[root@rac2 package]# chmod 755 oracle*

[root@rac2 package]# rpm -ivh oracle*

warning: oracleasm-2.6.18-164.el5-2.0.5-1.el5.x86_64.rpm: HeaderV3 DSA signature: NOKEY, key ID 1e5e0159

Preparing...               ########################################### [100%]

   1:oracleasm-support     ########################################### [ 33%]

   2:oracleasm-2.6.18-164.el###########################################[ 67%]

   3:oracleasmlib          ########################################### [100%]

4、初始化asmlib (在所有节点执行)

[root@rac1 Desktop]# oracleasm configure -i

Configuring the Oracle ASM library driver.

 

This will configure the on-boot properties of the Oracle ASMlibrary

driver.  The followingquestions will determine whether the driver is

loaded on boot and what permissions it will have.  The current values

will be shown in brackets ('[]'). Hitting <ENTER> without typing an

answer will keep that current value.  Ctrl-C will abort.

 

Default user to own the driver interface []: grid

Default group to own the driver interface []: oinstall

Start Oracle ASM library driver on boot (y/n) [n]: y

Scan for Oracle ASM disks on boot (y/n) [y]: y

Writing Oracle ASM library driver configuration: done

 

[root@rac1 Desktop]# oracleasm init

Creating /dev/oracleasm mount point: /dev/oracleasm

Loading module "oracleasm": oracleasm

Mounting ASMlib driver filesystem: /dev/oracleasm

在rac2上的操作完全一样,忽略之。


以上操作执行完成了四大任务:

1 、创建了配置文件/etc/sysconfig/oracleasm(其实这个是一个软连接,修改的话,要修改那个真实的文件)

2 、创建了挂载点/dev/oracleasm

3 、加载oracleasm 内核模块

4 、挂载ASM 函数驱动文件系统

 

2、asm磁盘的创建

使用asmlib 管理磁盘后,需要创建一系列磁盘。其实,这不是真正意义上磁盘分区创建,如fdisk 上的创建磁盘操作。这里只是一个标记命名。将系统上的磁盘分区在asmlib 的配置文件中做一个标识,使得ASMLIB 能加载使用,ASM 实例从ASMLIB 中读取的到。

这点和RAW DEVICES 其实很相似的。不知道性能差异如何?目前没有测试结果。

创建命令如下,在root 用户下执行。

在一个节点上以root身份做

我们做如下规划:

sdb1 OCR-VOTE

sdc1 DATA

sdd1 FRA

[root@rac1 ~]# fdisk /dev/sdb

Device contains neither a valid DOS partition table, nor Sun, SGIor OSF disklabel

Building a new DOS disklabel. Changes will remain in memory only,

until you decide to write them. After that, of course, theprevious

content won't be recoverable.

 

Warning: invalid flag 0x0000 of partition table 4 will becorrected by w(rite)

Command (m for help): n

Command action

   e   extended

   p   primary partition (1-4)

p

Partition number (1-4): 1

First cylinder (1-652, default 1):

Using default value 1

Last cylinder or +size or +sizeM or +sizeK (1-652, default 652):

Using default value 652

Command (m for help): p

 

Disk /dev/sdb: 5368 MB, 5368709120 bytes

255 heads, 63 sectors/track, 652 cylinders

Units = cylinders of 16065 * 512 = 8225280 bytes

 

   Device Boot      Start         End      Blocks  Id  System

/dev/sdb1              1         652     5237158+ 83  Linux

 

Command (m for help): w

The partition table has been altered!

 

Calling ioctl() to re-read partition table.

Syncing disks.

[root@rac1 ~]#

另外两个盘sdcsdd以同样的方式创建。

rac1节点上以root身份做,创建asm磁盘:

[root@rac1 ~]# oracleasm createdisk OCR_VOTE /dev/sdb1

Writing disk header: done

Instantiating disk: done

[root@rac1 ~]# oracleasm createdisk DATA /dev/sdc1

Writing disk header: done

Instantiating disk: done

[root@rac1 ~]# oracleasm createdisk FRA /dev/sdd1

Writing disk header: done

Instantiating disk: done

[root@rac1 ~]# oracleasm scandisks

Reloading disk partitions: done

Cleaning any stale ASM disks...

Scanning system for ASM disks...



3、ASMLIB 磁盘的管理

ASM 磁盘使用oracleasm 工具进行管理。

[root@db4 ~]# oracleasm -h

Usage: oracleasm [--exec-path=<exec_path>] <command> [ <args> ]

       oracleasm --exec-path

       oracleasm -h

       oracleasm -V

 

The basic oracleasm commands are:

    configure        Configure the Oracle Linux ASMLib driver

    init             Load and initialize the ASMLib driver

    exit             Stop the ASMLib driver

    scandisks        Scan the system for Oracle ASMLib disks

    status           Display the status of the Oracle ASMLib driver

    listdisks        List known Oracle ASMLib disks

    querydisk        Determine if a disk belongs to Oracle ASMlib

    createdisk       Allocate a device for Oracle ASMLib use

    deletedisk       Return a device to the operating system

    renamedisk       Change the label of an Oracle ASMlib disk

    update-driver    Download the latest ASMLib driver

 

使用oracleasm listdisks 列出所有创建的磁盘。

[root@rac1 ~]# oracleasm listdisks

DATA

FRA

OCR_VOTE

[root@rac1 ~]#



使用oracleasm querydisk 列出某一磁盘的详细信息,如指向的哪个磁盘分区。

[root@db4 ~]# oracleasm querydisk

Usage: oracleasm-querydisk [-l <manager>] [-v] [-d|-p] <label>|<device> ...

 

 [root@db4 ~]# oracleasm querydisk vol1

Disk "VOL1" is a valid ASM disk

[root@db4 ~]# oracleasm querydisk -v vol1

Disk "VOL1" is a valid ASM disk

[root@db4 ~]# oracleasm querydisk -v -d vol1

Disk "VOL1" is a valid ASM disk on device /dev/sdb1[8,17]

加选项  -v -p, 显示出物理盘分区。

[root@db4 ~]# oracleasm querydisk -v -p vol1

Disk "VOL1" is a valid ASM disk

/dev/sdb1: LABEL="VOL1" TYPE="oracleasm"

/dev/mapper/mpath1p1: LABEL="VOL1" TYPE="oracleasm"

[root@db4 ~]#

 

4、ASMLIB 磁盘的使用

ASMLIB 磁盘在10g 环境中,只有一个用途,给ASM 实例使用。在11g 中,增加了ADVM 和ACFS的功能,类似逻辑卷和文件系统。

我测试了文件系统,它还是不能给数据库保存数据文件信息,类似普通的文件系统,只是在RAC下多节点可以同时读取。

在ASM 实例中,初始化参数需要注意ASMLIB 的磁盘的挂载点信息。它的挂载点是/dev/oracleasm/ 。

初始化参数关键点如下:

*.asm_diskgroups='VG1','VG2'

*.asm_diskstring='/dev/oracleasm/disks/VOL1','/dev/oracleasm/disks/VOL2'


版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
玩笑到现实,大数据涉足文学研究--用数据模型分析莎翁著作
自然语言研究一直以来都是计算机研究的一个重要方向。随着大数据时代的到来,人们也越来越关注自然语言这方面的进展。而文学是自然语言这个皇冠上的明珠。人们都拭目以待大数据摘下这颗明珠的那一天。
3420 0
C1000K之Libevent源码分析
 简介 说到异步IO,高并发之类的名词, 可能很多人第一反应就是 select, poll, epoll, kqueue 之类的底层代码库。
846 0
阿里云服务器端口号设置
阿里云服务器初级使用者可能面临的问题之一. 使用tomcat或者其他服务器软件设置端口号后,比如 一些不是默认的, mysql的 3306, mssql的1433,有时候打不开网页, 原因是没有在ecs安全组去设置这个端口号. 解决: 点击ecs下网络和安全下的安全组 在弹出的安全组中,如果没有就新建安全组,然后点击配置规则 最后如上图点击添加...或快速创建.   have fun!  将编程看作是一门艺术,而不单单是个技术。
3950 0
多种临时表效率的对比分析
多种临时表效率的对比分析 老帅(20141107)平时在写存储过程的时候,经常会用到临时表,而临时表的用法到底有几种,哪种效率更好呢?我们来做个对比分析。
650 0
+关注
长烟慢慢
系统架构师
806
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
文娱运维技术
立即下载
《SaaS模式云原生数据仓库应用场景实践》
立即下载
《看见新力量:二》电子书
立即下载