Este documento foi traduzido usando tecnologia de tradução automática de máquina. Sempre trabalhamos para apresentar traduções precisas, mas não oferecemos nenhuma garantia em relação à integridade, precisão ou confiabilidade do conteúdo traduzido. Em caso de qualquer discrepância, a versão original em inglês prevalecerá e constituirá o texto official.

Melhores práticas

A configuração a seguir é recomendada para ambientes de produção.

Hardware Mínimo Recomendado

  • 3 nós

  • 4 vCPUs por nó

  • 4 GiB por nó

  • SSD/NVMe ou dispositivo de bloco de desempenho similar no nó para armazenamento (recomendado)

  • HDD/Disco Giratório ou dispositivo de bloco de desempenho similar no nó para armazenamento (verificado)

    • 500/250 IOPS máximos por volume (1 MiB E/S)

    • 500/250 taxa de transferência máxima por volume (MiB/s)

Embora SUSE Storage possa funcionar com HDDs (discos giratórios) como armazenamento, é importante entender que latência desempenha um papel muito mais importante na estabilidade do volume do que IOPS ou taxa de transferência. Isso ocorre porque os HDDs são mecânicos, dependendo de pratos giratórios e cabeçotes de leitura ou gravação móveis para acessar dados. Esse movimento físico introduz atrasos inerentes (tempo de busca e atraso rotacional), levando a uma latência muito maior em comparação com os SSDs ou drives NVMe, que utilizam memória flash e não têm partes móveis. Isso pode causar diretamente instabilidade, especialmente quando várias tarefas intensivas em entrada/saída estão em execução, como:

  • IOs em primeiro plano para as réplicas

  • IOs em primeiro plano das réplicas

  • Reconstruindo volumes

  • Backups ou outras cargas de trabalho

A latência aumentada devido ao uso de HDDs, combinada com outras cargas de trabalho de entrada/saída, pode levar à instabilidade do volume. Portanto, recomendamos drives SSD ou NVMe para melhor desempenho e estabilidade, especialmente para cargas de trabalho de produção.

Os IOPS e a taxa de transferência mencionados (500/250 IOPS máximos por volume e 500/250 taxa de transferência máxima por volume) são destinados como referências gerais com base na configuração do teste, mas não devem ser tratados como requisitos rígidos. A latência, e não apenas a taxa de transferência, é o fator mais importante para garantir a estabilidade do sistema.

Arquitetura

SUSE Storage suporta as seguintes arquiteturas:

  1. AMD64

  2. ARM64

Sistema operacional

O CentOS Linux foi removido da lista de sistemas operacionais verificados abaixo, pois foi descontinuado em favor do CentOS Stream [ref], uma distribuição Linux de lançamento contínuo. Os testes para distribuições de código aberto downstream baseadas em RHEL se concentram em versões de nível empresarial, como Rocky Linux e Oracle Linux.

As seguintes distribuições e versões do sistema operacional Linux foram verificadas durante os testes de lançamento da v1.11.2. No entanto, isso não implica que SUSE Storage suporte exclusivamente essas distribuições. SUSE Storage deve funcionar bem em qualquer cluster Kubernetes certificado que esteja rodando em nós Linux com uma ampla gama de sistemas operacionais de uso geral, bem como sistemas operacionais otimizados para contêineres verificados, como o SLE Micro.

Não. OS Versões

1.

Ubuntu

24.04

2.

SUSE Linux Enterprise Server

16

3.

SUSE Linux Enterprise Micro

6.1

4.

Red Hat Enterprise Linux

10.1

SUSE Storage depende fortemente da funcionalidade do kernel e apresenta melhor desempenho em certas versões do kernel. As seguintes atividades, em particular, se beneficiam do uso de versões específicas do kernel.

  • Otimização ou melhoria do sistema de arquivos: Use um kernel com a versão v5.8 ou posterior. Veja Issue #2507 para mais detalhes.

  • Habilitando a configuração Congelar Sistema de Arquivos para Instantâneo: Use um kernel com a versão 5.17 ou posterior para garantir que uma falha de volume durante um congelamento do sistema de arquivos não possa travar um nó.

  • Habilitando o Motor de Dados V2: Use um kernel com a versão 5.19 ou posterior para garantir

A lista abaixo contém versões de kernel conhecidas por apresentar problemas que os usuários devem evitar usar:

Não. Versão Distro Contexto Adicional

1.

6.5.6

Kernel Vanilla

Relacionado a este bug https://longhorn.io/kb/troubleshooting-rwx-volume-fails-to-attached-caused-by-protocol-not-supported/

2.

5.15.0-94

Ubuntu

Relacionado a este bug https://longhorn.io/kb/troubleshooting-rwx-volume-fails-to-attached-caused-by-protocol-not-supported/

3.

6.5.0-21

Ubuntu

Relacionado a este bug https://longhorn.io/kb/troubleshooting-rwx-volume-fails-to-attached-caused-by-protocol-not-supported/

