Gerenciar a capacidade de armazenamento do Azure Stack Hub

Você pode usar este artigo como um operador de nuvem do Azure Stack Hub para saber como monitorar e gerenciar a capacidade de armazenamento da 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 guardam os 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 que você implementa. A solução é fornecida pelo fornecedor do OEM quando você usa uma solução de vários nós ou é fornecida pelo hardware no qual você instalou o ASDK (Kit de Desenvolvimento do Azure Stack).

O Azure Stack Hub dá suporte apenas à 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 operações eficientes sejam mantidas. Quando a capacidade livre restante de um volume se tornar limitada, planeje gerenciar o espaço disponível para impedir que os compartilhamentos fiquem sem capacidade.

Suas opções para gerenciar a capacidade incluem:

  • Recuperar a capacidade.
  • Migrar objetos de armazenamento.

Quando um volume de armazenamento de objetos é 100% utilizado, o serviço de armazenamento não funciona mais nesse volume. Para obter assistência na restauração das operações do volume, entre em contato com o suporte da Microsoft.

Entender 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 de locatário são colocados em volumes sobre o armazenamento disponível.

Discos

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

Os discos gerenciados simplificam o gerenciamento de disco para VMs IaaS do Azure gerenciando as contas de armazenamento associadas aos discos de VM. Você só tem que especificar o tamanho do disco necessário e o Azure Stack Hub criará e gerenciará o disco para você. Para obter mais informações, consulte Visão geral do Managed Disks.

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

As diretrizes para locatários são 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áginas de uma VM é considerado um contêiner anexado à VM que possui o disco.
  • Um contêiner que não contém discos de uma VM é considerado um contêiner gratuito.

As opções para liberar espaço em um contêiner anexado são limitadas. Para saber mais, confira Distribuir discos não gerenciados.

Importante

Recomendamos que você use apenas discos gerenciados em VMs para facilitar o gerenciamento. Você não precisa preparar contas de armazenamento e contêineres antes de usar discos gerenciados. Os discos gerenciados fornecem funcionalidade e desempenho equivalentes ou melhores em comparação com 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 reduzem significativamente a sobrecarga de gerenciamento. No entanto, devido aos discos gerenciados serem provisionados e a utilização final for imprevisível na criação, há oportunidades de o volume ser superutilizado causado pelo posicionamento de disco desequilibrado. Os operadores são responsáveis por monitorar o uso da capacidade de armazenamento e evitar esse problema.

Para usuários que usam modelos do ARM para provisionar novas máquinas virtuais, use o seguinte documento para entender como modificar seus modelos para usar discos gerenciados: usar modelos de discos gerenciados de VM.

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

Exemplo: disco esparso no volume de armazenamento.

Os discos geralmente são criados copiando de imagens de plataforma, imagens gerenciadas, instantâneos ou outros discos. E instantâneos são tirados de discos. Para aumentar a utilização da capacidade de armazenamento e reduzir o tempo de operação de cópia, o sistema usa a clonagem de bloco no ReFS. A clonagem de blob é uma operação de metadados de baixo custo em vez de uma cópia completa de bytes 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 os 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 dele ainda manter os dados idênticos e ocupar espaço. Somente se todas as entidades relacionadas forem removidas, o espaço ficará disponível.

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

Blobs e contêineres

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: Blobs de Blocos, Blobs de Acréscimo e Blobs de Páginas. Para obter mais informações sobre os diferentes tipos de blobs, confira Compreendendo os Blobs de Blocos, Blobs de Acréscimo e Blobs de Página.

Os usuários do locatário criam contêineres que são usados para armazenar dados de blob. Embora os usuários decidam em qual contêiner colocar os 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 contêiner, ele pode aumentar para usar mais espaço. À medida que você adiciona novos blobs e os blobs existentes crescem, o espaço disponível diminui no volume que mantém o contêiner.

Os contêineres não sã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 no modo de estouro. No modo de estouro, todos os novos blobs criados nesse contêiner são alocados para um volume diferente com espaço suficiente. Ao longo do tempo, um contêiner no modo de estouro pode ter blobs distribuídos em vários volumes.

