Partilhar via


Gerenciar a capacidade de armazenamento para o Azure Stack Hub

Este artigo descreve como um operador de nuvem do Azure Stack Hub pode monitorar e gerenciar a capacidade de armazenamento de uma implantação do Azure Stack Hub. Você pode usar as diretrizes para entender a memória disponível para as VMs do usuário. A infraestrutura de armazenamento do Azure Stack Hub aloca um subconjunto da capacidade total de armazenamento da implantação do Azure Stack Hub como serviços de armazenamento. Os serviços de armazenamento armazenam dados do locatário em compartilhamentos em volumes que correspondem aos nós da implantação.

Como operador de nuvem, você tem uma quantidade limitada de armazenamento para trabalhar. A quantidade de armazenamento é definida pela solução implementada. A solução é fornecida pelo seu fornecedor OEM quando você usa uma solução de vários nós ou é fornecida pelo hardware no qual você instala o Azure Stack Development Kit (ASDK).

O Azure Stack Hub suporta apenas a expansão da capacidade de armazenamento adicionando nós de unidade de escala extra. Para obter mais informações, consulte adicionar nós de unidade de escala no Azure Stack Hub. Adicionar discos físicos aos nós não expandirá a capacidade de armazenamento.

É importante monitorar o armazenamento disponível para garantir que as operações eficientes sejam mantidas. Quando a capacidade livre restante de um volume se tornar limitada, planeie gerir o espaço disponível para evitar que os compartilhamentos fiquem sem capacidade.

Suas opções para gerenciar a capacidade incluem:

  • Recuperação de capacidade.
  • Migração de objetos de armazenamento.

Quando um volume de armazenamento de objetos está 100% ocupado, o serviço de armazenamento deixa de funcionar para esse volume. Para obter assistência na restauração de operações para o volume, contate o suporte da Microsoft.

Compreender discos, contêineres e volumes

O usuário locatário cria discos, blobs, tabelas e filas nos serviços de armazenamento do Azure Stack Hub. Esses dados do locatário são colocados em volumes sobre o armazenamento disponível.

Discos

As VMs armazenam e manipulam dados em discos virtuais. Cada VM começa com um disco do sistema operacional, criado a partir de uma imagem do mercado ou imagem privada. A VM pode anexar zero ou mais discos de dados. Há dois tipos de discos oferecidos no Azure Stack:

Os discos geridos simplificam o gerenciamento de disco para as VMs IaaS do Azure gerindo as contas de armazenamento associadas aos discos da VM. Você só precisa especificar o tamanho do disco necessário e o Azure Stack Hub cria e gerencia o disco para você. Para obter mais informações, consulte Visão geral de discos gerenciados.

Discos não gerenciados são arquivos VHD armazenados como blobs de página em contêineres de armazenamento em contas de armazenamento do Azure Stack. Os blobs de página criados pelos locatários são chamados de discos VM e são armazenados em contêineres nas contas de armazenamento. Recomendamos que você use discos não gerenciados somente para VMs que precisam ser compatíveis com ferramentas de terceiros, que dão suporte apenas a discos não gerenciados do Azure.

A orientação para os locatários é colocar cada disco em um contêiner separado para melhorar o desempenho da VM.

  • Cada contêiner que contém um disco, ou blob de página, de uma VM é considerado um contêiner anexado à VM proprietária do disco.
  • Um contêiner que não contém discos de uma VM é considerado um contêiner livre.

As opções para liberar espaço em um contêiner anexado são limitadas. Para obter mais informações, consulte distribuir discos não gerenciados.

Importante

Recomendamos que você use apenas discos gerenciados em VMs para facilitar o gerenciamento. Não é necessário preparar contas de armazenamento e contêineres antes de usar discos gerenciados. Os discos gerenciados oferecem funcionalidade e desempenho equivalentes ou melhores em comparação com os discos não gerenciados. Não há vantagens em usar discos não gerenciados e eles são fornecidos apenas para compatibilidade com versões anteriores.

Os discos gerenciados são otimizados para um melhor posicionamento na infraestrutura de armazenamento e reduziram significativamente a sobrecarga de gerenciamento. Mas como os discos geridos são provisionados de forma discreta e o uso final é imprevisível na criação, o posicionamento desequilibrado dos discos pode potencialmente levar à sobreutilização do volume. Os operadores são responsáveis por monitorar o uso da capacidade de armazenamento e evitar tais problemas.

Para usuários que usam modelos ARM para provisionar novas máquinas virtuais, consulte Usar modelos de discos gerenciados por VM para entender como modificar seus modelos para usar discos gerenciados.