4.

6.5.0-1014-aws

Ubuntu

Relacionado a este bug https://longhorn.io/kb/troubleshooting-rwx-volume-fails-to-attached-caused-by-protocol-not-supported/

Kubernetes

Kubernetes Version

Certifique-se de que seu cluster está executando o Kubernetes v1.21 ou posterior antes de atualizar SUSE Storage.

Recomendamos executar seu cluster Kubernetes em uma das seguintes versões. Essas versões são as versões ativamente suportadas antes do lançamento do SUSE Storage e foram testadas com SUSE Storage v1.11.2.

Lançamento Lançado Fim do serviço

1.35

17 de dezembro de 2025

28 de fevereiro de 2027

1.34

27 de agosto de 2025

27 de outubro de 2026

1.33

23 de abril de 2025

28 de junho de 2026

1.32

11 de dezembro de 2024

28 de fevereiro de 2026

Configuração do CoreDNS

Certifique-se de que o CoreDNS esteja em execução com pelo menos duas réplicas para manter alta disponibilidade. Essa configuração minimiza interrupções na resolução de DNS quando um pod do CoreDNS sofre uma interrupção temporária.

Configuração de Nós e Discos

Recomendamos a seguinte configuração para nós e discos.

Use um Disco Dedicado

É recomendado dedicar um disco para armazenamento de SUSE Storage em produção, em vez de usar o disco raiz.

Armazenamento Mínimo Disponível e Superprovisionamento

Se você precisar usar o disco raiz, use a configuração padrão de minimal available storage percentage, que é 25%, e defina overprovisioning percentage para 100% para minimizar a chance de Pressão no Disco.

Se você estiver usando um disco dedicado para SUSE Storage, pode reduzir a configuração minimal available storage percentage para 10%.

Para a porcentagem de superprovisionamento, depende de quanto espaço seu volume usa em média. Por exemplo, se sua carga de trabalho usa apenas metade do tamanho do volume disponível, você pode definir a porcentagem de superprovisionamento para 200, o que significa que SUSE Storage considera o disco como tendo o dobro do tamanho agendável em relação ao seu tamanho total menos o espaço reservado.

Gerenciamento de espaço em disco

Como SUSE Storage atualmente não suporta sharding entre os diferentes discos, recomendamos usar LVM para agregar todos os discos para SUSE Storage em uma única partição, para que possa ser facilmente expandida no futuro.

Configurando Discos Extras

Quaisquer discos extras devem ser escritos no arquivo /etc/fstab para permitir a montagem automática após a reinicialização da máquina.

Não use um link simbólico para os discos extras. Use mount --bind em vez de ln -s e certifique-se de que está no arquivo fstab. Para detalhes, veja a seção sobre suporte a múltiplos discos.

Configurando Discos Padrão Antes e Depois da Instalação

Para usar um diretório diferente do padrão /var/lib/longhorn para armazenamento, a configuração Default Data Path pode ser alterada antes de instalar o sistema. Para detalhes sobre a alteração de configurações pré-instalação, consulte esta seção.

O recurso Configuração padrão de nó/disco pode ser usado para personalizar o disco padrão após a instalação. Personalizar as configurações padrão para discos e nós é útil para escalar o cluster, pois elimina a necessidade de configurar SUSE Storage manualmente para cada novo nó, se o nó contiver mais de um disco ou se a configuração do disco for diferente para novos nós. Lembre-se de habilitar Create default disk only on labeled node se aplicável.

Otimização de Desempenho de Volumes

Antes de configurar cargas de trabalho, certifique-se de que você tenha configurado os seguintes requisitos básicos para um desempenho ideal do volume.

  • SSDs SATA/NVMe ou unidades de disco com desempenho semelhante

  • Largura de banda de rede de 10 Gbps entre nós

  • Classe de Prioridade Dedicada para componentes gerenciados pelo sistema e implantados pelo usuário SUSE Storage. Por padrão, SUSE Storage instala a Classe de Prioridade padrão longhorn-critical.

As seções a seguir descrevem outras recomendações para ambientes de produção.

Desempenho de IO

  • Rede de armazenamento: Use uma rede de armazenamento dedicada para melhorar o desempenho e a estabilidade de IO.

  • SUSE Storage disco: Use um disco dedicado para armazenamento SUSE Storage em vez de usar o disco raiz.

  • Contagem de réplicas: Defina a contagem padrão de réplicas como "2" para alcançar a disponibilidade de dados com melhor uso do espaço em disco ou menos impacto no desempenho do sistema. Essa prática é especialmente benéfica para aplicações que consomem muitos dados.

  • Etiqueta de armazenamento: Use etiquetas de armazenamento para definir a hierarquia de armazenamento para aplicações que consomem muitos dados. Por exemplo, apenas discos de alto desempenho podem ser usados para armazenar dados sensíveis ao desempenho.

  • Localidade de dados: Use best-effort como a localidade de dados padrão das SUSE Storage StorageClasses.

    Para aplicações que suportam replicação de dados (por exemplo, um banco de dados distribuído), você pode usar a opção strict-local para garantir que apenas uma réplica seja criada para cada volume. Essa prática previne o uso excessivo de espaço em disco e a sobrecarga de desempenho de I/O associada à replicação de volumes.

    Para aplicações que consomem muitos dados, você pode usar funções de agendamento de pods, como seletor de nó ou tolerância a taints. Essas funções permitem que você agende a carga de trabalho em um nó específico marcado com etiqueta de armazenamento junto com uma réplica.