Quando 90% (e 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 examinar a capacidade de armazenamento disponível e planejar a redistribuição do conteúdo. O serviço de armazenamento para de funcionar quando um disco estiver 100% usado e não é gerado nenhum alerta adicional.

Volumes

O serviço de armazenamento particiona o armazenamento disponível em volumes separados alocados para armazenar dados do sistema e do locatário. Os volumes combinam as unidades no pool de armazenamento para apresentar a tolerância, escalabilidade e benefícios de desempenho de Espaços de Armazenamento Diretos. Para obter mais informações sobre volumes no Azure Stack Hub, consulte Gerenciar a infraestrutura de armazenamento para o Azure Stack Hub.

Os volumes do repositório de objetos contêm dados do locatário. Os dados do locatário incluem blobs de páginas, blobs de blocos, blobs de acréscimo, tabelas, filas, bancos de dados e repositórios de metadados relacionados. O número de volumes do repositório 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 repositório de objetos. Em uma implantação de vários nós, o número de volumes não será reduzido se um nó for removido ou apresentar mau funcionamento.
  • Se você usar o ASDK, haverá um único volume com um único compartilhamento.

Os volumes do repositório de objetos são para o uso exclusivo dos serviços de armazenamento. Você não deve modificar, adicionar ou remover diretamente nenhum arquivo 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) são contidos individualmente em um único volume, o tamanho máximo de cada objeto não pode exceder o tamanho do volume. O tamanho máximo dos 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 repositório de objetos está com pouco espaço livre e as ações para recuperar espaço não são bem-sucedidas ou 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 de locatário trabalham com o armazenamento de blobs no Azure Stack Hub, confira Serviços de armazenamento do Azure Stack Hub.

Monitorar o armazenamento

Use 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 do PowerShell Get-AzsStorageShare . O cmdlet retorna o espaço total, alocado e livre, em bytes, em cada um dos compartilhamentos.

Exemplo: retornar espaço livre para compartilhamentos.

  • 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 é usada por todas as extensões dos arquivos que armazenam os dados do locatário 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. Entre no portal https://adminportal.local.azurestack.externaldo administrador .

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

    Exemplo: captura de tela dos 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 os metadados associados.

Use 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.

Há três ferramentas para monitorar a capacidade do volume:

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

Nesta seção, apresentaremos como usar essas ferramentas para monitorar a capacidade do sistema.

Usar o PowerShell

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

Exemplo: retornar espaço livre para volumes.

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

Usar o portal do administrador

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

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

  2. Selecione Todos os serviços> Volumesde Armazenamento> para abrir a lista devolumes em que você pode exibir as informações de uso.

    Exemplo: captura de tela dos 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 usada por todas as extensões dos arquivos que armazenam os dados do locatário e os 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% utilizado, o serviço de armazenamento não funciona mais para esse compartilhamento. Para recuperar o espaço livre e as operações de restauração em um compartilhamento 100% utilizado, entre em contato com o suporte da Microsoft.

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

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

  • Crítico: quando um compartilhamento de arquivos é mais de 95% utilizado, você recebe um alerta Crítico no portal do administrador:

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

  • Exibir 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 da exibição dos 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 usada para diferentes tipos de objetos. Os dados de métricas são preservados por 30 dias. O serviço de monitoramento em segundo plano atualiza os dados de métricas de capacidade de volume por hora.

É necessário entender o uso de recursos de um volume verificando proativamente o relatório de métrica de capacidade. O operador de nuvem pode analisar a distribuição de tipo de recurso quando um volume está se aproximando totalmente para decidir a ação correspondente para o espaço livre. O operador também pode impedir que o volume seja usado em excesso quando o tamanho provisionado do disco indica que o volume foi muito provisionado.

O Azure Monitor fornece as seguintes métricas para mostrar a utilização da capacidade do volume:

  • Capacidade Total do Volume mostra a capacidade total de armazenamento do volume.
  • A Capacidade Restante do Volume mostra a capacidade de armazenamento restante do volume.
  • A Capacidade Usada do Disco de VM de Volume mostra o total de espaços ocupados por objetos relacionados ao disco da VM (incluindo blobs de página, discos gerenciados/instantâneo, imagens gerenciadas e imagens de plataforma). O arquivo VHD subjacente de discos de VM pode compartilhar a mesma extensão (consulte Discos) com imagens, instantâneos ou outros discos. Esse número pode ser menor que a soma da capacidade usada de todo o objeto relacionado ao disco de VM individual.
  • Volume Outra Capacidade Usada é o tamanho total usado de objetos que não sejam discos, incluindo blobs de blocos, blobs de acréscimo, tabelas, filas e metadados de blob.
  • A Capacidade Provisionada do Disco de VM de Volume é o tamanho total provisionado de blobs de páginas e discos gerenciados/instantâneos. Esse tamanho é o valor máximo da capacidade total do disco de todos os discos gerenciados e os blobs de páginas no volume específico podem aumentar.

