Oracle ACFS Command-Line Tools for Exascale

This topic provides a summary of managing ACFS file systems on Exadata Exascale storage.

ACFS file systems can be created on Exascale storage in the same way that they are created on ASM storage. The management and features of ACFS are identical, including the ACFS snapshot commands. Additionally, on Exascale, one can create and manage volume level snapshots, clones and backups. These are managed dynamically through ACFS on a mounted or unmounted file system. These volume snapshots consume no additional space in the file system. The snapshots and clones are mounted on a separate mountpoint from the source mountpoint and can also be mounted elsewhere in the Exadata RoCE fabric on another RAC cluster. The volume backups are created in OCI object storage.

See Also:

See Using Oracle Exascale for more information about creating and managing Exascale Direct Volumes and the differing volume device file naming conventions.

Note:

ACFS Accelerator operations are not supported with Exascale volumes.

Table 6-7 Summary of Oracle ACFS commands for Exascale

Command Description

acfsutil volsnap create

Creates a volume level snapshot of a mounted ACFS file system.

acfsutil volsnap delete

Deletes a volume level snapshot of an ACFS file system on an Exascale volume.

acfsutil volsnap backup

Creates a volume level backup of an ACFS file system on an Exascale volume.

acfsutil volsnap info

Provides the ability to query information about Exascale volume snapshots taken of ACFS file systems.

Table 6-8 Summary of existing Oracle ACFS commands enhanced for Exascale

Command Description

acfsutil info fs

Support added for Exascale volumes to the default display of ACFS file system information.

acfsutil cluster info

  • Can now check if the Oracle Appliance is Exascale
  • Can identify the origination of cluster membership.

acfsutil volsnap create

Purpose

Create a volume level snapshot of a mounted ACFS file system.

Syntax and Description

acfsutil [-h] volsnap create
[-r] [-f] [-n <snap_name>] [-b <backup_name>] {<mountpoint>|<volume_path>}
-w [-f|-s] -n <snap_name> [-b <backup_name>] {<mountpoint>|<volume_path>}

Table 6-9 Options for the acfsutil volsnap create command

Option Description

-r

Creates a read-only EDV volume snapshot.

-w

Creates a writeable EDV volume snapshot.

-f

Freezes file system during operation.

-n <snap_name>

Name of EDV volume snapshot to be created.

-b <backup_name>

Name of EDV backup volume to be created.

<mountpoint>

ACFS file system mount point on EDV volume.

<volume_path>

Unmounted ACFS file system on EDV volume.

Expected Behavior

Default: Create an immediately accessible, read-only snapshot with a name that has the form <origvolume>_<timestamp>. The timestamp will have the form YYMMDDHHMMSS. Prior to the creation of a read-only snapshot, the file system will be frozen to ensure crash consistent semantics.

If a snapshot name is supplied, it can be of the form “/dev/exc/<snap_name>” or “<snap_name>”. <snap_name> must be 128 characters or less.

If the backup option is specified, a backup of the volume with the supplied name will be created in the object store. The supplied name must be 128 characters or less. The backup that is created can be restored and attached to a particular node or cluster using ESCLI.

At the conclusion of the command, the created snapshot volume will be available in /dev/exc/<snap_name> and it will have the same characteristics as the parent volume:

  • A node-local volume that is snapped should result in a node-local snapshot.
  • A cluster volume that is snapped should result in a snapshot that is available on all nodes in the cluster.
  • The file system on the created volume snapshot will have the same ACFS compatibility as the parent volume.
  • Some ACFS features that require initialization, such as Replication, that were active on the original volume will require new initialization on the created volume snapshot.

Requirements

The ACFS file system to be snapped must be on an Exascale volume. Exascale must be configured appropriately to support the -b option. This includes configuration of the OCI object store and enabling volume backups.

Error Handling

  • -n without name: ACFS-00519
  • -b without name: ACFS-00519
  • -n with name that exceeds 128 (EXC device name max): ACFS-03043
  • -b with name that exceeds 128 (EXC device name max): ACFS-03043
  • If any argument is supplied more than once, ACFS-00519 will be returned with usage.
  • Too many arguments: ACFS-00519
  • Insufficient arguments (no mount point): ACFS-00535
  • Supplied mountpoint not ACFS: ACFS-03037
  • Mountpoint or device not accessible: ACFS-03001
  • EXC snap creation failed: ACFS-03913 plus errno information.

