A CustomResourceDefinition (CRD) LoadRampingPolicy, parte do conjunto de agendamento de tráfego do Service Mesh (ASM), define uma política para liberação progressiva de serviços. Este tópico descreve os campos da LoadRampingPolicy.
Visão geral
A LoadRampingPolicy especifica os campos relevantes para as diversas fases de liberação do serviço e os parâmetros de referência para medição de carga. O sistema usa esses valores para determinar se a liberação progressiva deve continuar.
LoadRampingPolicySpec
O LoadRampingPolicySpec é a configuração principal da LoadRampingPolicy e corresponde ao campo spec.
|
Campo |
Tipo |
Obrigatório |
Descrição |
|
drivers |
Sim |
Driver das fases de liberação do serviço. |
|
|
start |
bool |
Sim |
Defina este parâmetro como true durante a implantação para iniciar o processo de liberação. Durante a execução, altere este campo para false caso precise pausar a liberação. |
|
reset |
bool |
Não |
Não especifique este campo na implantação. Para reiniciar manualmente o processo de liberação, defina este valor como true durante a execução. |
|
load_ramp |
Sim |
Configurações do executor do processo de liberação do serviço. |
Drivers
O campo Drivers permite definir diferentes tipos de drivers. Esses componentes coletam métricas de carga dos serviços conforme um método específico e avaliam se o processo de liberação deve avançar para a próxima fase.
|
Campo |
Tipo |
Obrigatório |
Descrição |
|
average_latency_drivers |
AverageLatencyDriver |
Não |
Driver de latência média. Verifica periodicamente a latência média do serviço e decide se a liberação deve prosseguir com base no limiar configurado. |
AverageLatencyDriver
|
Campo |
Tipo |
Obrigatório |
Descrição |
|
selectors |
[]Selector |
Sim |
Seletor para filtrar as requisições específicas das quais o driver extrai os dados de latência do serviço. |
|
criteria |
DriverCriteria |
Sim |
Referência para decidir se a próxima fase de liberação deve ser iniciada. O driver compara a latência coletada com essa referência para tomar a decisão. |
DriverCriteria
|
Campo |
Tipo |
Obrigatório |
Descrição |
|
forward |
Sim |
Referência para avançar à próxima fase de liberação. A transição ocorre quando a carga de requisições coletada pelo driver fica abaixo deste valor. |
|
|
reset |
Sim |
Referência para reiniciar o processo de liberação. O sistema reinicia o fluxo quando a carga de requisições coletada ultrapassa este valor. |
Criteria
O Criteria define um limiar de base que o driver utiliza para comparar os valores coletados. O resultado dessa comparação determina se o processo avança para a próxima fase de liberação.
|
Campo |
Tipo |
Obrigatório |
Descrição |
|
threshold |
float |
Sim |
Limiar de base. |
LoadRamp
O LoadRamp especifica a configuração do executor da liberação do serviço, incluindo as definições do amostrador de requisições e das etapas de liberação.
|
Campo |
Tipo |
Obrigatório |
Descrição |
|
sampler |
Sim |
Configuração do amostrador de requisições. Este componente rejeita uma parcela das requisições com base em uma porcentagem definida ao longo do processo. |
|
|
steps |
[]Step |
Sim |
Definições das múltiplas fases de liberação. Todo o processo envolve transições lineares entre essas fases. |
Sampler
|
Campo |
Tipo |
Obrigatório |
Descrição |
|
selectors |
[]Selector |
Sim |
Seletor para identificar as requisições às quais o amostrador será aplicado. |
Step
O Step define uma fase específica da liberação do serviço.
|
Campo |
Tipo |
Obrigatório |
Descrição |
|
duration |
Duration |
Sim |
Duração da fase de liberação. Unidade: s. Exemplo: 300s. |
|
target_accept_percentage |
float |
Sim |
Porcentagem alvo de aceitação de requisições nesta fase. Durante a transição, o amostrador aumenta linearmente a taxa de aceitação até atingir este valor. |