Exemplo: Métricas de capacidade de volume.

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

  1. Confirme se você 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, confira Configurar o ambiente do operador e entrar no Azure Stack Hub.

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

  3. Gere o json painel de capacidade executando o DashboardGenerator em CapacityManagement.

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

    Haveria um arquivo json chamado começa com DashboardVolumeObjStore na pasta dashboardGenerator.

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

  5. Na página Painel, clique em Carregar e selecione o arquivo json gerado na Etapa 3.

    Exemplo: carregar dashboard json.

  6. Depois que o json for carregado, você será direcionado para a nova capacidade dashboard. Cada volume tem um gráfico correspondente no dashboard. O número de gráficos é igual à contagem de volumes:

    Exemplo: capacidade de volume dashboard.

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

    Exemplo: Métricas de capacidade detalhadas.

Padrões de uso de volume

Ao verificar as métricas de capacidade do volume, o operador de nuvem entende o quanto a capacidade de um volume é utilizada e qual tipo de recurso está tomando a maior parte do uso do espaço. O padrão de uso de espaço pode ser agrupado para os seguintes tipos, que o operador deve tomar medidas diferentes para cada um dos tipos:

Exemplo: padrão de uso de volume.

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

Capacidade sobreprovisionada e sobressalente: a capacidade restante do volume é alta, mas a capacidade provisionada do disco de VM já está acima da capacidade total do volume. Esse 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 nesse volume. Você deve monitorar de perto a tendência de uso desse volume. Se ele mudar para um padrão de baixa capacidade superprovisionado, talvez seja necessário tomar medidas para liberar o espaço.

Capacidade insuficiente e superprovisionada: a capacidade restante do volume é baixa e a capacidade provisionada do disco de VM e a capacidade usada do disco de VM são altas.

A baixa capacidade restante indica que o volume está atingindo o uso total. Os operadores precisam tomar medidas imediatas para liberar espaço para evitar que o volume seja 100% utilizado, o que bloquearia o serviço de armazenamento. A alta capacidade usada do disco de VM mostra que a maior parte do uso do volume são discos de VM. Você deve consultar a instrução Migrar disco para mover discos do volume completo para outros volumes disponíveis para espaço livre.

Blobs de blocos subprovisionados, de baixa capacidade e alto: a capacidade restante do volume é baixa e a capacidade provisionada do disco de VM e a capacidade usada do disco de VM são baixas, mas a outra capacidade usada é alta.

O volume tem o risco de ser totalmente utilizado para que o operador tome medidas imediatas para liberar espaço. A alta capacidade usada indica que a maior parte da capacidade de volume é obtida por blobs de bloco/acréscimo ou tabela/fila. Quando a capacidade disponível do volume for menor que 20%, o estouro de contêiner será habilitado e o novo objeto de blob não será colocado nesse volume quase completo. Mas os blobs existentes ainda podem crescer. Para evitar que os blobs de crescimento contínuo usem demais a capacidade, entre em contato com 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 blocos altos: a capacidade restante do volume é baixa e a capacidade usada/provisionada do disco e outras capacidades usadas são altas. Esse volume tem alta utilização de espaço por discos e outros objetos de armazenamento. Você deve liberar espaço para evitar que o volume esteja totalmente cheio. É recomendável seguir primeiro a instrução de Migrar disco para mover discos do volume completo para outros volumes disponíveis. Em outro caso, você pode entrar em contato com 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 algum espaço.

Gerenciar o espaço disponível

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

Recuperar capacidade

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 agir para recuperá-la imediatamente.

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

Migrar um contêiner entre volumes

Essa opção se aplica somente aos sistemas integrados do Azure Stack Hub.

Devido aos padrões de uso do locatário, alguns compartilhamentos de locatário usam mais espaço do que outros. Isso pode resultar em alguns compartilhamentos com pouco espaço antes de outros compartilhamentos relativamente não utilizados.