Os discos VM são armazenados como arquivos esparsos na infraestrutura de armazenamento. Os discos têm um tamanho provisionado que o usuário solicita no momento em que o disco é criado. No entanto, apenas as páginas não nulas gravadas no disco ocupam espaço na infraestrutura de armazenamento subjacente.

Exemplo: disco esparso no volume de armazenamento.

Os discos são frequentemente criados copiando de imagens de plataforma, imagens geridas, instantâneos ou outros discos, e os instantâneos são obtidos a partir de discos. Para aumentar a utilização da capacidade de armazenamento e reduzir o tempo das operações de cópia, o sistema usa a clonagem de blob no ReFS. A clonagem de Blob é uma operação de metadados de baixo custo em vez de uma cópia completa byte a byte entre arquivos. O arquivo de origem e o arquivo de destino podem compartilhar as mesmas extensões. Dados idênticos não são armazenados fisicamente várias vezes, melhorando a capacidade de armazenamento.

Exemplo: Compartilhar extensão no volume de armazenamento.

O uso da capacidade só aumenta quando os discos são gravados e dados idênticos são reduzidos. Quando uma imagem ou um disco é excluído, o espaço pode não ser liberado imediatamente, porque pode haver discos ou instantâneos criados a partir dela que ainda mantêm os dados idênticos e ocupam espaço. Se todas as entidades relacionadas forem removidas, o espaço fica disponível.

Exemplo: Extensão após a exclusão do disco.

Blobs e contentores

Os usuários locatários armazenam grandes quantidades de dados não estruturados com o Blob do Azure. O Azure Stack Hub dá suporte a três tipos de blobs: Block Blobs, Append Blobse Page Blobs. Para obter mais informações sobre os diferentes tipos de blobs, consulte Understanding Block Blobs, Append Blobs e Page Blobs.

Os usuários locatários criam contêineres que são usados para armazenar dados de blob. Embora os usuários decidam em qual contêiner colocar blobs, o serviço de armazenamento usa um algoritmo para determinar em qual volume colocar o contêiner. O algoritmo normalmente escolhe o volume com mais espaço disponível.

Depois que um blob é colocado em um recipiente, o blob pode crescer para usar mais espaço. À medida que você adiciona novos blobs e os blobs existentes crescem, o espaço disponível no volume que contém o contêiner diminui.

Os contêineres não estão limitados a um único volume. Quando os dados de blob combinados em um contêiner crescem para usar 80% ou mais do espaço disponível, o contêiner entra modo de estouro. No modo de overflow, todos os novos blobs criados nesse contentor são atribuídos a um volume diferente que tenha espaço suficiente. Com o tempo, um contentor no modo de transbordo pode ter blobs distribuídos em vários volumes.

Quando 90% (e, em seguida, 95%) do espaço disponível em um volume é usado, o sistema gera alertas no portal do administrador do Azure Stack Hub. Os operadores de nuvem devem analisar a capacidade de armazenamento disponível e planejar o reequilíbrio do conteúdo. O serviço de armazenamento para de funcionar quando um disco está 100%% utilizado e nenhum alerta adicional é gerado.

Volumes

O serviço de armazenamento particiona o armazenamento disponível em volumes separados que são alocados para armazenar dados do sistema e do locatário. Os volumes combinam os drives no pool de armazenamento para introduzir os benefícios de tolerância a falhas, escalabilidade e desempenho dos Espaços de Armazenamento Diretos. Para obter mais informações sobre volumes no Azure Stack Hub, consulte Manage storage infrastructure for Azure Stack Hub.

Os volumes de armazenamento de objetos armazenam dados do locatário. Os dados do locatário incluem blobs de página, blobs de bloco, blobs de acréscimo, tabelas, filas, bancos de dados e armazenamentos de metadados relacionados. O número de volumes de armazenamento de objetos é igual ao número de nós na implantação do Azure Stack Hub:

  • Em uma implantação de quatro nós, há quatro volumes de armazenamento de objetos. Em uma implantação de vários nós, o número de volumes não é reduzido se um nó for removido ou estiver funcionando mal.
  • Se você usar o ASDK, haverá um único volume com um único compartilhamento.

Os volumes de armazenamento de objetos são para uso exclusivo de serviços de armazenamento. Você não deve modificar, adicionar ou remover diretamente quaisquer arquivos nos volumes. Somente os serviços de armazenamento devem funcionar nos arquivos armazenados nesses volumes.

Como os objetos de armazenamento (blobs e assim por diante) estão contidos individualmente em um único volume, o tamanho máximo de cada objeto não pode exceder o tamanho de um volume. O tamanho máximo de novos objetos depende da capacidade que permanece em um volume como espaço não utilizado quando esse novo objeto é criado.

Quando um volume de armazenamento de objetos está com pouco espaço livre e as ações para recuperar espaço não são bem-sucedidas ou não estão disponíveis, os operadores de nuvem do Azure Stack Hub podem migrar objetos de armazenamento de um volume para outro.

