Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
languagebash
$ dmg pool create --size=10G
Creating DAOS pool with automatic storage allocation: 10 GB NVMe + 6.00% SCM
Pool created with 100.00% SCM/NVMe ratio
-----------------------------------------
  UUID          : 0a6003c6-23a7-4cb5-8895-c004ca2b75f5
  Service Ranks : 0                                   
  Storage Ranks : [0-1]                               
  Total Size    : 10 GB                               
  SCM           : 10 GB (5.0 GB / rank)               
  NVMe          : 0 B (0 B / rank)                  

$ dmg storage query usage
Hosts   SCM-Total SCM-Free SCM-Used NVMe-Total NVMe-Free NVMe-Used 
-----   --------- -------- -------- ---------- --------- --------- 
boro-35 17 GB     12 GB    29 %     0 B        0 B       N/A       
boro-8  17 GB     11 GB    36 %     0 B        0 B       N/A

dmg pool

...

create for specified user and group

Code Block
languagebash
$# dmgCreate poola list1GB Poolpool UUIDfor user:user_1 group:admin_group1
$ dmg pool create --group=admin_group1 --user=user_1 --size=1G
Creating DAOS pool with automatic storage allocation: 1.0 GB NVMe + 6.00% SCM
Pool created with 100.00% SCM/NVMe Svc Replicas 
ratio
-----------------------------------------
  UUID          : 64efd827-6bcb-434b-ab78-2010984539ff
  Service Ranks : 0           ------------  5f362dc2-6154-44c7-8348-9de6f0a3d5d1 0            

dmg pool destroy

Code Block
languagebash
$ dmg pool destroy --pool=$DAOS_POOL Pool-destroy command succeeded  $
dmg pool listStorage noRanks pools: in0 system  $ dmg storage query usage Hosts   SCM-Total SCM-Free SCM-Used NVMe-Total NVMe-Free NVMe-Used  -----   --------- -------- -------- ---------- --------- ---------  boro-35 17 GB     17
GB  Total Size 0 %  : 1.0 GB  0 B        0 B       N/A        boro-8  17 GB
  SCM  17 GB    0 %   : 1.0 GB (1.0 BGB / rank)              
  0NVMe B       N/A  : 0 B (0 B / rank)

dmg pool

...

create with security setting

Code Block
languagebash
# Create a pool with access-control via a access-list test file
$ dmg pool create --size=10G=1G --acl-file=/tmp/acl_test.txt
Creating DAOS pool with automatic storage allocation: 101.0 GB NVMe + 6.00% SCM
Pool created with 100.00% SCM/NVMe ratio
-----------------------------------------
  UUID          : cf8602614533f724-4fde7234-44034c70-b10b946c-abe8eb9dd32fb7a53d7d0ddf
  Service Ranks : 0                                   
  Storage Ranks : [0-1]0                                   
  Total Size    : 101.0 GB                               
  SCM           : 101.0 GB (51.0 GB / rank)              
   NVMe          : 0 B (0 B / rank)      

# Example of access entries on /tmp/acl_test.txt
#  pool OWNER:    $ dmg pool listread-write Poolpermission UUID
#  pool owner GROUP: read-write permission
#  test_user1:       write-only permission
#  test_user2:         Svc Replicas 
---------   read-only permission
#  test_group1:      write-only permission
#  test_group2:      read-only permission
#  EVERYONE else:    no  ------------ 
cf860261-4fde-4403-b10b-abe8eb9dd32f 0            

permission
A::OWNER@:rw 
A:G:GROUP@:rw
A::test_user1@:w
A::test_user2@:r
A:G:test_group1@:w 
A:G:test_group2@:r
A::EVERYONE@:

# Get pool security acl
$ dmg pool queryget-acl --pool=$DAOS_POOL
Pool cf860261-4fde-4403-b10b-abe8eb9dd32f, ntarget=16, disabled=0, leader=0, version=1
Pool space info:
- Target(VOS) count:16
- SCM:
  Total size: 10 GB
  Free: 10 GB, min:625 MB, max:625 MB, mean:625 MB
- NVMe:
  Total size: 0 B
  Free: 0 B, min:0 B, max:0 B, mean:0 B
Rebuild idle, 0 objs, 0 recs
  

dmg pool create for specified user and group

Code Block
languagebash
# Create a 1GB pool for user:user_1 group:admin_group1
$ dmg pool create --group=admin_group1 --user=user_1 --size=1G
Creating DAOS pool with automatic storage allocation: 1.0 GB NVMe + 6.00% SCM
Pool created with 100.00% SCM/NVMe ratio
-----------------------------------------
  UUID# Entries:
