[Oracle - ACFS (ASM Cluster File System) 생성]

데이터 이관을 위해 datapump 덤프를 받으려는데 용량이 너무 커서 받을만한 파일시스템이 없어서 ACFS로 data diskgroup 파일시스템 만들어서 사용하였습니다.

 

Oracle MOS : Example About How To Perform An EXPDP (Export Data Pump) on ACFS. (Doc ID 1437402.1)

 

ACFS( ASM Cluster File System )이란,
datafile을 제외한 나머지 Oracle및 Application 파일의 저장/관리를 위해 사용되는 시스템
 

 

- Oracle ACFS 정보 Oracle ACFS는 Oracle Database 외부에서 유지 관리되는 고객 파일 시스템 애플리케이션 데이터에 대한 지원을 제공하는 범용, 단일 노드 및 클러스터 전체 파일 시스템으로 설계되었습니다.
- Oracle ACFS는 데이터베이스가 아닌 파일에 대해 선호되는 파일 관리자입니다. 범용 파일에 최적화되어 있습니다.
- Oracle ACFS는 설명서에 명시적으로 언급된 경우를 제외하고 Oracle ASM에 직접 저장할 수 있는 파일 유형을 지원하지 않습니다.
- Oracle ACFS는 실행 파일, 데이터베이스 추적 파일, 데이터베이스 경보 로그, 애플리케이션 보고서, BFILE 및 구성 파일을 비롯한 많은 데이터베이스 및 애플리케이션 파일을 지원합니다. 기타 지원되는 파일은 비디오, 오디오, 텍스트, 이미지, 엔지니어링 도면 및 기타 범용 응용 프로그램 파일 데이터입니다.

 

 

■ ACFS 생성

Data disk group 용량 확인(해당 디스크그룹을 통해 생성)

[grid@test ~]$ asmcmd lsdg
State    Type    Rebal  Sector  Logical_Sector  Block       AU  Total_MB  Free_MB  Req_mir_free_MB  Usable_file_MB  Offline_disks  Voting_files  Name
MOUNTED  EXTERN  N         512             512   4096  4194304   1048576   664508                0          664508              0             Y  DATA/
MOUNTED  EXTERN  N         512             512   4096  4194304    524288   493956                0          493956              0             N  RECO/


[grid@test ~]$ acfsdriverstate supported
ACFS-9200: Supported
[grid@test ~]$ acfsdriverstate installed
ACFS-9203: true
[grid@test ~]$ acfsdriverstate loaded
ACFS-9203: true


## Data disk group용량으로 200G 생성
ASMCMD> volcreate -G data -s 200G vol1  


ASMCMD> volinfo -G data vol1
Diskgroup Name: DATA

     Volume Name: VOL1
     Volume Device: /dev/asm/vol1-29
     State: ENABLED
     Size (MB): 204800
     Resize Unit (MB): 64
     Redundancy: UNPROT
     Stripe Columns: 8
     Stripe Width (K): 1024
     Usage:
     Mountpath:



[root@test ~]# cd /dev/asm/
[root@test asm]# ll
합계 0
brwxrwx--- 1 root asmadmin 248, 14849  3월 25 12:22 commonstore-29
brwxrwx--- 1 root asmadmin 248, 14850  7월 26 08:23 vol1-29



[root@test asm]# mkfs -t acfs /dev/asm/vol1-29
mkfs.acfs: version                   = 19.0.0.0.0
mkfs.acfs: on-disk version           = 46.0
mkfs.acfs: volume                    = /dev/asm/vol1-29
mkfs.acfs: volume size               = 214748364800  ( 200.00 GB )
mkfs.acfs: Format complete.



## ACFS Mount
[root@test asm]# acfsutil registry  -a /dev/asm/vol1-29  /acfs
acfsutil registry: mount point /acfs successfully added to Oracle Registry


[root@test asm]# mount -t acfs /dev/asm/vol1-29 /acfs


[root@test asm]# df -h
Filesystem                          Size  Used Avail Use% Mounted on
...
(생략)
...
/dev/asm/vol1-29                    200G  779M  200G   1% /acfs




## 리소스 등록 확인 할 수 있음 이렇게 되어있으면 ASM이 올라오면서 자동으로 MOUNT가 됩니다.
[grid@test ~]$ crsctl stat res -t
--------------------------------------------------------------------------------------------------
Name           Target  State        Server                   State details        Local Resources
--------------------------------------------------------------------------------------------------
...생략
ora.data.vol1.acfs
               ONLINE  ONLINE       test              mounted on /acfs,STALE
...생략
--------------------------------------------------------------------------------

 

 

■ ACFS 삭제

## umount 
[root@test ~]# umount /acfs


## Volume 상태 확인
ASMCMD> volinfo -G data vol1
Diskgroup Name: DATA

     Volume Name: VOL1
     Volume Device: /dev/asm/vol1-485
     State: ENABLED
     Size (MB): 204800
     Resize Unit (MB): 64
     Redundancy: UNPROT
     Stripe Columns: 8
     Stripe Width (K): 1024
     Usage: ACFS
     Mountpath: /acfs


## Volume 제거
[grid@test ~]$ asmcmd voldelete -G DATA VOL1


## 확인
ASMCMD> volinfo -G data vol1   
volume vol1 not found in diskgroup data



[grid@test asm]$ df -h



## 용량 반납 확인
[grid@test ~]$ asmcmd lsdg
State    Type    Rebal  Sector  Logical_Sector  Block       AU  Total_MB  Free_MB  Req_mir_free_MB  Usable_file_MB  Offline_disks  Voting_files  Name
MOUNTED  EXTERN  N         512             512   4096  4194304   1048576   721132                0          721132              0             Y  DATA/
MOUNTED  EXTERN  N         512             512   4096  4194304    262144   109936                0          109936              0             N  RECO/


[grid@test ~]$ asmcmd lsdg
State    Type    Rebal  Sector  Logical_Sector  Block       AU  Total_MB  Free_MB  Req_mir_free_MB  Usable_file_MB  Offline_disks  Voting_files  Name
MOUNTED  EXTERN  N         512             512   4096  4194304   1048576   926968                0          926968              0             Y  DATA/
MOUNTED  EXTERN  N         512             512   4096  4194304    262144   109916                0          109916              0             N  RECO/

 

※ 참고 에러처리

[root@test ~]# umount /acfs
umount: /acfs: target is busy.
        (In some cases useful info about processes that use
         the device is found by lsof(8) or fuser(1))
umount.acfs: CLSU-00107: operating system function: OfsWaitProc; failed with error data: 32; at location: OWPR_1
umount.acfs: CLSU-00101: operating system error message: Broken pipe
umount.acfs: ACFS-04151: unmount of mount point /acfs failed


[root@test ~]# lsof /acfs

[root@test ~]# umount /acfs

 

 

 

참고

 

https://velog.io/@emawlrdl/ACFS

 

ACFS

ACFS( ASM Cluster File System )은 datafile을 제외한 나머지 Oracle및 Application 파일의 저장/관리를 위해 사용되는 시스템이다.About Oracle ACFSOracle ACFS is designed as a general-

velog.io