Para obter informações sobre como os usuários locatários trabalham com o armazenamento de blobs no Azure Stack Hub, consulte serviços do Azure Stack Hub.

Monitorar armazenamento

Use o Azure PowerShell ou o portal do administrador para monitorar compartilhamentos para que você possa entender quando o espaço livre é limitado. Ao usar o portal, você recebe alertas sobre compartilhamentos com pouco espaço.

Usar o PowerShell

Como operador de nuvem, você pode monitorar a capacidade de armazenamento de um compartilhamento usando o cmdlet PowerShell Get-AzsStorageShare. O cmdlet retorna o espaço total, alocado e livre, em bytes, em cada um dos compartilhamentos.

Exemplo: Devolver espaço livre para partilhas.

  • Capacidade total: O espaço total, em bytes, disponível no compartilhamento. Esse espaço é usado para dados e metadados mantidos pelos serviços de armazenamento.
  • Capacidade usada: A quantidade de dados, em bytes, que é utilizada por todos os segmentos de dados dos ficheiros que armazenam os dados do inquilino e os metadados associados.

Usar o portal do administrador

Como operador de nuvem, você pode usar o portal do administrador para exibir a capacidade de armazenamento de todos os compartilhamentos.

  1. Inicie sessão no portal do administrador em https://adminportal.local.azurestack.external.

  2. Selecione Todos os serviços>Armazenamento>Compartilhamentos de arquivos para abrir a lista de compartilhamento de arquivos, onde você pode exibir as informações de uso.

    Exemplo: captura de tela de compartilhamentos de arquivos de armazenamento no portal do administrador do Azure Stack Hub.

    • Total: O espaço total, em bytes, disponível no compartilhamento. Esse espaço é usado para dados e metadados mantidos pelos serviços de armazenamento.
    • Usado: A quantidade de dados, em bytes, que é usada por todas as extensões dos arquivos que armazenam os dados do locatário e metadados associados.

Use o Azure PowerShell ou o portal do administrador para monitorar a capacidade provisionada e usada e planejar a migração para garantir a operação normal contínua do sistema.

Existem três ferramentas para monitorizar a capacidade de volume:

  • Portal e PowerShell para a capacidade atual do volume.
  • Alertas de espaço de armazenamento.
  • Métricas de capacidade de volume.

Esta seção descreve como usar essas ferramentas para monitorar a capacidade do sistema.

Usar o PowerShell

Como operador de nuvem, você pode monitorar a capacidade de armazenamento de um volume usando o cmdlet PowerShell Get-AzsVolume. O cmdlet retorna o espaço total e livre em gigabytes (GB) em cada um dos volumes.

Exemplo: Recuperar espaço livre para volumes.

  • Capacidade total: O espaço total disponível na quota em GB. Esse espaço é usado para dados e metadados mantidos pelos serviços de armazenamento.
  • Capacidade restante: A quantidade de espaço livre em GB para armazenar os dados do locatário e metadados associados.

Usar o portal do administrador