Examples

The following example show the use of the acfsutil volsnap create command.

This example shows how to capture a snapshot of an ACFS file system when the file system is mounted.

$ sudo ./acfsutil volsnap create /usmmnt
Creation of volume snapshot testvol_200422160634 complete.

This example shows how to capture a snapshot of an ACFS file system when the file system is unmounted.

$ sudo ./acfsutil volsnap create /dev/exc/testvol
Creation of volume snapshot testvol_200422160644 complete.

acfsutil volsnap delete

Purpose

Delete a volume level snapshot of an ACFS file system on an Exascale volume.

Syntax and Description

acfsutil [-h] volsnap delete <snap_name>

Table 6-10 Options for the acfsutil volsnap delete command

Option Description

<snap_name>

Name of EDV volume snapshot to be deleted.

Expected Behavior

Delete volume snapshot associated with the specified ACFS file system.

Requirements

  • Linux root privileges are required.
  • Specified volume snapshot must be of an ACFS file system.
  • Specified volume snapshot to be deleted cannot be actively mounted as an ACFS file system at the time of deletion.
  • Specified snapshot name should have the form “/dev/exc/<snap_name>” or “<snap_name>”.

Error Handling

  • Command without name: ACFS-00535
  • Command with a name that exceeds 128 (EXC device name max): ACFS-03043
  • Too many arguments: ACFS-00519
  • Insufficient arguments (no mount point): ACFS-00535
  • Invalid snapshot supplied: ACFS-03001
  • Snapshot not associated with ACFS file system: ACFS-03911
  • Snapshot cannot be deleted because it is in use: ACFS-03914
  • EXC snapshot delete ioctl failed: ACFS-03912 and errno information

Examples

The following examples show the use of the acfsutil volsnap delete command.

The acfsutil volsnap delete command cannot delete a volume snapshot that is mounted.

$ sudo /bin/mount -t acfs /dev/exc/testvol_200422151134 /rousmmnt/
$ /bin/mount | grep /rousmmnt
/dev/exc/testvol_200422151134 on /rousmmnt type acfs (ro,relatime,device,rootsuid,ordered,local)
$ sudo touch /rousmmnt/new_file
touch: cannot touch ‘rousmmnt/new_file’: Read-only file system                
$ sudo ./acfsutil volsnap delete testvol_200422151134
acfsutil volsnap delete: ACFS-03914: Volume snapshot /dev/exc/testvol_200422151134 cannot be deleted because it is in use.

Once unmounted, the volume snapshot can be deleted.

$ sudo umount /rousmmnt
$ sudo /sbin/acfsutil volsnap delete /dev/exc/testvol_200422151134
Deletion of volume snapshot testvol_200422151134 complete.

acfsutil volsnap backup

Purpose

Create a volume level backup of an ACFS file system on an Exascale volume.

Syntax and Description

acfsutil [-h] volsnap backup [[-b <backup_name>] {<mountpoint>|<snap_name>}] 
| [-q {<mountpoint>|<snap_name>|<backupid>}]

Table 6-11 Options for the acfsutil volsnap backup command

Option Description

-b

Specifies name of EDV volume backup to be created

-q

Query volume backup information.

<backup_name>

Name of backup to be created.

<snap_name>

Name of EDV volume snapshot tof ACFS file system.

<backupid>

Unique identifier for backup.

Expected Behavior

Create volume level backup of the specified ACFS file system.

A backup of the volume with the supplied name will be created in the object store. The supplied name must be 128 characters or less.

The backup that is created can be further managed using ESCLI.

Requirements

ACFS file system to be backed up must be on an Exascale volume.

Exascale must be configured appropriately to support this command. This includes configuration of the OCI object store and enabling volume backups.

Error Handling

  • Command without name: ACFS-00535
  • Command with a name that exceeds 128 (EXC device name max): ACFS-03043
  • Too many arguments: ACFS-00519
  • Insufficient arguments (no mount point): ACFS-00535
  • Invalid snapshot supplied: ACFS-03001
  • EXC snapshot backup ioctl failed: ACFS-03954 and errno information

