stackabletech / stackabletech/stackablectl
Throttle requests when api-server tries to rate limit stackablectl
Ninguém assumiu esta issue ainda.
- Linguagem predominante
- Rust
- Estrelas
- 10
- Forks
- 5
- Merge médio
- 4h 41min
- PRs com merge (30d)
- 4
Descrição
When trying to run stacklet list an an AWS eks cluster recently (replicated cluster, k8s 1.32) - the api-server was apparently unhappy about the rate at which requests were sent to retrieve details for Stackable objects.
soenke-desktop:~$ stackablectl stacklet list
An unrecoverable error occured: failed to execute stacklet (sub)command
Caused by these errors (recent errors listed first):
1: failed to list stacklets
2: failed to fetch data from the Kubernetes API
3: failed to fetch data from Kubernetes API
4: ApiError: storage is (re)initializing: TooManyRequests (ErrorResponse { status: "Failure", message: "storage is (re)initializing", reason: "TooManyRequests", code: 429 })
5: storage is (re)initializing: TooManyRequests
We should probably somehow honour 429 status codes and throttle requests in that case. Or maybe implement this upstream in kube-rs.
Guia de contribuição
Nenhum guia de contribuição indexado para este repositório
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Direção de pesquisa
Comece pelo caminho da requisição usado pelo comando stackablectl stacklet list e rastreie como os erros da API do Kubernetes são tratados. Verifique se o kube-rs já expõe algum comportamento de retry ou throttling para respostas HTTP 429 e, se possível, reproduza a falha em um cluster EKS. A tarefa estará concluída quando o comando tratar a condição de limite de taxa relatada sem falhar imediatamente, e o comportamento escolhido estiver verificado por testes ou por uma reprodução.
Escrita pelo modelo de indexação a partir do texto da issue.
Avaliação
- Stack de tecnologia
- kubernetes, rust
- Domínio
- api, cli
- Tipo de issue
- Bug
- Dificuldade
- 4/5
- Tempo estimado
- 3-5 dias
- Status de atividade
- Estagnada
- Clareza
- Precisa de esclarecimento
- Facilidade para iniciantes
- 35/100