Sun Microsystems, Inc.  Oracle System Handbook - ISO 7.0 May 2018 Internal/Partner Edition
   Home | Current Systems | Former STK Products | EOL Systems | Components | General Info | Search | Feedback

Asset ID: 1-71-2135190.1
Update Date:2018-02-04
Keywords:

Solution Type  Technical Instruction Sure

Solution  2135190.1 :   Oracle ZFS Storage Appliance: Why does the Free space reported not match the Available space?  


Related Items
  • Exalogic Elastic Cloud X4-2 Eighth Rack
  •  
  • Sun ZFS Storage 7320
  •  
  • Oracle SuperCluster M6-32 Hardware
  •  
  • Exalogic Elastic Cloud X3-2 Quarter Rack
  •  
  • Sun Storage 7210 Unified Storage System
  •  
  • Oracle ZFS Storage ZS3-BA
  •  
  • Oracle ZFS Storage Appliance Racked System ZS4-4
  •  
  • Exalogic Elastic Cloud X4-2 Full Rack
  •  
  • Exalogic Elastic Cloud X3-2 Full Rack
  •  
  • Oracle SuperCluster T5-8 Hardware
  •  
  • Oracle ZFS Storage ZS3-2
  •  
  • Exalogic Elastic Cloud X5-2 Hardware
  •  
  • Oracle SuperCluster M7 Hardware
  •  
  • Sun Storage 7410 Unified Storage System
  •  
  • Oracle ZFS Storage ZS3-4
  •  
  • Oracle Exalogic Elastic Cloud X2-2 Qtr Rack
  •  
  • Oracle Public Cloud Machine X5 Hardware
  •  
  • Exalogic Elastic Cloud X4-2 Hardware
  •  
  • Exalogic Elastic Cloud X3-2 Eighth Rack
  •  
  • Oracle Exalogic Elastic Cloud X2-2 One-Eighth Rack
  •  
  • Sun ZFS Storage 7420
  •  
  • Oracle SuperCluster T5-8 Half Rack
  •  
  • SPARC SuperCluster T4-4 Half Rack
  •  
  • Exalogic Elastic Cloud X5-2 Eighth Rack
  •  
  • Exalogic Elastic Cloud X5-2 Half Rack
  •  
  • Oracle SuperCluster T5-8 Full Rack
  •  
  • Exalogic Elastic Cloud X4-2 Half Rack
  •  
  • Sun Storage 7310 Unified Storage System
  •  
  • Oracle ZFS Storage ZS4-4
  •  
  • SPARC SuperCluster T4-4
  •  
  • Exalogic Elastic Cloud X4-2 Quarter Rack
  •  
  • Exalogic Elastic Cloud X5-2 Full Rack
  •  
  • Exalogic Elastic Cloud X3-2 Hardware
  •  
  • SPARC SuperCluster T4-4 Full Rack
  •  
  • Exalogic Elastic Cloud X5-2 Quarter Rack
  •  
  • Oracle Exalogic Elastic Cloud X2-2 Full Rack
  •  
  • Oracle Exalogic Elastic Cloud X2-2 Half Rack
  •  
  • Exalogic Elastic Cloud X3-2 Half Rack
  •  
  • Sun Storage 7110 Unified Storage System
  •  
  • Sun ZFS Backup Appliance
  •  
  • Sun ZFS Storage 7120
  •  
  • Oracle Exalogic Elastic Cloud X2-2 Hardware
  •  
  • Private Cloud Appliance X5-2 Hardware
  •  
Related Categories
  • PLA-Support>Sun Systems>DISK>ZFS Storage>SN-DK: ZS
  •  




In this Document
Goal
Solution
 Viewing space utilization
 Determining what has placed a reservation
 Scripting alternative
 Making changes to reservations
References


Applies to:

Oracle ZFS Storage ZS3-4 - Version All Versions to All Versions [Release All Releases]
Oracle ZFS Storage ZS3-BA - Version All Versions to All Versions [Release All Releases]
Oracle ZFS Storage ZS4-4 - Version All Versions to All Versions [Release All Releases]
Oracle Exalogic Elastic Cloud X2-2 One-Eighth Rack - Version X2 to X5 [Release X2 to X5]
Sun ZFS Backup Appliance - Version All Versions to All Versions [Release All Releases]
7000 Appliance OS (Fishworks)

Goal

Why does the Free space reported not match the Available space?

Solution

Often times the "Free" space is observed to be less than the "Available" space.
This is due to reservations being placed on projects or shares.

 

A reservation represents a guarantee of space for a particular project or filesystem. This takes available space away from the rest of the pool without increasing the actual space consumed by the filesystem.

 