Você pode liberar espaço em um compartilhamento superutilizado 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 manter todos eles. Use a migração para mover contêineres gratuitos . Contêineres gratuitos 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 contêiner entrou no modo de estouro e colocou blobs em outros volumes, o novo compartilhamento deve ter capacidade suficiente para manter todos os blobs pertencentes ao contêiner que você migra, incluindo os blobs que estão estourados.

  • O cmdlet Get-AzsStorageContainer do PowerShell identifica apenas o espaço em uso no volume inicial de um contêiner. O cmdlet não identifica o espaço usado pelos blobs que são excedentes para volumes adicionais. Portanto, o tamanho completo de um contêiner pode não ser evidente. É possível que a consolidação de um contêiner em um novo compartilhamento possa enviar esse novo compartilhamento para uma condição de estouro, em que ele coloca dados em compartilhamentos adicionais. Como resultado, talvez seja necessário reequilibrar os compartilhamentos.

  • Se você não tiver permissões para determinados grupos de recursos e não puder usar o PowerShell para consultar os volumes adicionais de dados de estouro, trabalhe com o proprietário desses grupos de recursos e contêineres para entender a quantidade total de dados a serem migrados antes de migrá-los.

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 para o contêiner que você está migrando permanecerão offline e não poderão ser usados. Você também deve evitar atualizar o Azure Stack Hub até que toda a migração em andamento seja concluída.

Migrar contêineres usando o PowerShell

  1. Confirme se você Azure PowerShell instalado e configurado. Para obter mais informações, consulte Gerenciar recursos do Azure usando 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 Get-AzsStorageContainer cmdlet :

    $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 manter o contêiner que você está migrando:

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

    Em seguida, examine $destinationshares:

    $destinationshares
    

    Exemplo: $destination compartilhamentos

  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 da conclusão da primeira migração, use a ID do trabalho para acompanhar a status de cada um.

    $job_id = 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 d62f8f7a-8b46-4f59-a8aa-5db96db4ebb0 pela ID do trabalho que você deseja examinar:

    $jobId
    d62f8f7a-8b46-4f59-a8aa-5db96db4ebb0
    
  5. Use a ID do trabalho para marcar no status do trabalho de migração. Quando a migração de contêiner for concluída, MigrationStatus será definido como Concluído.

    Get-AzsStorageContainerMigrationStatus -JobId $job_id -FarmName $farm_name
    

    Captura de tela que mostra o status 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. Você pode acompanhar cancelamentos usando $jobid:

    Stop-AzsStorageContainerMigration -JobId $job_id -FarmName $farm_name
    

    Exemplo: reversão status

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

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

Mover discos de VM

Essa opção se aplica somente aos sistemas integrados do Azure Stack Hub.

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

Migrar um disco gerenciado entre volumes

Essa opção se aplica somente aos sistemas integrados do Azure Stack Hub.

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

Você pode liberar espaço em um volume superutilizado migrando manualmente alguns discos gerenciados para um volume diferente. Você pode migrar vários discos gerenciados para um único volume que tenha capacidade para manter todos eles. Use a migração para mover discos gerenciados offline . Discos gerenciados offline são discos que não estão anexados 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 (depois que o trabalho de migração for concluído, você poderá realocar as VMs ou reanexar os discos). Até que a migração seja concluída, todos os discos gerenciados que você está migrando deverão permanecer reservados ou offline status e não poderão ser usados; caso contrário, o trabalho de migração será anulado 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 andamento seja concluída.

Para migrar discos gerenciados usando o PowerShell

  1. Confirme se você Azure PowerShell instalado e configurado. Para obter instruções sobre como configurar o ambiente do PowerShell, confira Instalar o PowerShell para o Azure Stack Hub. Para entrar no Azure Stack Hub, confira 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 Get-AzsDisk cmdlet :

    $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 a status de cada um.

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

    $job = Get-AzsDiskMigrationJob -Name $jobName
    

    Exemplo: status de migração

    Se você estiver migrando vários discos gerenciados em um trabalho de migração, também poderá marcar as subtareconsultas do trabalho.

    $job.Subtask
    

    Exemplo: subtarecone de migração status

  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 acompanhar o cancelamento usando o nome do trabalho até que o status confirme se o trabalho de migração é Cancelado:

    Stop-AzsDiskMigrationJob -Name $jobName
    

    Exemplo: cancelou status

Distribuir discos não gerenciados

Essa opção se aplica somente aos sistemas integrados do Azure Stack Hub.

