Garantia de largura de banda de rede de egress
A garantia de largura de banda da rede de egress é implementada definindo as prioridades da rede. Ela possui as seguintes vantagens:
- A largura de banda da rede de egress usada por serviços on-line e off-line é balanceada para garantir largura de banda de rede suficiente para serviços on-line. Quando o limite for atingido para serviços on-line, a utilização da largura de banda dos serviços off-line será reduzida.
- Quando os serviços on-line ocupam um pequeno número de recursos de rede, os serviços off-line podem usar mais largura de banda. Quando os serviços on-line ocupam um grande número de recursos de rede, o uso de recursos dos serviços off-line será reduzido para garantir que mais largura de banda de rede priorize os serviços on-line.
Restrições
Para usar a garantia de largura de banda de rede de egress, os seguintes requisitos devem ser atendidos:
- Somente nós que executam o Huawei Cloud EulerOS 2.0 são suportados.
- Apenas os clusters do CCE Turbo de v1.23 ou posterior são suportados.
- O complemento volcano de 1.9.0 ou posterior deve ser instalado no cluster e a função de implementação híbrida deve estar habilitada (colocation_enable nas configurações avançadas deve ser definido como true).
- Antes de ativar, modificar ou desativar a garantia de largura de banda de rede de egress, certifique-se de que o complemento volcano esteja funcionando.
- Para pods que foram executados no nó antes do complemento volcano ser instalado, reinicie manualmente os pods depois de ativar a garantia de largura de banda da rede para que o recurso possa entrar em vigor.
- Desinstalar o complemento volcano ou desativar a função de implementação híbrida (isto é, definindo colocation_enable nas configurações avançadas para false) não afeta a garantia de largura de banda de rede de egress existente no nó. Para desativar esse recurso, consulte Desativação da garantia de largura de banda de rede de egress.
- Se o limite de largura de banda estiver ativado, o cache da pilha de protocolo poderá ser empilhado. Para protocolos sem mecanismos de contrapressão, como UDP, perda de pacotes e ENOBUFS pode ocorrer.
- O limite de largura de banda aumenta o risco de que os serviços off-line não consigam obter largura de banda. Os serviços podem até passar fome devido à largura de banda insuficiente ou a verificação de saúde do pod pode falhar.
- A garantia de largura de banda de rede de egress não é priorizada nos seguintes cenários:
- Quando o limite de largura de banda da rede é usado para pods híbridos on-line ou offline, a prioridade do limite de largura de banda da rede é maior do que a da função atual.
- Quando um pod usa a rede de nó (hostNetwork), a função de garantia de largura de banda da rede de egress não entra em vigor.
Procedimento
O seguinte descreve como ativar ou desativar a garantia de largura de banda de rede de egress.
- Efetue logon no console do CCE e clique no nome do cluster para acessar o console do cluster.
- No painel de navegação à esquerda, escolha Nodes. Clique na guia Node Pools. Ao criar ou atualizar um pool de nós, ative a implementação híbrida de serviços on-line e offline em Advanced Settings.
- volcano.sh/oversubscription=true
- volcano.sh/colocation=true
Figura 1 Configurações de rótulo do nó
- No painel de navegação à esquerda, escolha Add-ons. Clique em Install sob volcano. Na área Advanced Settings, defina colocation_enable como true para permitir a implementação híbrida de serviços on-line e off-line. Para obter detalhes sobre a instalação, consulte Volcano scheduler.
Se o complemento vulcão tiver sido instalado, clique em Edit para exibir ou modificar o parâmetro colocation_enable.
Figura 2 Ativar a implementação híbrida de serviços on-line e off-line
- Ative ou modifique parâmetros para garantia de largura de banda de rede de egress.
Depois de confirmar que o complemento volcano está funcionando, execute o seguinte comando para editar o parâmetro configmap de volcano-agent-configuration no namespace de kube-system. Se enable for definido como true, a garantia de largura de banda de rede de egress será ativada e os parâmetros relacionados poderão ser modificados.
kubectl edit configmap -nkube-system volcano-agent-configuration
Exemplo:
networkQosConfig: enable: true onlineBandwidthWatermarkPercent: 80 offlineLowBandwidthPercent: 10 offlineHighBandwidthPercent: 40
Os parâmetros modificados entram em vigor para todos os nós que executam o Huawei Cloud EulerOS 2.0 no cluster.
Tabela 1 Parâmetros de networkQosConfig Nome
Descrição
enable
Especifica se deve ativar a funcionalidade de garantia de largura de banda da rede de egress.
onlineBandwidthWatermarkPercent
Relação entre o limite de largura de banda total dos serviços online e a largura de banda de base do modelo, ou seja:
Total bandwidth threshold of online services = Baseline bandwidth of the model x onlineBandwidthWatermarkPercent/100
Intervalo de valores: 1–1000
Valor padrão: 80
offlineLowBandwidthPercent
Relação entre o uso total máximo de largura de banda dos serviços off-line e a largura de banda de base do modelo quando o uso de largura de banda dos serviços on-line excede o limite.
Se o uso total da largura de banda dos serviços on-line no mesmo nó exceder o valor de Baseline bandwidth of the model x onlineBandwidthWatermarkPercent/100, o uso total da largura de banda dos serviços off-line no mesmo nó não pode exceder o valor de Baseline bandwidth of the model x offlineLowBandwidthPercent/100.
Intervalo de valores: 1–1000
Valor padrão: 10
offlineHighBandwidthPercent
Proporção entre o uso total máximo de largura de banda dos serviços off-line e a largura de banda de base do modelo quando o uso de largura de banda dos serviços on-line não excede o limite.
Se o uso total da largura de banda dos serviços on-line no mesmo nó não exceder o valor de Baseline bandwidth of the model x onlineBandwidthWatermarkPercent/100, o uso total da largura de banda dos serviços off-line no mesmo nó não pode exceder o valor de Baseline bandwidth of the model x offlineHighBandwidthPercent/100.
Intervalo de valores: 1–1000
Valor padrão: 40
Figura 3 Exemplo de garantia de largura de banda de rede de egress
- Para desabilitar a garantia de largura de banda de rede de egress, depois de confirmar que o complemento volcano está funcionando, execute o seguinte comando para editar o parâmetro configmap de volcano-agent-configuration no namespace de kube-system. Defina enable como false.
kubectl edit configmap -nkube-system volcano-agent-configuration
Modifique os seguintes parâmetros:
networkQosConfig: enable: false onlineBandwidthWatermarkPercent: 80 offlineLowBandwidthPercent: 10 offlineHighBandwidthPercent: 40