quinta-feira, 25 de agosto de 2016

VMware Virtual SAN 6.2 – Parte 3 – Arquitetura VSAN

                 

Para entender melhor toda a arquitetura do VMware VSAN, precisamos primeiramente entender e conhecer sobre as principais “peças” que fazem parte de um host VSAN e consequentemente contribuem na formação do cluster.

Existem dois tipos de “peças” nessa estrutura, as físicas e as lógicas.

Estrutura Física

- Controladoras de disco
Uma das peças mais importantes em um host VSAN é a controladora de disco (SAS, SATA ou RAID Controller) presente neste host. A primeira recomendação é garantir que a controladora a ser utilizada conste no VCG (VMware Compatibility Guide), isso garante que essa controladora é suportada pela VMware.

É possível, e até recomendado, que haja mais de uma controladora de disco por host, dessa forma é possível diminuir o domínio de falha, dividindo os discos entre controladoras, e ainda conseguir algum ganho de desempenho. Lembrando que algumas controladoras suportam no máximo 16 discos, portanto para utilizar mais discos será necessário mais controladoras.

Dois pontos importantes a serem considerados na escolha de uma controladora de disco são a Queue Depth e a forma que os discos são apresentados (RAID-0 ou Pass-through).

No caso da Queue Depth o recomendado é utilizar controladoras que possuam uma queue maior do que 256, uma vez que valores menores do que este podem impactar no desempenho das VMs, durante algumas operações do cluster (rebuild por exemplo).

Sobre a forma como os discos são apresentados ao ESXi, existem duas formas mais comuns nessas controladoras, RAID-0 e Pass-through. O recomendado é utilizar o Pass-through sempre que possível, uma vez que dessa forma o disco é apresentado diretamente para o ESXi e o gerenciamento é todo feito pelo VSAN. No RAID-0, cada disco é configurado como um volume RAID-0 e então apresentado ao ESXi, o que implica em algumas configurações manuais a serem feitas na hora de substituir um disco por exemplo.

- Dispositivo Flash
Outra peça fundamental no host VSAN é a presença de pelo menos um dispositivo Flash, este pode ser um disco SSD (SATA/SAS), uma placa PCIe ou então um dispositivo NVMe. Esse dispositivo flash será utilizado para buffer de escrita (30%) e cache de leitura (70%) nas configurações híbridas, e 100% como buffer de escrita nas configurações All-flash. A capacidade deste dispositivo flash não é considerada na capacidade total de armazenamento do datastore VSAN.

- Discos magnéticos
Assim como o dispositvo flash, é essencial a presença de pelo menos um disco a ser utilizado para área de armazenamento (nas configurações híbridas são discos magnéticos, e nas configurações all-flash são discos SSD). Este pode ser SATA, SAS ou NL-SAS, e geralmente é referenciado nas documentações sobre VSAN apenas como HDD (numa configuração all-flash, os dispositivos flash dedicado ao armazenamento também são chamados de HDD). Os discos HDD possuem essencialmente duas funções no cluster VSAN, garantir a capacidade necessária para o armazenamento dos objetos e também atender às políticas de armazenamento das VMs no que diz respeito ao stripe width.

       Fonte: VMware

- Interface de rede
Para a formação de um cluster VSAN é necessário que cada host deste cluster possua ao menos uma interface de rede. É claro que o ideal seja a presença de mais de uma interface, visando a alta disponibilidade e também o desempenho através do balanceamento de carga. Num cluster VSAN são suportadas interfaces de 1Gb e de 10Gb, sendo que o recomendado pela VMware é que sejam utilizadas interfaces de 10Gb (nas configurações All-Flash somente interfaces de 10Gb são suportadas). Caso seja utilizada uma interface de 1Gb, o recomendado é que essa seja dedicada ao tráfego do VSAN. Com uma interface de 10Gb, o link pode ser compartilhado com outros tipos de tráfego (vMotion, VMs e etc).

Estrutura Lógica

Agora que já conhecemos a estrutura física de um host VSAN, vamos falar sobre como essas partes são abstraídas e transformadas em estruturas lógicas em um cluster VSAN.

- Disk Groups
Os disk groups são uma construção lógica composta de um dispositivo flash e até 7 discos de capacidade. Numa configuração híbrida, um disk group será a combinação de um dispositivo flash para cache e um ou mais discos magnéticos para prover capacidade. No caso de uma configuração All-flash, o disk group será composto de um dispositivo flash para cache e um ou mais dispositivos flashes que serão utilizados para capacidade. Não é possível mistrurar disk groups híbridos com disk groups all-flash em um mesmo cluster.

A tabela abaixo lista os limites mínimo e máximo de disk groups, dispositivos flash e discos magnéticos.


- VSAN Datastore
O VSAN datastore é a área criada da união de todos os disk groups de todos os hosts que compõem o cluster VSAN, lembrando que somente a área dos discos HDD é considerada. Os dispositivos flash utilizados para cache não entram nessa soma. O VSAN datastore é compartilhado entre todos os hosts que compõem o cluster. Somente um VSAN datastore é criado por cluster.
Fonte: VMware 

- Objetos
Talvez uma das maiores diferenças entre o armazenamento das VMs num VSAN datastore e num datastore “tradicional” seja o conceito de objetos. Cada máquina virtual armazenada em um VSAN datastore é formada por um conjunto de objetos. Por exemplo, o VMDK (disco virtual da VM) é um objeto, os discos .delta dos snapshots são um objeto, o arquivo de swap da VM é um objeto e etc.

Além dos objetos citados acima, existem alguns outros. Um em especial que merece atenção é o “namespace directory”ou Virtual Machine home. Todos os arquivos da máquina virtual, com exceção dos três objetos listados anteriormente (VMDK, snapshot delta e swap file) residem nesta área denominada “virtual machine namespace” no cluster VSAN. Entre os arquivos que estão nesta área estão o arquivos .vmx, os arquivos de log, os arquivos de descrição dos discos virtuais.

 
Fonte: VMware

- Componentes
Cada um dos objetos armazenados em um VSAN datastore é composto por um conjunto de componentes. Esses componentes são determinados com base na política de armazenamento associada ao objeto. Por exemplo, se uma VM for criada e a ela associada uma política de armazenamento para tolerar a falha de até 1 host do cluster, então cada um dos objetos terão duas replicas, e cada uma dessas replica é considerada um componente. Outro exemplo, se uma VM for criada utilizando uma política de armazenamento que contenha um stripe width de 2, então um RAID-0 será criado para aquele objeto e cada parte será considerada um componente.

Fonte: VMware

Para cada objeto há ainda um componente chamado Witness. O Witness não contêm nenhum dado efetivo da máquina virtual, apenas metadados. Esse componente é utilizado para decidir qual componente a ser utilizado em situações que envolvam a disponibilidade dos objetos, contribuindo para evitar situações de split-brain.

É importante saber que existe um limite no número de componentes suportados em um cluster VSAN, para o VSAN 5.5 o limite é de 3.000 componentes por host, a partir do VSAN 6.0 esse número subiu para 9.000 componentes por host.

Outros posts da série VMware Virtual SAN 6.2: 

VMware Virtual SAN 6.2 – Parte 3 – Arquitetura VSAN

Nenhum comentário:

Postar um comentário