Ferramentas do usuário

Ferramentas do site


infra-estrutura:proxmox:adicionar_novo_storage_proxmox

Adicionar novo storage no PROXMOX

O PROXMOX trabalha com vários métodos de armazenamento, máquinas virtuais podem ser armazenadas em um ou vários armazenamentos locais ou em armazenamento compartilhado, como NFS ou iSCSI (NAS, SAN). Não há limites e você pode configurar quantos conjuntos de armazenamento desejar. Você pode usar todas as tecnologias de armazenamento disponíveis para Linux.

A biblioteca de armazenamento (pacote libpve-storage-perl) usa um sistema de plugins flexível para fornecer uma interface comum a todos os tipos de armazenamento. Isso pode ser facilmente adotado para incluir outros tipos de armazenamento no futuro.

Tipos de Armazenamento Existe basicamente dois tipos diferentes de tipos de armazenamento:

  • Armazenamento em nível de bloco: Permite armazenar grandes imagens não processadas. Normalmente, não é possível armazenar outros arquivos (ISO, backups, ..) nesses tipos de armazenamento. A maioria das implementações de armazenamento em nível de bloco modernas suportam instantâneos e clones. RADOS, Sheepdog e GlusterFS são sistemas distribuídos, replicando dados de armazenamento para diferentes nós.
  • Armazenamento em nível de arquivo: Eles permitem o acesso a um sistema de arquivos completo (POSIX). Eles são mais flexíveis e permitem que você armazene qualquer tipo de conteúdo. O ZFS é provavelmente o sistema mais avançado e tem suporte total para instantâneos e clones.

Storage pool type: lvmthin

LVM normalmente aloca blocos quando você cria um volume. Pools LVM thin alocam blocos quando são escritos. Este comportamento e chamado thin-provisioning, porque volumes podem ser muito maior do que o espaço fisicamente disponível.

Storage Pools

Cada pool de storage tem um tipo, e um identificador único definido como <STORAGE_ID>. Uma configuração de pool e parecido com a sintaxe abaixo:

<type>: <STORAGE_ID>
        <property> <value>
        <property> <value>
        ...

A linha <type>: <STORAGE_ID> indica uma definição de pool, qual e seguido da lista de propriedades. Para entendimento vamos olhar a configuração de armazenamento padrão após a instalação do PROXMOX. Ela contém um pool de armazenamento local chamado local, o qual aponta para o diretório /var/lib/vz e está sempre disponível. É criado também configurações adicionais de armazenamento dependendo do tipo de armazenamento selecionado na instalação.

dir: local
        path /var/lib/vz
        content iso,vztmpl,backup
 
# default image store on LVM based installation
lvmthin: local-lvm
        thinpool data
        vgname pve
        content rootdir,images
 
# default image store on ZFS based installation
zfspool: local-zfs
        pool rpool/data
        sparse
        content images,rootdir

Propriedades comum de armazenamento

Existe algumas propriedades de armazenamento que são comum para diferentes tipos de armazenamento

  • nodes: list de nomes de nós de cluster onde o armazenamento e acessivel. Pode se utilizar esta propriedade para restringir o acesso ao armazenamento para um conjunto limitado de nós.
  • content: Um armazenamento pode suportar vários tipos de conteúdo, por exemplo uma imagem de disco virtual, imagem iso de cdrom, modelos de conteiner ou diretorios raiz do conteiner. Nem todos os tipos de armazenamento suportam todos tipos de conteúdo. Pode-se utilizar as propriedades abaixo para o armazenamento selecionado.
    • images: Images de maquinas virtuais KVM-Qemu.
    • rootdir: permitir armazenar dados do conteiner.
    • vztmpl: modelos de templates.
    • backup: arquivo de backup (vzdump).
    • iso: imagens ISO's.
  • shared: marca o armazenamento como compartilhado.
  • disable: Você pode utilizar essa flag para desativar o armazenamento completamente.
  • maxfiles: Número máximo de arquivos de backup por maquina virtual. Utilize o valor 0 para deixar ilimitado.
  • format: formato padrão da imagem(raw|qcow2|vmdk).

Vamos adicionar novo storage no proxmox

Todas as configurações de armazenamento relacionadas ao Proxmox VE são armazenadas em um único arquivo de texto em /etc/pve/storage.cfg.

A adição de novo storage nós iremos trabalhar com LVM para adicionar um novo volume você precisa dos seguintes passos.

  • Criar um volume group
  • Criar um pool lvm-thin

Mas o tipo de storage você gostaria depende dos seus requisitos

Adicionado um novo LVM-thin storage

Criando um Volume Group

Vou assumir que você possue um disco vazio /dev/sdb, no qual você gostaria de criar um volume group chamado “vgdados”.

Cuidado: Por favor note que os comandos abaixo devem destruir todos os dados existentes no disco /dev/sdb.

Primeiro cria uma partição.

# sgdisk -N 1 /dev/sdb

Crie um Physical Volume (PV) sem confirmação e com 250K de metadatasize. Os 250K e um valor para testes quando colocar em produção adapte esse valor.

# pvcreate --metadatasize 250k -y -ff /dev/sdb1

Criar um volume group chamado “vgdados” em /dev/sdb1

# vgcreate vgdados /dev/sdb1

Você pode usar os comandos de linha normal do LVM para e criar pools LVM thin (veja man lvmthin para detalhes). assumimos que você já possue um LVM volume group chamado vgdados, os seguintes comandos criam um novo pool LVM thin (tamanho 100G) chamado dados:

# lvcreate -L 100G -n dados vgdados
# lvconvert --type thin-pool vgdados/dados

Configuração do novo storage no proxmox

Vamos criar um novo volume com as seguintes opções.

  • vgname - Nome do LVM volume group. Isto deve apontar para um volume group existente.
  • thinpool - O nome do pool LVM thin.

Configuração de exemplo (/etc/pve/storage.cfg)

lvmthin: dados-lvm
        thinpool dados
        vgname vgdados
        content rootdir,images

Lista os pools LVM thin.

Exemplo Listar os pools LVM thin disponiveis no volume group pve e vgdados:

root@pve:~# pvesm lvmthinscan pve
data
root@pve:~# pvesm lvmthinscan vgdados
dados
root@pve:~# 

Att.

Fontes:

https://pve.proxmox.com/wiki/Storage

https://pve.proxmox.com/wiki/Storage:_LVM_Thin