Site icon Ron Ekins' – Oracle Technology, DevOps and Kubernetes Blog

Oracle Automatic Storage Management Cluster File System (ACFS) – Resizing File Systems

So if you read my Getting Started post and have already created your first Oracle Automatic Storage Management (ASM) Clustered File System (ACFS) or have been using it for a while. You may have found yourself needing to resize the ACFS File System, this is easily completed with acfsutil utility.

As you can see below my 1TB ASM Clustered File System (ACFS) file system demobck is now 100% full, time to resize.

[oracle@z-rac1 ~]$ df -Th
Filesystem             Type Size  Used Avail Use% Mounted on
/dev/asm/demobck-142   acfs 1.0T 1022G  2.2G 100% /mnt/demobck

OK, let’s review the ACFS ASM DiskGroup using asmcmd

[oracle@z-rac1 ~]$ asmcmd lsdg -g ACFS
Inst_ID  State    Type    Rebal  Sector  Logical_Sector  Block       AU  Total_MB  Free_MB  Req_mir_free_MB  Usable_file_MB  Offline_disks  Voting_files  Name
       1  MOUNTED  EXTERN  N         512             512   4096  4194304  10485760  9437000                0         9437000              0             N  ACFS/
       2  MOUNTED  EXTERN  N         512             512   4096  4194304  10485760  9437000                0         9437000              0             N  ACFS/

And use asmcmd volume info to check size.

[oracle@z-rac1 ~]$ asmcmd volinfo -G ACFS DEMOBCK
 Diskgroup Name: ACFS
 
  Volume Name: DEMOBCK
  Volume Device: /dev/asm/demobck-142
  State: REMOTE
  Size (MB): 1048576
  Resize Unit (MB): 64
  Redundancy: UNPROT
  Stripe Columns: 8
  Stripe Width (K): 1024
  Usage: ACFS
  Mountpath: /mnt/demobck 

The asmcmd lsattr command can also be used used to list the ASM DiskGroup attributes, from the below we can see we are using non-Exadata storage, (cell.smart_scan_capable FALSE)

[oracle@z-rac1 ~]$ asmcmd lsattr -l -G  ACFS
 Name                        Value         
 access_control.enabled      FALSE         
 access_control.umask        066           
 appliance._partnering_type  GENERIC       
 ate_conversion_done         true          
 au_size                     4194304       
 cell.smart_scan_capable     FALSE         
 cell.sparse_dg              allnonsparse  
 compatible.advm             19.0.0.0.0    
 compatible.asm              19.0.0.0.0    
 compatible.rdbms            12.1.0.0.0    
 content.check               FALSE         
 content.type                data          
 content_hardcheck.enabled   FALSE         
 disk_repair_time            12.0h         
 failgroup_repair_time       24.0h         
 idp.boundary                auto          
 idp.type                    dynamic       
 logical_sector_size         512           
 phys_meta_replicated        true          
 preferred_read.enabled      FALSE         
 scrub_async_limit           1             
 scrub_metadata.enabled      TRUE          
 sector_size                 512           
 thin_provisioned            FALSE         
 vam_migration_done          false 

Resize ACFS Volume

OK let’s now resize our 1TB to 2TB using the acfsutil command.

[oracle@z-rac1 ~]$ acfsutil size 2T /mnt/demobck
acfsutil size: Resizing file system in steps
acfsutil size: Resizing file system to 1.0156 TB
...
acfsutil size: Resizing file system to 1.9844 TB
acfsutil size: Resizing file system to 2.0000 TB
acfsutil size: new file system size: 2199023255552 (2097152MB)

And let’s repeat the df , we can now see our file system is 2TB.

[oracle@z-rac1 ~]$ df -Th /mnt/demobck
Filesystem           Type  Size  Used Avail Use% Mounted on
/dev/asm/demobck-142 acfs  2.0T 1022G  1.1T  50% /mnt/demobck

From the above we can see my demobck file system in now only 50% utilised.

The acfsutil command provides a number of useful options to show volume and file system information.

ACFS volume info

[oracle@z-rac1 ~]$ acfsutil info storage -u GB -l ACFS

 Diskgroup: ACFS (79% free)
   total disk space:         10240.00
   ASM file space:           2048.00
   total free space:         8191.82
   redundancy type:          EXTERN

     Total space used by ASM non-volume files:
       used:                      0.00
       mirror used:               0.00
 
     volume: /dev/asm/demobck-142
       total:                   2048.00
       free:                    1026.12
       redundancy type:         unprotected
       file system:             /mnt/demobck  
 ----
 unit of measurement: GB

ACFS filesystem info

[oracle@z-rac1 ~]$ acfsutil info fs /mnt/demobck
 /mnt/demobck
     ACFS Version: 19.0.0.0.0
     on-disk version:       49.0
     compatible.advm:       19.0.0.0.0
     ACFS compatibility:    19.0.0.0.0
     flags:        MountPoint,Available,KiloSnap
     creation time:   Mon Nov  2 11:10:09 2020
     mount time:      Mon Nov  2 13:53:16 2020
     mount sequence number: 0
     number of nodes:       2
     allocation unit:       4096
     metadata block size:   4096
     volumes:      1
     total size:   2199023255552  (   2.00 TB )
     total free:   1101788835840  (   1.00 TB )
     file entry table allocation: 8781824
     primary volume: /dev/asm/demobck-142
         label:                 
         state:                 Available
         major, minor:          251, 72705
         logical sector size:   512
         size:                  2199023255552  (   2.00 TB )
         free:                  1101788835840  (   1.00 TB )
         metadata read I/O count:         251149
         metadata write I/O count:        140749
         total metadata bytes read:       1264570368  (   1.18 GB )
         total metadata bytes written:    841306112  ( 802.33 MB )
         ADVM diskgroup:        ACFS
         ADVM resize increment: 67108864
         ADVM redundancy:       unprotected
         ADVM stripe columns:   8
         ADVM stripe width:     1048576
     number of snapshots:  0
     snapshot space usage: 0  ( 0.00 )
     replication status: DISABLED
     compression status: DISABLED

[twitter-follow screen_name=’RonEkins’ show_count=’yes’]

Exit mobile version