Viewing space utilization

The space utilization of the appliance can be viewed in the browser interface under Status: DASHBOARD

Table in the BUI depicting space usage

or in the command line interface under 'status storage show'.

Example

ZFSSA:> status storage show
Storage:
pool-1:
Used 5.52T bytes
Available 16.2T bytes
Free 8.83T bytes
State degraded
Compression: 1x
Dedup: 1x
pool-2:
Used 296G bytes
Available 260G bytes
Free 65.0G bytes
State online
Compression: 1x
Dedup: 1x

 

Determining what has placed a reservation

It is possible to identify unused reservation space for a project or its shares in the browser interface by navigating to Shares: PROJECTS and selecting the project by double-clicking on it or clicking on the pencil "Edit entry" icon. The usage will be displayed on the left. It may be necessary to hide the Projects menu to see the usage table.

Table in the BUI depicting unused space reserved at a project level

This information is also visible in the appliance command line interface using the following commands:

shares set pool=<pool_name>
shares select <project_name> get space_unused_res
shares select <project_name> get space_unused_res_shares

In this example there is a 2TB reservation at the project level and a 500GB reservation at the share level.

ZFSSA:> shares select TestProject get space_unused_res
space_unused_res = 1.51T
ZFSSA:> shares select TestProject get space_unused_res_shares
space_unused_res_shares = 425G

In this next example there is a no reservation at the project level and a 1TB reservation at the share level.

ZFSSA:> shares select TestProject get space_unused_res
space_unused_res = 0
ZFSSA:> shares select TestProject get space_unused_res_shares
space_unused_res_shares = 949G

 

Once a project is identified as containing shares with a reservation set you can query each share under that project to determine which has the unused reservation space.
In the browser interface navigate to Shares: SHARES and select the share by double-clicking on it or clicking on the pencil "Edit entry" icon. The usage will be displayed on the left. It may be necessary to hide the Projects menu to see the usage table.

Table in the BUI depicting unused space reserved at a share level

In the appliance command line interface display unused reservation space of a share using.

shares set pool=<pool_name>
shares select <project_name> select <share_name> get space_unused_res

example:

ZFSSA:> shares select TestProject select TestShare2 get space_unused_res
space_unused_res = 500G

Scripting alternative

Manually checking each project and share may take a lot of time on an appliance with many shares.
An alternative is to use the following script in the appliance command line interface to report all projects and shares with unused reservation space.

Oracle® ZFS Storage Appliance Administration Guide: Accessing the CLI Script Environment

script
fmt = '%-62s %-18s\n';
printf(fmt, 'POOL: PROJECT/SHARE', 'UNUSED RESERVATION');
run('cd /');
run('shares');
pools = choices('pool');
for (p = 0; p < pools.length; p++) {
 set('pool', pools[p]);
 projects = list();
 for (i = 0; i < projects.length; i++) {
  run('select ' + projects[i]);
  reservation_bytes = get('space_unused_res');
  if (reservation_bytes != "0") {
   project = pools[p] + ': ' + projects[i];
   var reservation_bytes = get('space_unused_res');
   var remain = reservation_bytes % 1073741824;
   var reservation = ((reservation_bytes - remain) / 1073741824) + " GB";
   if (reservation == "0 GB") {
    reservation = "< 1 GB"
   }
   printf(fmt, project, reservation);
  }
  shares = list();
  for (j = 0; j < shares.length; j++) {
   try {
    run('select ' + shares[j]);
    share = pools[p] + ': ' + projects[i] + '/' + shares[j];
    var reservation = get('space_unused_res');
    if (reservation != "0") {
     var reservation_bytes = get('space_unused_res');
     var remain = reservation_bytes % 1073741824;
     var reservation = ((reservation_bytes - remain) / 1073741824) + " GB";
     if (reservation == "0 GB") {
      reservation = "< 1 GB"
     }
     printf(fmt, share, reservation);
    }
   } catch (err) {}
   run('cd ..');
  }
  run('cd ..');
 }
}
.

 

Making changes to reservations

If you choose to make changes to a reservation set on a project or share please be aware of any impacts reducing the reservation may have on your clients before doing so.

Oracle® ZFS Storage Appliance Administration Guide: File System and Project Settings

 

Checked for Currency - 04-FEB-2018

 

References

<NOTE:1670200.1> - Oracle ZFS Storage Appliance: How To Determine Filesystem Free Space
<NOTE:1565028.1> - Oracle ZFS Storage Appliance: System reports not enough space available during attempt to increase the space reservation on a file system.

Attachments
This solution has no attachment
  Copyright © 2018 Oracle, Inc.  All rights reserved.
 Feedback