====== Como montar o serviço nfs dentro do XenServer usando parte do espaço livre do próprio localstorage ======
* Criando o disco virtual e compartilhando-o por nfsserver
echo adicionando suporte xfs, dentro do console do xenserver3
vi /etc/yum.repos.d/CentOS-Base.repo
# uncomment baseurl line (remove #)
# change baseurl=http://vault.centos.org/7.2.1511/os/$basearch/
# change enabled=1
yum -v repolist all
yum install xfsprogs xfsdump
echo pegando o nome_id do localstorage do Xenserver3
vgs
echo criando uma lvm para o xen_nfs dentro do localstorage do XenServer3 (inicialmente com 1 terabyte, para aumento posterior)
lvcreate -L 1T -n xen_nfs VG_XenStorage-d84a5395-d9e4-c3da-b22c-6eb17cc72234 --config global{metadata_read_only=0}
echo conferindo se a lvm foi criada
lvs | grep xen_nfs
echo formatando a lvm com xfs
mkfs.xfs /dev/VG_XenStorage-d84a5395-d9e4-c3da-b22c-6eb17cc72234/xen_nfs
echo criando/montando a pasta
mkdir /mnt/xen_nfs
mount -t xfs /dev/VG_XenStorage-d84a5395-d9e4-c3da-b22c-6eb17cc72234/xen_nfs /mnt/xen_nfs
echo adicionando xen_nfs no fstab
vi /etc/fstab
# davidysson montagem xen_nfs
/dev/VG_XenStorage-d84a5395-d9e4-c3da-b22c-6eb17cc72234/xen_nfs /mnt/xen_nfs xfs defaults 0 0
# fim davidysson
echo testando a montagem automatica do fstab (pra nao precisar dar reboot)
umount /mnt/xen_nfs
mount -all
echo configurando o firewall para liberar nfs
vi /etc/sysconfig/iptables
# davidysson portas xen_nfs
-A RH-Firewall-1-INPUT -m state --state NEW -m multiport -p tcp --dports 111,2049,32803,32769,892,875,662 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m multiport -p udp --dports 111,2049,32803,32769,892,875,662 -j ACCEPT
# fim davidysson
echo recarregando regras do firewall
iptables-restore < /etc/sysconfig/iptables
echo configurando a exportacao nfs usando a faixa de ip do tipo link-local para as vms
vi /etc/exports
# davidysson exportacao xen_nfs
/mnt/xen_nfs 169.254.0.0/24(rw,no_root_squash,sync)
# fim davidysson
echo recarregando a lista de exportacoes nfs
exportfs -ra
echo visualizando as exportacoes nfs
exportfs
echo religando servico nfs
service nfs start
---
echo dentro das vms, montando a pasta desejada
vim /etc/fstab
169.254.0.1:/mnt/xen_nfs/pastadesejada /pastadesejada nfs defaults 0 0
:q
mount -all
* Como aumentar o tamanho ao longo do tempo (à quente)
echo aumentando a lvm de 1 terabyte para 2 terabytes (à quente, sem desligar/desmontar nada)
lvextend -L+1T /dev/VG_XenStorage-d84a5395-d9e4-c3da-b22c-6eb17cc72234/xen_nfs --config global{metadata_read_only=0}
echo sincronizando o novo tamanho no sistema de arquivos xfs (à quente)
xfs_growfs -d /dev/VG_XenStorage-d84a5395-d9e4-c3da-b22c-6eb17cc72234/xen_nfs
echo observacao, nao precisa remontar nos clientes após este aumento da lvm, pois a tecnologia LVM+XFS permite fazer isso à quente
---
observacoes finais
caso queira colocar uma pasta liberada apenas para uma vm, isso deve ser feito configurado no console do xenserver3, no arquivo /etc/exportfs, colocando o IP link-local da VM (rede 169), e depois recarregalo com "exportfs -ra"