A::OWNER@:rw
A::test_user1@:w
A::test_user2@:r
A:G:GROUP@:rw
A:G:test_group1@:w
A:G:test_group2@:r
A::EVERYONE@:

# Update pool access entry for the existing test_group1 to no-permission 
dmg pool update-acl -e A:G:test_group1@: --pool=$DAOS_POOL

# Update pool access entry for a new user test_user3 with rw permission
dmg pool update-acl -e A::test_user3@:rw --pool=$DAOS_POOL

# Get pool security acl after update-acl
$ dmg pool get-acl --pool=$DAOS_POOL
# Entries:
A::OWNER@:rw
A::test_user1@:w
A::test_user2@:r 
A::test_user3@:rw 
A:G:GROUP@:rw
A:G:test_group1@:
A:G:test_group2@:r
A::EVERYONE@:

dmg pool list

Code Block
languagebash
$ dmg pool list
Pool UUID                            Svc Replicas :
64efd827------6bcb-434b-ab78-2010984539ff   Service Ranks : 0                      ------------ 
5f362dc2-6154-44c7-8348-9de6f0a3d5d1 0             Storage Ranks : 0                                   
  Total Size    : 1.0 GB        

dmg pool destroy

Code Block
languagebash
$ dmg pool destroy --pool=$DAOS_POOL
Pool-destroy command succeeded

$ dmg pool list
no pools in system

$ dmg storage query usage
Hosts   SCM-Total SCM-Free SCM-Used NVMe-Total NVMe-Free NVMe-Used 
-----   --------- -------- -------- ---------- --------- --------- 
boro-35 17 GB     17 GB    0 %      0 B        0 B       N/A  SCM     
boro-8  17 GB  : 1.0 GB (1.017 GB /  rank) 0 %      0 B        NVMe0 B       N/A  : 0 B (0 B / rank)

dmg pool

...

query

Code Block
languagebash
# Create a pool with access-control via a access-list test file
$ dmg pool create --size=1G --acl-file=/tmp/acl_test.txt10G
Creating DAOS pool with automatic storage allocation: 1.010 GB NVMe + 6.00% SCM
Pool created with 100.00% SCM/NVMe ratio
-----------------------------------------
  UUID          : 4533f724cf860261-72344fde-4c704403-946cb10b-b7a53d7d0ddfabe8eb9dd32f
  Service Ranks : 0                                   
  Storage Ranks : [0-1]                               
   
  Total Size    : 1.010 GB                               
  SCM           : 1.010 GB (15.0 GB / rank)               
  NVMe          : 0 B (0 B / rank)      

# Example of access entries on /tmp/acl_test.txt
#  pool OWNER:            read-write permission  #  pool owner GROUP: read-write
permission
#  test_user1:    $ dmg pool list
Pool UUID   write-only permission #  test_user2:       read-only permission #  test_group1:      write-only permission #  test_group2:   Svc Replicas 
read-only permission
#  EVERYONE else:---------        no permission A::OWNER@:rw  A:G:GROUP@:rw A::test_user1@:w A::test_user2@:r A:G:test_group1@:w  A:G:test_group2@:r A::EVERYONE@:  # Get pool security acl $ dmg pool get-acl --pool=$DAOS_POOL
# Entries:
A::OWNER@:rw
A::test_user1@:w
A::test_user2@:r
A:G:GROUP@:rw
A:G:test_group1@:w
A:G:test_group2@:r
A::EVERYONE@:

# Update pool access entry for the existing test_group1 to no-permission 
dmg pool update-acl -e A:G:test_group1@: --pool=$DAOS_POOL

# Update pool access entry for a new user test_user3 with rw permission
dmg pool update-acl -e A::test_user3@:rw --pool=$DAOS_POOL

# Get pool security acl after update-acl
$ dmg pool get-acl --pool=$DAOS_POOL
# Entries:
A::OWNER@:rw
A::test_user1@:w
A::test_user2@:r 
A::test_user3@:rw 
A:G:GROUP@:rw
A:G:test_group1@:
A:G:test_group2@:r
A::EVERYONE@:

 ------------ 
cf860261-4fde-4403-b10b-abe8eb9dd32f 0            

$ dmg pool query --pool=$DAOS_POOL
Pool cf860261-4fde-4403-b10b-abe8eb9dd32f, ntarget=16, disabled=0, leader=0, version=1
Pool space info:
- Target(VOS) count:16
- SCM:
  Total size: 10 GB
  Free: 10 GB, min:625 MB, max:625 MB, mean:625 MB
- NVMe:
  Total size: 0 B
  Free: 0 B, min:0 B, max:0 B, mean:0 B
Rebuild idle, 0 objs, 0 recs
  

DAOS tool (daos) usage for daos_client

...