Eficiência de Espaço

Recuperação de desastre

Implantando Cargas de Trabalho

Se você estiver usando ext4 como o sistema de arquivos do volume, recomendamos adicionar uma verificação de liveness às cargas de trabalho para ajudar a recuperar automaticamente de uma interrupção causada pela rede, uma reinicialização de nó ou um reinício do Docker. Veja esta seção para detalhes.

Manutenção de Volumes

Usar o recurso de backup incorporado do SUSE Storage é altamente recomendado. Você pode salvar backups em um armazenamento de objetos como S3 ou em um servidor NFS. Salvar em um armazenamento de objetos é preferível porque geralmente oferece melhor confiabilidade. Outra vantagem é que você não precisa montar e desmontar o destino, o que pode complicar o failover e fazer upgrade.

Para cada volume, agende pelo menos um backup recorrente. Se você precisar executar SUSE Storage em produção sem um armazenamento de backup, então agende pelo menos um instantâneo recorrente para cada volume.

SUSE Storage cria instantâneos automaticamente ao reconstruir uma réplica. Instantâneos ou backups recorrentes também podem limpar automaticamente o instantâneo gerado pelo sistema.

Gerenciador de CPU de Instância Garantida

Recomendamos definir a solicitação de CPU para os pods do gerenciador de instância SUSE Storage.

V1 Motor de Dados

A configuração Guaranteed Instance Manager CPU permite reservar uma porcentagem dos recursos de CPU alocáveis totais em cada nó para cada pod do gerenciador de instância quando o V1 Motor de Dados está habilitado. O valor padrão é 12.

Defina um valor específico de milli-CPU para os pods do gerenciador de instâncias em um nó específico atualizando o campo de Solicitação de CPU do Gerenciador de Instâncias para esse nó.

Este campo sobrescreve a configuração acima para o nó especificado.

Consulte Gerenciador de CPU de Instância Garantida para mais detalhes.

V2 Data Engine

A configuração Guaranteed Instance Manager CPU for V2 Data Engine permite reservar um número específico de milli-CPUs em cada nó para cada pod do gerenciador de instâncias quando o V2 Data Engine está habilitado. Por padrão, o daemon de destino do Kit de Desenvolvimento de Desempenho de Armazenamento (SPDK) dentro de cada pod do gerenciador de instâncias usa 1 kernel de CPU. Configurar um valor mínimo de uso de CPU é essencial para manter a estabilidade do motor e das réplicas, especialmente durante períodos de alta carga de trabalho no nó. O valor padrão é 1250.

StorageClass

Evite modificar a Classe de Armazenamento padrão chamada longhorn. Alterar seus parâmetros pode causar problemas durante futuras operações de fazer upgrade. Para alterar os parâmetros definidos na Classe de Armazenamento, você pode criar uma nova Classe de Armazenamento referindo-se aos exemplos de Classe de Armazenamento.

Configurações de Agendamento

Anti-afinidade suave a nível de nó para réplicas

Recomendação: false

Esta configuração deve ser definida como false em ambientes de produção para garantir a melhor disponibilidade do volume. Caso contrário, um evento de queda de um nó pode derrubar mais de uma réplica de um volume.

Permitir Criação de Volumes com Disponibilidade Degradada

Recomendação: false

Desative esta configuração (false) em ambientes de produção para garantir a máxima disponibilidade do volume na criação. Quando habilitado (true), a criação de volumes é bem-sucedida mesmo que o sistema só consiga agendar uma réplica. Isso cria um risco onde o cluster fica sem espaço sem notificar o usuário imediatamente.

Balanceamento Automático de Réplicas

Recomendação: least-effort

Para ambientes de produção, recomendamos definir o Balanceamento Automático de Réplicas para least-effort. Essa configuração garante que pelo menos uma réplica seja colocada em um nó diferente em cada zona, proporcionando alta disponibilidade extra.

Em certos casos extremos, você pode considerar usar o best-effort, que tenta continuamente distribuir as réplicas de forma equilibrada entre nós e zonas. No entanto, essa configuração pode levar a reconstruções frequentes se o cluster estiver instável.

Para a maioria dos usuários, ter várias réplicas sem a configuração de Balanceamento Automático de Réplicas é suficiente para alcançar uma alta disponibilidade básica, especialmente se você preferir evitar reconstruções excessivas e uso de recursos.