Como operador de nuvem, você pode usar o portal do administrador para exibir a capacidade de armazenamento de todos os volumes.

  1. Entre no portal do administrador do Azure Stack Hub em (https://adminportal.local.azurestack.external).

  2. Selecione Todos os serviços>Armazenamento>Volumes para abrir a lista de volumes onde pode exibir as informações de uso.

    Exemplo: captura de tela de volumes de armazenamento no portal do administrador do Azure Stack Hub.

    • Total: O espaço total disponível no volume. Esse espaço é usado para dados e metadados mantidos pelos serviços de armazenamento.
    • Usado: A quantidade de dados utilizada por todas as extensões dos ficheiros que armazenam os dados do inquilino e metadados associados.

Alertas de espaço de armazenamento

Ao usar o portal do administrador, você recebe alertas sobre volumes com pouco espaço.

Importante

Como operador de nuvem, você deve impedir que os compartilhamentos atinjam o uso total. Quando um compartilhamento é 100% usado, o serviço de armazenamento não funciona mais para esse compartilhamento. Para recuperar espaço livre e restaurar operações em um compartilhamento de 100% utilizado, contate o suporte da Microsoft.

  • Aviso: Quando um compartilhamento de arquivos é mais de 90% usado, você recebe um alerta de aviso no portal do administrador:

    Exemplo: captura de ecrã do alerta de aviso no portal do administrador do Azure Stack Hub

  • Critical: Quando um compartilhamento de arquivos é mais de 95% usado, você recebe um alerta crítico no portal do administrador:

    Exemplo: captura de tela do alerta crítico no portal do administrador do Azure Stack Hub

  • Ver detalhes: No portal do administrador, você pode abrir os detalhes de um alerta para exibir suas opções de mitigação:

    Exemplo: captura de tela mostrando a exibição de detalhes do alerta no portal do administrador do Azure Stack Hub

Métricas de capacidade de volume

As métricas de capacidade de volume fornecem informações mais detalhadas sobre a capacidade provisionada e a capacidade de uso para diferentes tipos de objetos. Os dados das métricas são preservados por 30 dias. Um serviço de monitorização em segundo plano atualiza a cada hora os dados das métricas de capacidade de volume.

É necessário entender o uso de recursos de um volume verificando proativamente o relatório de métricas de capacidade. Para decidir a ação correspondente para liberar espaço, o operador de nuvem pode analisar a distribuição do tipo de recurso quando um volume está se aproximando de cheio. O operador também pode evitar que o volume seja usado em excesso quando o tamanho provisionado do disco indicar que o volume foi provisionado em excesso.

O Azure Monitor fornece as seguintes métricas para mostrar o uso da capacidade de volume:

  • Capacidade Total de Volume mostra a capacidade total de armazenamento do volume.
  • A Capacidade Restante do Volume indica a capacidade de armazenamento restante do volume.
  • Volume VM Disk Used Capacity mostra o total de espaços ocupados por objetos relacionados ao disco da VM (incluindo blobs de página, discos/instantâneos gerenciados, imagens gerenciadas e imagens de plataforma). O arquivo VHD subjacente para discos de máquinas virtuais (VM) pode compartilhar a mesma extensão (consulte Discos) com imagens, capturas ou outros discos. Esse número pode ser menor do que a soma da capacidade usada de todos os objetos individuais relacionados ao disco da VM.
  • Volume de Outras Capacidades Usadas é o tamanho total usado de objetos que não são discos – incluindo blocos de dados, blocos de acréscimo, tabelas, filas e metadados de blob.
  • Capacidade Provisionada de Disco de VM de Volume é o tamanho total provisionado de blobs de página e discos/instantâneos geridos. Esse tamanho é o valor máximo da capacidade total do disco para o qual todos os discos gerenciados e blobs de página no volume específico podem crescer.

Exemplo: métricas de capacidade de volume.

Para exibir métricas de capacidade de volume no Azure Monitor:

  1. Confirme se você tem o Azure PowerShell instalado e configurado. Para obter instruções sobre como configurar o ambiente do PowerShell, consulte Instalar o PowerShell para o Azure Stack Hub. Para entrar no Azure Stack Hub, consulte Configurar o ambiente do operador e entrar no Azure Stack Hub.

  2. Baixe as ferramentas do Azure Stack Hub do repositório GitHub . Para obter etapas detalhadas, consulte Baixar ferramentas do Azure Stack Hub do GitHub.

  3. Gere o arquivo JSON do Capacity Dashboard executando o seguinte comando em CapacityManagement:

    .\CapacityManagement\DashboardGenerator\Create-AzSStorageDashboard.ps1 -capacityOnly $true -volumeType object
    

    Este comando cria um arquivo json que começa com DashboardVolumeObjStore na pasta de DashboardGenerator.

  4. Entre no portal do administrador do Azure Stack Hub em (https://adminportal.local.azurestack.external).

  5. No painel, selecione Carregare, em seguida, selecione o arquivo JSON gerado na etapa 3:

    Exemplo: Upload dashboard json.

  6. Depois que o JSON for carregado, você será direcionado para o novo painel de capacidade. Cada volume tem um gráfico correspondente no painel. O número de gráficos é igual ao número de volumes.

    Exemplo: Painel de capacidade de volume.

  7. Ao clicar em um dos volumes, você pode verificar cinco métricas de capacidade do volume específico no gráfico detalhado:

    Exemplo: métricas de capacidade detalhadas.

Padrões de utilização de volume

Ao verificar as métricas de capacidade de volume, o operador de nuvem entende quanto da capacidade de um volume é usado e qual tipo de recurso ocupa a maior parte do espaço. O padrão de uso de espaço é agrupado para os seguintes tipos, e o operador pode executar ações diferentes para cada tipo:

Exemplo: Padrão de uso de volume.

Capacidade ociosa subprovisionada: há capacidade disponível suficiente no volume e a capacidade total provisionada de todos os discos localizados nesse volume é menor do que a capacidade total disponível. O volume está disponível para um maior número de objetos de armazenamento, incluindo discos e outros objetos (blobs blocados e de acréscimo, tabelas e filas). Você não precisa tomar nenhuma ação para operar o volume.

Capacidade ociosa sobreprovisionada: a capacidade restante do volume é alta, mas a capacidade provisionada de disco da VM já está acima da capacidade total do volume. Este volume ainda tem espaço para mais objetos de armazenamento agora. No entanto, ele tem potencial para ser preenchido com os dados nos discos de VM localizados neste volume. Você deve monitorar de perto a tendência de uso desse volume. Se mudar para o padrão de baixa capacidade e excesso de provisionamento , talvez seja necessário tomar medidas para liberar espaço.

Provisionamento excessivo e baixa capacidade: a capacidade restante do volume é baixa, e as capacidades provisionadas e usadas do disco da VM são altas.

A baixa capacidade restante indica que o volume está a atingir a plena utilização. Os operadores devem tomar medidas imediatas de modo a libertar espaço, para evitar que o volume atinja 100% de utilização, resultando no bloqueio do serviço de armazenamento. A alta capacidade de disco de VM usada mostra que a maioria do uso de volume é de discos de VM. Consulte Migrar um de disco para mover discos do volume completo para outros volumes disponíveis para liberar espaço.

Blobs de blocos subprovisionados, de baixa capacidade e altos,: a capacidade restante do volume é baixa, e tanto as capacidades provisionadas quanto as usadas do disco da VM são baixas, mas a outra capacidade usada é alta.

Como o volume corre o risco de ser totalmente utilizado, o operador deve tomar medidas imediatas para liberar espaço. A elevada capacidade de 'outros' utilizada indica que a maior parte do volume de capacidade é ocupada por blobs de bloco/apêndice ou tabelas/filas. Quando a capacidade disponível do volume é inferior a 20%, o transbordo do contêiner é ativado, e um novo objeto blob não será colocado neste volume quase cheio. No entanto, as bolhas existentes ainda podem crescer. Para evitar que os blobs em crescimento contínuo utilizem excessivamente a capacidade, você pode entrar em contato com o Suporte da Microsoft para consultar os contêineres que ocupam espaço no volume específico e decidir se a limpeza desses contêineres precisa ser feita pelos locatários para liberar espaço.

Excesso de provisionamento, baixa capacidade, blobs de bloco altos: a capacidade restante do volume é baixa e tanto a capacidade do disco usado/provisionado quanto a outra capacidade usada são altas. Este volume tem alto uso de espaço por discos e outros objetos de armazenamento. Para evitar que o volume fique totalmente cheio, você deve liberar espaço. É recomendável que primeiro siga as instruções em para migrar o disco e mover discos do volume completo para outros volumes disponíveis. Você também pode entrar em contato com o Suporte da Microsoft para consultar os contêineres que ocupam espaço no volume específico e decidir se a limpeza desses contêineres precisa ser feita pelos locatários para liberar espaço.

Gerir o espaço disponível

Quando for necessário liberar espaço em um volume, use os métodos menos invasivos primeiro. Por exemplo, tente recuperar espaço antes de optar por migrar um disco gerenciado.

Capacidade de recuperação

Você pode recuperar a capacidade usada pelas contas de locatário que foram excluídas. Essa capacidade é recuperada automaticamente quando o período de retenção de dados é atingido, ou você pode recuperá-la imediatamente.

Para obter mais informações, consulte a seção "Recuperar capacidade" em gerenciar contas de armazenamento do Azure Stack Hub.

Migrar um contêiner entre volumes

Devido aos padrões de uso do locatário, alguns compartilhamentos de locatários usam mais espaço do que outros. Isso pode resultar em algumas partições ficarem sem espaço antes de outras que estão relativamente não utilizadas.

Você pode liberar espaço em um compartilhamento usado em excesso migrando manualmente alguns contêineres de blob para um compartilhamento diferente. Você pode migrar vários contêineres menores para um único compartilhamento que tenha capacidade para armazená-los todos. Use a migração para mover contentores sem custo. Contêineres livres são contêineres que não contêm um disco para uma VM.

A migração consolida todos os blobs de um contêiner no novo compartilhamento.

  • Se um contentor entrar no modo de overflow e colocar blobs em outros volumes, o novo compartilhamento deverá ter capacidade suficiente para armazenar todos os blobs do contentor que está a ser migrado, incluindo os blobs que transbordaram.
  • O cmdlet do PowerShell Get-AzsStorageContainer identifica apenas o espaço em uso no volume inicial de um contêiner. O cmdlet não identifica o espaço usado por blobs que são transbordados para volumes adicionais. Por conseguinte, o tamanho total de um contentor pode não ser evidente. É possível que a consolidação de um contentor num novo compartilhamento possa resultar numa condição de sobrecarga desse novo compartilhamento, onde os dados são distribuídos por compartilhamentos adicionais. Como resultado, talvez seja necessário reequilibrar as ações.
  • Se não tiveres permissões para determinados grupos de recursos e não puderes usar o PowerShell para consultar os volumes adicionais para dados excedentes, trabalha com o proprietário desses grupos de recursos e contentores para entender a quantidade total de dados a serem migrados antes de os migrar.

Importante

A migração de blobs para um contêiner é uma operação offline que requer o uso do PowerShell. Até que a migração seja concluída, todos os blobs do contêiner que você está migrando permanecem offline e não podem ser usados. Você também deve evitar atualizar o Azure Stack Hub até que toda a migração em curso seja concluída.

Migrar contêineres usando o PowerShell

  1. Confirme que tem o Azure PowerShell instalado e configurado. Para obter mais informações, consulte Gerenciar recursos do Azure usando o Azure PowerShell.

  2. Examine o contêiner para entender quais dados estão no compartilhamento que você planeja migrar. Para identificar os melhores contêineres candidatos para migração em um volume, use o cmdlet Get-AzsStorageContainer:

    $farm_name = (Get-AzsStorageFarm)[0].name
    $shares = Get-AzsStorageShare -FarmName $farm_name
    $containers = Get-AzsStorageContainer -ShareName $shares[0].ShareName -FarmName $farm_name
    

    Em seguida, examine $containers:

    $containers
    

    Exemplo: $containers

  3. Identifique os melhores compartilhamentos de destino para armazenar o contêiner que você está migrando:

    $destinationshare = ($shares | Sort-Object FreeCapacity -Descending)[0]
    

    Em seguida, examine $destinationshares:

    $destinationshares
    

    Exemplo: $destination partilha

  4. Inicie a migração para um contêiner. A migração é assíncrona. Se você iniciar a migração de outro contêiner antes que a primeira migração seja concluída, use a ID do trabalho para acompanhar o status de cada um:

    $jobId = Start-AzsStorageContainerMigration -StorageAccountName $containers[0].Accountname -ContainerName $containers[0].Containername -ShareName $containers[0].Sharename -DestinationShareUncPath $destinationshares[0].UncPath -FarmName $farm_name
    

    Em seguida, examine $jobId. No exemplo a seguir, substitua <job_id> pelo ID do trabalho que você deseja examinar:

    $jobId <job_id>
    
  5. Use a ID do trabalho para verificar o status do trabalho de migração. Quando a migração do contentor estiver concluída, MigrationStatus será definido como Concluído:

    Get-AzsStorageContainerMigrationStatus -JobId $jobId -FarmName $farm_name
    

    Captura de tela que mostra o status da migração.

  6. Você pode cancelar um trabalho de migração em andamento. Os trabalhos de migração cancelados são processados de forma assíncrona. Você pode rastrear cancelamentos usando $jobid:

    Stop-AzsStorageContainerMigration -JobId $jobId -FarmName $farm_name
    

    Exemplo: Estado de reversão

  7. Você pode executar o comando a partir da etapa 6 novamente, até que o status da migração seja Cancelado:

    Captura de tela que mostra um exemplo de um status de migração cancelado.

Mover discos de VM

O método mais extremo para gerenciar espaço envolve mover discos de VM. Como mover um contêiner anexado (que contém um disco de VM) é complexo, contate o Suporte da Microsoft para realizar essa ação.

Migrar um disco gerenciado entre volumes

Devido aos padrões de uso do locatário, alguns volumes de locatários usam mais espaço do que outros. O resultado pode ser um volume com pouco espaço antes de outros volumes relativamente inutilizados.

Você pode liberar espaço em um volume usado em excesso migrando manualmente alguns discos gerenciados para um volume diferente. Você pode migrar vários discos gerenciados para um único volume que tenha capacidade para armazenar todos eles. Use a migração para mover offline discos gerenciados. Discos gerenciados offline são discos que não estão conectados a uma VM.

Importante

A migração de discos gerenciados é uma operação offline que requer o uso do PowerShell. Você deve desalocar as VMs proprietárias do disco candidato ou desanexar os discos candidatos para migração de sua VM proprietária antes de iniciar o trabalho de migração (uma vez que o trabalho de migração esteja concluído, você pode realocar as VMs ou reanexar os discos). Até que a migração seja concluída, todos os discos gerenciados que você está migrando devem permanecer com status reservado ou offline e não podem ser usados, caso contrário, o trabalho de migração será abortado e todos os discos não migrados ainda estarão em seus volumes originais. Você também deve evitar atualizar o Azure Stack Hub até que toda a migração em curso seja concluída.

Para migrar discos gerenciados usando o PowerShell

  1. Confirme se você tem o Azure PowerShell instalado e configurado. Para obter instruções sobre como configurar o ambiente do PowerShell, consulte Instalar o PowerShell para o Azure Stack Hub. Para entrar no Azure Stack Hub, consulte Configurar o ambiente do operador e entrar no Azure Stack Hub.

  2. Examine os discos gerenciados para entender quais discos estão no volume que você planeja migrar. Para identificar os melhores discos candidatos para migração em um volume, use o cmdlet Get-AzsDisk:

    $ScaleUnit = (Get-AzsScaleUnit)[0]
    $StorageSubSystem = (Get-AzsStorageSubSystem -ScaleUnit $ScaleUnit.Name)[0]
    $Volumes = (Get-AzsVolume -ScaleUnit $ScaleUnit.Name -StorageSubSystem $StorageSubSystem.Name | Where-Object {$_.VolumeLabel -Like "ObjStore_*"})
    $SourceVolume  = ($Volumes | Sort-Object RemainingCapacityGB)[0]
    $VolumeName = $SourceVolume.Name.Split("/")[2]
    $VolumeName = $VolumeName.Substring($VolumeName.IndexOf(".")+1)
    $MigrationSource = "\\SU1FileServer."+$VolumeName+"\SU1_"+$SourceVolume.VolumeLabel
    $Disks = Get-AzsDisk -Status OfflineMigration -SharePath $MigrationSource | Select-Object -First 10
    

    Em seguida, examine $Disks:

    $Disks
    

    Exemplo: $Disks

  3. Identifique o melhor volume de destino para armazenar os discos migrados:

    $DestinationVolume  = ($Volumes | Sort-Object RemainingCapacityGB -Descending)[0]
    $VolumeName = $DestinationVolume.Name.Split("/")[2]
    $VolumeName = $VolumeName.Substring($VolumeName.IndexOf(".")+1)
    $MigrationTarget = "\\SU1FileServer."+$VolumeName+"\SU1_"+$DestinationVolume.VolumeLabel
    
  4. Inicie a migração para discos gerenciados. A migração é assíncrona. Se você iniciar a migração de outros discos antes da conclusão da primeira migração, use o nome do trabalho para acompanhar o status de cada um:

    $jobName = "MigratingDisk"
    Start-AzsDiskMigrationJob -Disks $Disks -TargetShare $MigrationTarget -Name $jobName
    
  5. Use o nome do trabalho para verificar o status do trabalho de migração. Quando a migração do disco estiver concluída, MigrationStatus será definido como Completo:

    $job = Get-AzsDiskMigrationJob -Name $jobName
    

    Exemplo: Status de migração

    Se você migrar vários discos gerenciados em um trabalho de migração, também poderá verificar as subtarefas do trabalho:

    $job.Subtask
    

    Exemplo: Status da subtarefa de migração

  6. Você pode cancelar um trabalho de migração em andamento. Os trabalhos de migração cancelados são processados de forma assíncrona. Pode monitorizar o cancelamento utilizando o nome da tarefa até que o estado confirme que a tarefa de migração está Cancelada:

    Stop-AzsDiskMigrationJob -Name $jobName
    

    Exemplo: Status cancelado

Distribuir discos não gerenciados

O método mais extremo para gerenciar o espaço envolve mover discos não gerenciados. Se o locatário adicionar discos não geridos a um contêiner, a capacidade total usada do contêiner poderá crescer além da capacidade disponível do volume que o mantém antes que o contêiner entre no modo de transbordo. Para evitar que um único contêiner esgote o espaço de um volume, o locatário pode distribuir os discos não gerenciados existentes de um contêiner para contêineres diferentes. Como a distribuição de um contêiner anexado (que contém um disco de VM) é complexa, contate o Suporte da Microsoft para realizar essa ação.

Memória disponível para VMs

O Azure Stack Hub foi criado como um cluster hiperconvergente de computação e armazenamento. A convergência permite o compartilhamento do hardware, referido como uma unidade de escala. No Azure Stack Hub, uma unidade de escala fornece a disponibilidade e a escalabilidade dos recursos. Uma unidade de escala consiste em um conjunto de servidores do Azure Stack Hub, conhecidos como hosts ou nós. O software de infraestrutura é hospedado em um conjunto de VMs e compartilha os mesmos servidores físicos que as VMs locatárias. Todas as VMs do Azure Stack Hub são gerenciadas pelas tecnologias de cluster do Windows Server da unidade de escala e instâncias Hyper-V individuais. A unidade de escala simplifica a aquisição e o gerenciamento do Azure Stack Hub. A unidade de escala também permite a movimentação e a escalabilidade de todos os serviços no Azure Stack Hub, locatário e infraestrutura.

Você pode revisar um gráfico circular no portal do administrador que mostra a memória livre e usada no Azure Stack Hub; por exemplo:

Memória física no Azure Stack Hub.

Os seguintes componentes consomem o uso de memória na parte utilizada do gráfico circular:

  • uso do sistema operativo host ou reserva: A memória usada pelo sistema operativo (SO) no host, tabelas de página de memória virtual, processos que estão a ser executados no sistema operativo host e o cache de memória direta para espaços. Como esse valor depende da memória usada pelos diferentes processos de Hyper-V em execução no host, ele pode flutuar.
  • Serviços de infraestrutura: As VMs de infraestrutura que compõem o Azure Stack Hub. Isso implica aproximadamente 31 VMs que ocupam 242 GB + (4 GB x número de nós) de memória. O uso de memória do componente de serviços de infraestrutura pode mudar à medida que trabalhamos para tornar nossos serviços de infraestrutura mais escaláveis e resilientes.
  • Reserva de resiliência: o Azure Stack Hub reserva uma parcela da memória para permitir a disponibilidade do inquilino durante uma falha de host único e, durante atualizações e patches, para permitir a migração ao vivo bem-sucedida de VMs.
  • VMs de inquilino: VMs criadas por utilizadores do Azure Stack Hub. Além de executar VMs, a memória é consumida por todas as VMs que pousam na malha. Isso significa que as VMs em criando ou estados de com falha, ou VMs desligadas de dentro do convidado, ainda consomem memória. No entanto, as VMs que foram desalocadas usando a opção "parar desalocadas" do portal de utilizador do Azure Stack Hub, PowerShell ou CLI do Azure, não consomem memória do Azure Stack Hub.
  • Add-on Resource Providers: VMs implantadas para provedores de recursos complementares, como SQL, MySQL e Serviço de Aplicativo.

Capacidade usada em um blade em um do Azure Stack Hub de quatro nós

Memória disponível para posicionamento de VM

Como um operador de nuvem para o Azure Stack Hub, não há uma maneira automatizada de verificar a memória alocada para cada VM. Você pode ter acesso às VMs de usuário e calcular a memória alocada manualmente. No entanto, a memória alocada não reflete o uso real. Este valor pode ser inferior ao valor atribuído.

Para exercitar a memória disponível para VMs, a seguinte fórmula é usada:

Memória disponível para colocação de VM = Total Host Memory--Resiliency Reserve--Memory used by running tenant VMs - Azure Stack Hub Infrastructure Overhead

Reserva de resiliência = H + R * ((N-1) * H) + V * (N-2)

Onde:

H = Tamanho da memória de host único

N = Tamanho da unidade de escala (número de anfitriões)

R = Reserva do sistema operacional/memória usada pelo sistema operacional anfitrião, que é 0,15 nesta fórmula

V = Maior VM (em termos de memória) na unidade de escala

Sobrecarga de Infraestrutura do Hub do Azure Stack = 242 GB + (4 GB x # de nós). Isso representa as aproximadamente 31 VMs usadas para hospedar a infraestrutura do Azure Stack Hub.

Memória usada pelo do sistema operativo anfitrião = 15% (0,15) da memória do host. O valor de reserva do sistema operacional é uma estimativa e variará com base na capacidade de memória física do host e na sobrecarga geral do sistema operacional.

O valor V, a maior VM da unidade de escala, é dinamicamente baseado na maior VM locatária implantada. Por exemplo, o maior valor de VM pode ser 7 GB ou 112 GB ou qualquer outro tamanho de memória de VM suportado na solução Azure Stack Hub. Para ter memória suficiente reservada para que uma migração ao vivo dessa VM grande não falhe, escolhemos o tamanho da VM maior. Alterar a maior VM na malha do Azure Stack Hub resulta em um aumento na reserva de resiliência, além do aumento na memória da própria VM.

Por exemplo, com uma unidade de escala de 12 nós:

Detalhes do carimbo Valores
sts (N) 12
Memória por anfitrião (H) 384
Memória Total da Unidade de Escala 4608
OS reserva (R) 15%
Maior VM (V) 112
Reserva de Resiliência = H + R * ((N-1) * H) + V * (N-2)
Reserva de Resiliência = 2137,6

Com essas informações, você pode calcular que um Azure Stack Hub com 12 nós de 384 GB por host (total de 4.608 GB), tem 2.137 GB reservados para resiliência se a maior VM tiver 112 GB de memória.

Quando você consulta a lâmina Capacidade para a memória física de acordo com a imagem a seguir, o valor Usado inclui a reserva de resiliência. Este gráfico é de uma instância do Azure Stack Hub de quatro nós:

Uso da capacidade numa instalação de Azure Stack Hub de quatro nós

Tenha estas considerações em mente ao planejar a capacidade para o Azure Stack Hub. Além disso, poderá utilizar a ferramenta Planejador de Capacidade do Azure Stack Hub.

Próximos passos

Para saber mais sobre como oferecer VMs aos usuários, consulte Gerenciar a capacidade de armazenamento para o Azure Stack Hub.