The Projects UI is accesssed from "Shares -> Projects". This presents a list of all projects on the system, although projects can be selected by using the project panel or by clicking the project name while editing a share within a project.
After navigating to the project view, you will be presented with a list of projects on the system. Alternatively, you can navigate to the shares screen and open the project panel for a shortcut to projects. The panel does not scale well to large numbers of projects, and is not a replacement for the complete project list. The following fields are displayed for each project:
The following tools are available for each project:
To edit a project, click on the pencil icon or double-click the row in the project list, or click on the name in the project panel. This will select the project, and give several different tabs to choose from for editing properties of the project. The complete set of functionality can be found in the section for each tab:
The name of the project is presented in the upper left corner to the right of the project panel. The name of the project can also be changed by clicking on the project name and entering new text into the input. You will be asked to confirm this action, as it will require disconnecting active clients of the project.
On the left side of the view (beneath the project panel when expanded) is a table explaining the current space usage statistics. If any properties are zero, then they are excluded from the table. The majority of these properties are identical between projects and shares, though there are some statistics that only have meaning for projects.
See the shares section.
Sum of all referenced data for all shares within the project, in addition to a small amount of project overhead. See the shares section for more information on how referenced data is calculated for shares.
Sum of all snapshot data for all shares, and any project snapshot overhead. See the shares section for more information on how snapshot data is calculated for shares.
Unused reservation for the project. This only includes data not currently used for the project level reservation. It does not include unused reservations of any shares contained in the project.
Sum of unused reservation of all shares. See the shares section for more information on how unused reservation is calculated for shares.
The sum of referenced data, snapshot data, unused reservation, and unused reservation of shares.
The left side of the shares view also shows static properties when editing a particular project. These properties are read only, and cannot be modified.
See the shares section for a complete description.
To create a project, view the list of projects and click the button. Alternatively, the clicking the "Add..." button in the project panel will present the same dialog. Enter the project name and click apply to create the project.
The projects CLI is under shares
To select a project, use the select command:
clownfish:> shares clownfish:shares> select default clownfish:shares default> get aclinherit = restricted aclmode = discard atime = true checksum = fletcher4 compression = off compressratio = 100 copies = 1 creation = Thu Oct 23 2009 17:30:55 GMT+0000 (UTC) mountpoint = /export quota = 0 readonly = false recordsize = 128K reservation = 0 secondarycache = all nbmand = false sharesmb = off sharenfs = on snapdir = hidden vscan = false sharedav = off shareftp = off default_group = other default_permissions = 700 default_sparse = false default_user = nobody default_volblocksize = 8K default_volsize = 0 space_data = 43.9K space_unused_res = 0 space_unused_res_shares = 0 space_snapshots = 0 space_available = 12.0T space_total = 43.9K clownfish:shares default>
A project is created using the project command. The properties can be modified as needed before committing the changes:
clownfish:shares> project home clownfish:shares home (uncommitted)> get mountpoint = /export (default) quota = 0 (default) reservation = 0 (default) sharesmb = off (default) sharenfs = on (default) sharedav = off (default) shareftp = off (default) default_group = other (default) default_permissions = 700 (default) default_sparse = true (default) default_user = nobody (default) default_volblocksize = 8K (default) default_volsize = 0 (default) aclinherit = (default) aclmode = (default) atime = (default) checksum = (default) compression = (default) copies = (default) readonly = (default) recordsize = (default) secondarycache = (default) nbmand = (default) snapdir = (default) vscan = (default) custom:contact = (default) custom:department = (default) clownfish:shares home (uncommitted)> set sharenfs=off sharenfs = off (uncommitted) clownfish:shares home (uncommitted)> commit clownfish:shares>
A project can be destroyed using the destroy command:
clownfish:shares> destroy home This will destroy all data in "home"! Are you sure? (Y/N) clownfish:shares>
This command can also be run from within the project context after selecting a project.
A project can be renamed using the rename command:
clownfish:shares> rename default home clownfish:shares>
In an active/active cluster configuration, one node can be in control of both pools while failed over. In this case, the CLI context will show the current pool in parenthesis. You can change pools using the set command from the toplevel shares context:
clownfish:shares (pool-0)> set pool=pool-1 clownfish:shares (pool-1)>
Once the pool context has been select, projects and shares are managed within that pool using the standard CLI interfaces.
The following properties are available in the CLI, with their equivalent in the BUI. Properties can be set using the standard CLI commands get and set. In addition, properties can be inherited from the parent project
by using the unset command.