Examples

The following example shows the use of the acfsutil volsnap backup command.

This example queries backups of mounted ACFS on Exascale volume.

$ sudo /sbin/acfsutil volsnap backup -q /usmmnt
    OCI backup id:               2b1:9df2801c90fa486481108d43c03d73f0
    OCI backup name:             testvol2_240418201924
    creation time:               Thu Apr 18 20:19:31 2024
    size                         11796480  (  11.25 MB )
    related volume snapshot id:  2.1:c7866e1d462348068465a17c4da87972
    parent file system:          /dev/exc/testvol2 on /usmmnt

    number of volume backups:    1

acfsutil volsnap info

Purpose

Provide the ability to query information about Exascale volume snapshots taken of ACFS file systems. Return information about a single Exascale volume snapshot or all the volume snapshots.

Syntax and Description

acfsutil [h] volsnap info {<mountpoint>|<snap_name>}

Table 6-12 Options for the acfsutil volsnap info command

Option Description

<snap_name>

Name of EDV volume snapshot of ACFS file system.

<mountpoint>

ACFS file system mount point on EDV volume.

Expected Behavior

Display information about a volume snapshot that was taken of an ACFS file system.

Display a list of volume snapshots associated with the specified ACFS file system.

If specified, snapshot name should have the form “/dev/exc/<snap_name>” or “<snap_name>

If the supplied ACFS mount point is associated with an Exascale snapshot, the information about that Exascale volume snapshot will be returned along with the list of volume snapshots associated with the parent.

Requirements

ACFS file system must be on an Exascale volume.

Exascale volume snapshot was created using acfsutil volsnap create.

Error Handling

  • snap_name name that exceeds 128 (EXC device name max): ACFS-03043
  • Too many arguments: ACFS-00519
  • Invalid snapshot supplied: ACFS-03001

Examples

The following examples show the use of the acfsutil volsnap info command.

Display general information about a snapshot such as the name, path, parent, and creation time.

$ sudo /sbin/acfsutil volsnap info testvol2_240418202047
    volume snapshot name:        testvol2_240418202047
    volume snapshot path:        /dev/exc/testvol2_240418202047
    RO snapshot or RW snapshot:  RO
    creation time:               Thu Apr 18 20:20:47 2024
    parent volume device name:   testvol2
    parent mount path:           /usmmnt
    active ACFS features:        

    number of volume snapshots:  1

$ sudo /sbin/acfsutil volsnap info snaprw
    volume snapshot name:        snaprw
    volume snapshot path:        /dev/exc/snaprw
    RO snapshot or RW snapshot:  RW
    creation time:               Thu Apr 18 20:20:53 2024
    parent RO volume snapshot device name:   testvol2_240418202047
    active ACFS features:        

    number of volume snapshots:  1

This example shows how to obtain a list of volume snapshots # associated with a file system.

$ sudo /sbin/acfsutil volsnap info /usmmnt
    volume snapshot name:        testvol2_240418201924
    volume snapshot path:        /dev/exc/testvol2_240418201924
    RO snapshot or RW snapshot:  RO
    creation time:               Thu Apr 18 20:19:25 2024
    parent volume device name:   testvol2
    parent mount path:           /usmmnt
    active ACFS features:        
    OCI backup id:               2b1:9df2801c90fa486481108d43c03d73f0
    OCI backup name:             testvol2_240418201924

    volume snapshot name:        testvol2_240418202047
    volume snapshot path:        /dev/exc/testvol2_240418202047
    RO snapshot or RW snapshot:  RO
    creation time:               Thu Apr 18 20:20:47 2024
    parent volume device name:   testvol2
    parent mount path:           /usmmnt
    active ACFS features:        

    volume snapshot name:        snaprw
    volume snapshot path:        /dev/exc/snaprw
    RO snapshot or RW snapshot:  RW
    creation time:               Thu Apr 18 20:20:53 2024
    parent RO volume snapshot device name:   testvol2_240418202047
    active ACFS features:        

    number of volume snapshots:  3