User Tools

Site Tools


Sidebar

cn:ccr:storage:s_g_c2014_soluzione2

Esercitazione 2

Fileset

Crea un independent fileset di nome fset1 nel file system c<#>fs

# mmcrfileset /dev/c16fs fset1 --inode-space new
Fileset fset1 created with id 1 root inode 524291.
# mmlsfileset /dev/c16fs fset1
Filesets in file system 'c16fs':
Name Status Path
fset1 Unlinked --

Crea il junction point /gpfs/c<#>fs/fset1 per il file set fset1 e visualizzalo

# mmlinkfileset c16fs fset1 -J /gpfs/c16fs/fset1
Fileset fset1 linked at /gpfs/c16fs/fset1

# mmlsfileset c16fs fset1
Filesets in file system 'c16fs':
Name Status Path
fset1 Linked /gpfs/c16fs/fset1

Crea un dependent fileset fset2 e relativo junction point in /gpfs/c<#>fs/fset2 e visualizza i fileset

# mmcrfileset /dev/c16fs fset2
Fileset fset2 created with id 2 root inode 220160.

# mmlinkfileset c16fs fset2 -J /gpfs/c16fs/fset2
Fileset fset2 linked at /gpfs/c16fs/fset2

# mmlsfileset c16fs -L
Filesets in file system 'c16fs':
Name Id RootInode ParentId Created InodeSpace MaxInodes AllocInodes Comment
root 0 3 -- Tue Nov 25 08:47:43 2014 0 4098048 507904 root fileset
fset1 1 524291 0 Tue Nov 25 08:53:08 2014 1 100352 100352
fset2 2 220160 0 Tue Nov 25 08:53:18 2014 0 0 0

Fileset quota

Verifica e nel caso attiva il controllo di quota per il file system c<#>fs

# mmlsfs c16fs -Q
flag value description
------------------- ------------------------ -----------------------------------
-Q none Quotas enforced
none Default quotas enabled

# mmumount /dev/c16fs -a
Tue Nov 25 09:44:26 CET 2014: mmumount: Unmounting file systems ...

# mmchfs /dev/c16fs -Q yes
mmchfs: Propagating the cluster configuration data to all
affected nodes. This is an asynchronous process.

# mmlsfs c16fs -Q
flag value description
------------------- ------------------------ -----------------------------------
-Q user;group;fileset Quotas enforced
none Default quotas enabled

# mmmount /dev/c16fs -a
Tue Nov 25 09:46:05 CET 2014: mmmount: Mounting file systems ...

# ls /gpfs/c16fs
fileset.quota fset1 fset2 group.quota user.quota

Definisci quota di 10 GB per i due fileset e verifica (non si vede quota!)

# mmedquota -j c16fs:fset1

# mmedquota -j c16fs:fset2

# mmlsquota -j fset1 /dev/fs
Block Limits | File Limits
Filesystem type KB quota limit in_doubt grace | files quota limit in_doubt grace Remarks
c16fs FILESET none

# mmlsquota -j fset2 /dev/c16fs
Block Limits | File Limits
Filesystem type KB quota limit in_doubt grace | files quota limit in_doubt grace Remarks
c16fs FILESET none

Aggiorna il calcolo delle quote e verifica la quota dei fileset

# mmcheckquota /dev/c16fs
fs: Start quota check
10 % complete on Tue Nov 25 09:58:28 2014
20 % complete on Tue Nov 25 09:58:28 2014
30 % complete on Tue Nov 25 09:58:28 2014
40 % complete on Tue Nov 25 09:58:28 2014
50 % complete on Tue Nov 25 09:58:28 2014
60 % complete on Tue Nov 25 09:58:28 2014
70 % complete on Tue Nov 25 09:58:29 2014
80 % complete on Tue Nov 25 09:58:29 2014
90 % complete on Tue Nov 25 09:58:29 2014
100 % complete on Tue Nov 25 09:58:29 2014
Finished scanning the inodes for c16fs.
Merging results from scan.

# mmlsquota -j fset1 /dev/c16fs
Block Limits | File Limits
Filesystem type KB quota limit in_doubt grace | files quota limit in_doubt grace Remarks
c16fs FILESET 0 10485760 10485760 0 none | 1 0 0 0 none

# mmlsquota -j fset2 /dev/c16fs
Block Limits | File Limits
Filesystem type KB quota limit in_doubt grace | files quota limit in_doubt grace Remarks
c16fs FILESET 0 20971520 20971520 0 none | 1 0 0 0 none

Abilita se necessario la feature –filesetdf sul file system

# df -k /gpfs/c16fs/fset1/
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/c16fs 4194304000 543744 4193760256 1% /gpfs/c16fs

# mmchfs /dev/c16fs --filesetdf

# df -k /gpfs/c16fs/fset1/
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/c16fs 10485760 0 10485760 0% /gpfs/c16fs

Storage pool

Rimuovi i due dischi nsd3 e nsd4 e reinseriscili in un pool di nome pool1

# mmlsdisk /dev/c16fs
disk driver sector failure holds holds storage
name type size group metadata data status availability pool
------------ -------- ------ ----------- -------- ----- ------------- ------------ ------------
nsd1 nsd 512 1 Yes Yes ready up system
nsd2 nsd 512 2 Yes Yes ready up system
nsd3 nsd 512 3 Yes Yes ready up system
nsd4 nsd 512 4 Yes Yes ready up system