O método mais extremo para gerenciar o espaço envolve a movimentação de discos não gerenciados. Se o locatário adicionar números de discos não gerenciados a um contêiner, a capacidade total usada do contêiner poderá aumentar além da capacidade disponível do volume que o contém antes que o contêiner entre no modo de estouro . 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, entre em contato com Suporte da Microsoft para realizar essa ação.

Memória disponível para VMs

O Azure Stack Hub é criado como um cluster hiperconvergente de computação e armazenamento. A convergência permite o compartilhamento do hardware, conhecido 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, conhecido 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 de locatário. Todas as VMs do Azure Stack Hub são gerenciadas pelas tecnologias de clustering do Windows Server da unidade de escala e instâncias individuais do Hyper-V. 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, no locatário e na infraestrutura.

Você pode examinar um gráfico de pizza no portal de administração que mostra a memória livre e usada no Azure Stack Hub, como abaixo:

memória física no Azure Stack Hub

Os seguintes componentes consomem a memória na seção usada do gráfico de pizza:

  • Uso ou reserva do sistema operacional do host Essa é a memória usada pelo sistema operacional (SO) no host, tabelas de páginas de memória virtual, processos em execução no sistema operacional host e o cache de memória direta de espaços. Como esse valor depende da memória usada pelos diferentes processos do Hyper-V em execução no host, ele pode flutuar.
  • Serviços de infraestrutura Essas são as VMs de infraestrutura que compõem o Azure Stack Hub. Isso envolve aproximadamente 31 VMs que levam até 242 GB + (4 GB x número de nós) de memória. A utilização de memória do componente de serviços de infraestrutura pode mudar conforme trabalhamos para tornar nossos serviços de infraestrutura mais escalonáveis e resilientes.
  • Reserva de resiliência O Azure Stack Hub reserva uma parte da memória para permitir a disponibilidade do locatário durante uma única falha de host e durante o patch e a atualização para permitir a migração dinâmica bem-sucedida de VMs.
  • VMs de locatário Essas são as VMs criadas pelos usuários do Azure Stack Hub. Além de executar VMs, a memória é consumida por todas as VMs que chegaram à malha. Isso significa que as VMs no estado Criando ou Falha ou VMs desligadas de dentro do convidado consumirão memória. No entanto, as VMs que foram desalocadas usando a opção parar desalocada do portal do usuário do Azure Stack Hub, do PowerShell e da CLI do Azure não consumirão memória do Azure Stack Hub.
  • Provedores de recursos de complemento VMs implantadas para os provedores de recursos de complemento, como SQL, MySQL e Serviço de Aplicativo.

Capacidade usada em uma folha em um Azure Stack Hub de quatro nós

Memória disponível para posicionamento da VM

Como operador de nuvem para o Azure Stack Hub, não há uma maneira automatizada de marcar a memória alocada para cada VM. Você pode ter acesso às VMs do usuário e calcular a memória alocada manualmente. No entanto, a memória alocada não refletirá o uso real. Esse valor pode ser menor que o valor alocado.

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

Memória disponível para posicionamento da 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)

Em que:

H = Tamanho da memória de host único

N = Tamanho da unidade de escala (número de hosts)

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

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

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

Memória usada pelo so host = 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, maior VM na unidade de escala, é dinamicamente baseado na maior VM de locatário implantada. Por exemplo, o maior valor de VM pode ser 7 GB ou 112 GB ou qualquer outro tamanho de memória de VM com suporte na solução do Azure Stack Hub. Escolhemos o tamanho da maior VM aqui para ter memória suficiente reservada para que uma migração dinâmica dessa VM grande não falhe. Alterar a maior VM na malha do Azure Stack Hub resultará 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 selo Valores
sts (N) 12
Memória por Host (H) 384
Memória total da unidade de escala 4608
Reserva do sistema operacional (R) 15%
Maior VM (V) 112
Reserva de resiliência = H + R * ((N-1) * H) + V * (N-2)
Reserva de resiliência = 2137.6

Portanto, com as informações acima, você pode calcular que um Azure Stack 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 folha Capacidade para a memória física de acordo com abaixo, o valor Usado inclui a Reserva de Resiliência. O grafo é de uma instância do Azure Stack Hub de quatro nós.

Uso da capacidade em um Azure Stack Hub de quatro nós

Tenha essas considerações em mente ao planejar a capacidade do Azure Stack Hub. Além disso, você pode usar o Planejador de Capacidade do Azure Stack Hub.

Próximas etapas

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