Ao final da página listo e explico, em formato de tabela, algumas propriedades interessantes.
Vendo Propriedades do Pool
Há mais de uma forma de ver as propriedades do seu pool.
Ver apenas uma Propriedade:
basta apenas digitar na frente de “zpool get” a propriedade que quer ver. Por exemplo, vamos ver a propriedade health
Se tiver apenas um pool não precisa digitar o nome dele, basta “zpool get health”. Se tiver mais de um pool terá que colocar o nome do que quer na frente, como em “zpool get health meuPool”.
elder@server01:~$ sudo zpool get health NAME PROPERTY VALUE SOURCE meuPool health ONLINE -
Ver mais de uma Propriedade:
elder@server01:~$ sudo zpool get health,free,allocated NAME PROPERTY VALUE SOURCE meuPool health ONLINE - meuPool free 160M - meuPool allocated 280K -
Ver todas as Propriedades:
elder@server01:~$ sudo zpool get all NAME PROPERTY VALUE SOURCE meuPool size 160M - meuPool capacity 0% - meuPool altroot - default meuPool health ONLINE - meuPool guid 7407269835664995631 - meuPool version - default meuPool bootfs - default meuPool delegation on default meuPool autoreplace off default meuPool cachefile - default meuPool failmode wait default meuPool listsnapshots off default meuPool autoexpand off default meuPool dedupditto 0 default meuPool dedupratio 1.00x - meuPool free 160M - meuPool allocated 280K - meuPool readonly off - meuPool ashift 0 default meuPool comment - default meuPool expandsize - - meuPool freeing 0 - meuPool fragmentation 9% - meuPool leaked 0 - meuPool multihost off default meuPool checkpoint - - meuPool load_guid 10782506437468650986 - meuPool autotrim off default meuPool feature@async_destroy enabled local meuPool feature@empty_bpobj active local meuPool feature@lz4_compress active local meuPool feature@multi_vdev_crash_dump enabled local meuPool feature@spacemap_histogram active local meuPool feature@enabled_txg active local meuPool feature@hole_birth active local meuPool feature@extensible_dataset active local meuPool feature@embedded_data active local meuPool feature@bookmarks enabled local meuPool feature@filesystem_limits enabled local meuPool feature@large_blocks enabled local meuPool feature@large_dnode enabled local meuPool feature@sha512 enabled local meuPool feature@skein enabled local meuPool feature@edonr enabled local meuPool feature@userobj_accounting active local meuPool feature@encryption enabled local meuPool feature@project_quota active local meuPool feature@device_removal enabled local meuPool feature@obsolete_counts enabled local meuPool feature@zpool_checkpoint enabled local meuPool feature@spacemap_v2 active local meuPool feature@allocation_classes enabled local meuPool feature@resilver_defer enabled local meuPool feature@bookmark_v2 enabled local
Alterando Propriedades do Pool
É fácil alterar propriedades do pool, mas há uma pegadinha: em propriedades que requerem uma string(ou texto) como argumento não há nenhuma maneira de voltá-las ao valor padrão após alteradas. para as demais propriedades, ao digitar um valor errado um erro irá aparecer na tela deixando você saber quais opções estão disponíveis, mas não irá fazer você saber qual é ou era o valor padrão. Mas podemos olhar para a coluna “SOURCE”, se o valor na coluna estiver como default então é esse valor o padrão, se estiver como “local” então é um valor definido pelo usuário.
Alterando o valor da propriedade comment
elder@server01:~$ sudo zpool set comment="meu contato admin@email.com" meuPool
Definindo Propriedades ao Criar o Pool
Uma propriedade pode ser criada durante a criação do pool. Para isso usamos a opção “-o”
zpool create -o ashift=12 meuPool raid1 sda sdb
Segue Tabela com Algumas Propriedades Explicadas do zpool
Propriedade Zpool |
Descrição | Apenas Leitura? |
Valor Padrão |
allocated | A quantidade de dados comprometido no zpool pelos datasets | sim | |
alroot | Identifica um diretório root alternativo. Se ativo esse novo diretório é adicionado aos pontos de montagens dentro do pool | ||
ashift | Essa propriedade pode ser definida somente durante a criação do pool. É o tamanho exponencial do setor do pool, usando potência de 2. Operações de I/O serão reajustadas aos limites especificados. Para drives com formato avançado com 4 Kb de limite o valor deveria ser definido para “ashift=12”, como 2^12 = 4096 | 9 ou 9^2 = 512 | |
autoexpand | Deve ser definito antes de substituir algum drive dentro do pool. Controla expansão automática quando o LUN subjacente está grande. Depois de todos os discos de um pool serem substituídos o pool irá automaticamente ter o novo tamanho. | off | |
autoreplace | Controla se um spare deve ser substituído automaticamente. Um dispositivo deve ser substitúido usando o comando “zpool replace” | off | |
Bootfs | Indica, se houver, qual é o dataset marcado como iniciável durante boot | sim | |
Cachefile | Controla a localização onde a configuração do pool faz cache. | /etc/zfs/zpool.cache | |
Capacity | Identifica qual porcentagem usada do espaço do pool | sim | |
Comment | Um comentário com informações adicionais feitas pelo administrador | ||
Dedupditto | Defini limite para bloco de duduplicação. | 0 | |
dedupratio | Taxa de deduplicação espacificado paro um pool, expressada como multiplicador. | sim | |
Delegation | Controla se um usuário sem privilégios(permissões) pode ter garantido permissões de acesso que são definidas para o dataset | on | |
expandsize | Quantidade de espaço não usado dentro de um pool ou dispositivo que pode ser usado para aumentar a capacidade de um pool. Esse espaço não usado pode ser qualquer espaço em um vdev que não está como online(zpool online -e). Esse espaço surge quando um LUN é dinamicamente expandido | ||
Failmode | Controla o comportamento do sistema caso ocorra uma falha catastrófica no pool. Essa falha geramente é um disco, por exemplo, danificado que perdeu conexão. Tempos as opções:
– wait: Bloqueia toda operação de I/O até aque a conectividade seja restabelecida – continue: retorna EIO para cada nova escrita no disco mas permite leitura para qualquer disco que esteja com o status de OK(saudável). Qualquer solicitação de escrita que ainda há de ser finalizada ou enviada para disco é bloqueada. -panic: exibe na tela do console uma mensagem e gera despejo de falha no sistema(system crash dump) |
wait | |
Free | Valor que identifica número de blocos não alocados no pool | sim | |
Guid | Propriedade que serve como valor único que identifica o pool. Parecido como o UUID do sistema de arquivos ext4 | Sim | |
health | Propriedade que identifica qual a situação atual do pool: ONLINE, DEGRADED, FAULTED, OFFLINE, REMOVED, ou UNAVAIL | sim | |
listsnapshots | Controla se informações de snapshots serão exibidas ao usar o comando “zfs list”. Se essa opção estiver desabilitada informações sobre snapshot podem ser exibidas usando o comando “zfs list -t snapshot” | off | |
Readonly | Controla se o pool irá ficar em modo “somente leitura” a fim de evitar escrita ou que dados sejam corrompidos | off | |
Size | Identifica o o valor total do pool | sim | |
Version | Identifica qual a versão atual do pool. Pode ser qualquer valor, de 1 até o último valor retornado pelo comando “zpool upgrade -v”. Essa propriedade pode ser usada quando uma versão específica é necessária para compatibilidade com versões anteriores | ||
Conclusão
Propriedades zpool são aplicadas para todo o pool, o que significa que os datasets irão herdar as propriedades do pool.
Como todos os demais comandos que executamos até aqui com zfs, ver e alterar propriedades também é algo simples de se fazer. Essa é algo vantajoso que temos com zfs.
Fontes: pthree.com