# mmdeldisk /dev/c16fs "nsd3;nsd4"
Deleting disks ...
Scanning file system metadata, phase 1 ...
Scan completed successfully.
Scanning file system metadata, phase 2 ...
Scan completed successfully.
Scanning file system metadata, phase 3 ...
Scan completed successfully.
Scanning file system metadata, phase 4 ...
Scan completed successfully.
Scanning user file metadata ...
100.00 % complete on Tue Nov 25 10:04:21 2014
Scan completed successfully.
Checking Allocation Map for storage pool system
tsdeldisk completed.
mmdeldisk: Propagating the cluster configuration data to all
affected nodes. This is an asynchronous process.

# mmlsdisk /dev/c16fs
disk driver sector failure holds holds storage
name type size group metadata data status availability pool
------------ -------- ------ ----------- -------- ----- ------------- ------------ ------------
nsd1 nsd 512 1 Yes Yes ready up system
nsd2 nsd 512 2 Yes Yes ready up system

# cat nsd_pool1.lis
%nsd: device=/dev/vdd
nsd=nsd3
usage=dataOnly
failureGroup=3
pool=pool1
%nsd: device=/dev/vde
nsd=nsd4
usage=dataOnly
failureGroup=4
pool=pool1

# mmadddisk /dev/c16fs -F nsd_pool1.lis

The following disks of fs will be formatted on node c16-serv1:
nsd3: size 1048576000 KB
nsd4: size 1048576000 KB
Extending Allocation Map
Creating Allocation Map for storage pool pool1
Flushing Allocation Map for storage pool pool1
Disks up to size 9.1 TB can be added to storage pool pool1.
Checking Allocation Map for storage pool pool1
Completed adding disks to file system c16fs.
mmadddisk: Propagating the cluster configuration data to all
affected nodes. This is an asynchronous process.

# mmlsdisk /dev/c16fs
disk driver sector failure holds holds storage
name type size group metadata data status availability pool
------------ -------- ------ ----------- -------- ----- ------------- ------------ ------------
nsd1 nsd 512 1 Yes Yes ready up system
nsd2 nsd 512 2 Yes Yes ready up system
nsd3 nsd 512 3 No Yes ready up pool1
nsd4 nsd 512 4 No Yes ready up pool1

Cambia il disk usage dei dischi nsd1 e nsd2 in metadataOnly: i dati non potranno piu' stare sul pool system. Ribilancia il file system spostando i dati presenti sul pool system. Prova a creare un file vuoto ed un file con dati sul file system.

# mmchdisk /dev/c16fs change -d "nsd1:::metadataOnly:1::;nsd2:::metadataOnly:2::"
Attention: No data disks remain in the system pool.
Use mmapplypolicy to migrate all data left in the system pool to other storage pool.
Attention: Disk parameters were changed.
Use the mmrestripefs command with the -r option to relocate data and metadata.
Verifying file system configuration information ...
mmchdisk: Propagating the cluster configuration data to all
affected nodes. This is an asynchronous process.

# mmrestripefs /dev/c16fs -r
Scanning file system metadata, phase 1 ...
Scan completed successfully.
Scanning file system metadata, phase 2 ...
Scanning file system metadata for pool1 storage pool
Scan completed successfully.
Scanning file system metadata, phase 3 ...
Scan completed successfully.
Scanning file system metadata, phase 4 ...
Scan completed successfully.
Scanning user file metadata ...
100.00 % complete on Tue Nov 25 10:12:41 2014
Scan completed successfully.

# touch /gpfs/c16fs/empty_file

# ls -l /gpfs/c16fs/empty_file
-rw-r--r-- 1 root root 0 Nov 25 10:13 empty_file

# echo OK > /gpfs/c16fs/file
-bash: echo: write error: No space left on device

Definisci una placement policy per il file system c<#>fs che metta i dati del fileset fset1 nello storage pool pool1

# cat /root/placement_policy.txt
RULE 'pool1' SET POOL 'pool1' FOR FILESET (fset1)
RULE 'default' SET POOL 'system'

# mmchpolicy /dev/c16fs /root/placement_policy.txt
Validated policy `placement_policy.txt': parsed 2 Placement Rules, 0 Restore Rules, 0 Migrate/Delete/Exclude Rules,
0 List Rules, 0 External Pool/List Rules
Policy `placement_policy.txt' installed and broadcast to all nodes.
# echo OK > /gpfs/c16fs/fset1/file
# echo OK > /gpfs/c16fs/fset2/file
-bash: echo: write error: No space left on device
# echo OK > /gpfs/c16fs/file
-bash: echo: write error: No space left on device

Estendete la placement policy sullo storage pool pool1 a tutti i file

# cat /root/placement_policy.txt
RULE 'pool1' SET POOL 'pool1'
RULE 'default' SET POOL 'system'
# mmchpolicy /dev/c16fs /root/placement_policy.txt
Validated policy `placement_policy.txt': parsed 2 Placement Rules, 0 Restore Rules, 0 Migrate/Delete/Exclude Rules,
0 List Rules, 0 External Pool/List Rules
Policy `placement_policy.txt' installed and broadcast to all nodes.
# echo OK > /gpfs/c16fs/fset2/file
# echo OK > /gpfs/c16fs/file

cn/ccr/storage/s_g_c2014_soluzione2.txt · Last modified: 2014/11/25 23:10 by brunengo@infn.it