Cotas de recursos do Kubernetes no Google Kubenetes Engine

2

Novidade no kubernetes aqui. Eu suspeito que poderia haver uma resposta simples para isso.

Existe uma maneira de desabilitar cotas de recursos no nível do cluster ou pelo menos reduzir as cotas de recursos solicitadas pelos pods do sistema kube para clusters muito pequenos ao usar o Google Kubernetes Engine? Eu gostaria de ter um cluster kubernetes que está publicamente disponível em um provedor de nuvem em vez de minikube no meu laptop, mas não tenho absolutamente nenhuma preocupação com HA e não espere mais do que um punhado de pessoas utilizando serviços nele.

Ao criar um único nó no GKE, os pods do sistema kube solicitam mais de 70% da CPU, mas estão usando < 1% na realidade. Eu relutantemente trouxe um segundo nó apesar de usar apenas 1% da CPU no primeiro nó e descobri que mais de 50% da CPU estava reservada. O kube-dns, por exemplo, leva 27% da CPU em cada nó. Para meus próprios pods, eu defino manualmente que poderia evitar qualquer tipo de solicitação de CPU, mas ao instalar os gráficos de helms, os outros escreveram que quase sempre não agendam os recursos de CPU insuficientes da CPU.

    
por digitaladdictions 06.06.2018 / 04:07

1 resposta

1

Você pode editar as várias implantações criadas pelo GKE, mas elas podem reverter no futuro (por exemplo, ao atualizar seu cluster).

Para ver todas as implantações internas:

$ kubectl get deployments --namespace kube-system
NAME                    DESIRED   CURRENT   UP-TO-DATE   AVAILABLE   AGE
event-exporter-v0.1.9   1         1         1            1           20d
fluentd-gcp-scaler      1         1         1            1           15d
heapster-v1.5.2         1         1         1            1           20d
kube-dns                1         1         1            1           210d
kube-dns-autoscaler     1         1         1            1           210d
l7-default-backend      1         1         1            1           210d
metrics-server-v0.2.1   1         1         1            1           96d

E depois editar um deles:

$ kubectl edit deployment/kube-dns --namespace kube-system

Em seguida, edite a seção de recursos. Você pode reduzir as alocações de recursos ou apenas excluí-los todos juntos. Mas você pode ter alguns problemas de instabilidade se o cluster estiver super alocado.

    
por 06.06.2018 / 06:23