Inserindo novos Storages Locais (HDs) Xen/XenServer/xcp-ng
===
***NOTA:*** Este procedimento se seguido completamente apagará todos os dados do disco em questão, deve ser executado portanto somnte em **HDs novos ou usdos cujos dados podem ser completamente apagados (reaproveitamenteo)**, caso queira **reacoplar** um HD
que já estava em uso no Xen/XenServer/xcp-ng execute **somente a Parte 2** deste procedimento
- Parte 1
Primeiramente precisamos identificar quantos discos seu servidor já possui, para não formatar ou modificar o disco errado.
Listando os discos reconhecidos pelo XenServer
```javascript
Comando: fdisk -l
Disk /dev/sda: 1000.2 GB, 1000204886016 bytes
256 heads, 63 sectors/track, 121126 cylinders
Units = cylinders of 16128 * 512 = 8257536 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 121127 976762583+ ee EFI GPT
```
Após acoplar o novo disco ao servidor repita o comando para verificar como o disco foi reconhecido
```javascript
Comando: fdisk -l
Disk /dev/sda: 1000.2 GB, 1000204886016 bytes
256 heads, 63 sectors/track, 121126 cylinders
Units = cylinders of 16128 * 512 = 8257536 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 121127 976762583+ ee EFI GPT
WARNING: GPT (GUID Partition Table) detected on '/dev/sdb'! The util fdisk doesn't support GPT. Use GNU Parted.
Disk /dev/sdb: 1000.2 GB, 1000204886016 bytes
256 heads, 63 sectors/track, 121126 cylinders
Units = cylinders of 16128 * 512 = 8257536 bytes
Device Boot Start End Blocks Id System
/dev/sdb1 1 121126 976760032+ 8e Linux LVM
```
No caso acima foi reconhecido como sdb
Para facilitar você pode também identificar seu disco através do conteúdo presente no diretório abaixo:
> ls /dev/disk/by-id/
```javascript
scsi-3600508e000000000106314b272169309
scsi-3600508e000000000106314b272169309-part1
scsi-3600508e000000000106314b272169309-part2
scsi-3600508e000000000106314b272169309-part3
scsi-SATA_SAMSUNG_HD103SJS2NWJ50B305265
scsi-SATA_SAMSUNG_HD103SJS2NWJ50B305265-part1
scsi-SATA_ST1000DM003-1CH_S1D7W6K4
scsi-SATA_ST1000DM003-1CH_S1D7W6K4-part1
```
Com o resultado do comando já consigo visualizar os discos identificados e já particionados em LVM, caso seu disco não esteja
parcionado será necessário criar uma partição Linux LVM que tem o tipo 8e no fdisk.
Para particionar o disco novo, supondo que o dispositivo seja o /dev/sdb siga os passos abaixo:
> fdisk /dev/sdb
Abaixo estão as opções do comando fdisk
```javascript
a toggle a bootable flag
b edit bsd disklabel
c toggle the dos compatibility flag
d delete a partition
l list known partition types
m print this menu
n add a new partition
o create a new empty DOS partition table
p print the partition table
q quit without saving changes
s create a new empty Sun disklabel
t change a partition's system id
u change display/entry units
v verify the partition table
w write table to disk and exit
x extra functionality (experts only)
```
**Para discos em reuso:** Verifique primeiro se o disco já possui partições utilizando a opção **p**, caso possua utilize a opção **d** para deletar as partições
existentes, começando pela partição com o número mais alto, ou seja, se tiver 3 partições delete primeiro a partição de numero 3.
Ao pressionar **d** será solicitado informar o número da partição.
```javascript
command (m for help): d
Partition number (1-3): 3
```
No exemplo acima estamos deletando a partição numero 3
Após ter deletado toas as partições proceda da seguinte maneira
para criar uma nova partição:
**Para discos novos ou de reuso**
No prompt do fdisk digitar a sequência:
```javascript
n para criar uma nova partição
p para indicar que ela será primária
1 porque é a primeira partição desse disco
ENTER duas vezes para aceitar o primeiro e último cilindro fazendo a partição ocupar todo o disco
t para alterar o tipo da partição
8e (que indica o tipo como Linux LVM)
w para gravar a tabela de partição e sair do fdisk
```
É necessário criar um Physical Volume no disco, com o comando:
> pvcreate /dev/sdb1
Obs: Caso a mensagem de:
> Command not permitted while global/metadata_read_only is set.
Utilize o comando:
> pvcreate /dev/sdb1 --config global{metadata_read_only=0}
- Parte 2
Nesse momento o disco já deve estar particionado e o nome “-part1′′ foi adicionado ao diretório, confira abaixo com o comando:
> ls -la /dev/disk/by-id/
Para adicionar o disco:
```javascript
xe sr-create type=lvm content-type=user device-config:device=/dev/disk/by-id/scsi-SATA_ST1000DM003-1CH_S1D7W6K4-part1 name-label=DISCO NOVO
```
scsi-SATA_ST1000DM003-1CH_S1D7W6K4-part1 é o nome do meu disco que desejo adicionar ao XenCenter com o nome
“DISCONOVO”, altere para seu caso.
Caso o servidor esteja em POOL, será necessário verificar antes o seu uuid com o seguinte comando:
> xe host-list
Após vericar o uuid do servidor de destino, entre com o comando:
```javascript
xe sr-create type=lvm content-type=user device-config:device=/dev/disk/by-id/wwn-0x50004cf20ac1ffb5-part1 name-label="DISCONOVO" host-uuid=0e5851db-ef07-4edc-9aaf-a8d848f983b3
```
Agora você já poderá ver no XenCenter/XOA/XOCE seu disco, e usar como novo storage, esse procedimento pode ser executado novamente para adicionar mais de um disco.