Каковы точные системные требования для установки Knative? Почему основные инструкции по установке приводят меня к исчерпанию ресурсов?
Я пытался настроить среду разработки Knative в своей системе. Но каждый раз, когда я развертываю Istio, пилот остается в состоянии ожидания, и я нахожу его из-за истощения ресурсов.
Я следовал основному руководству по настройке из Knative docs. то есть сервировка / блоб / мастер /DEVELOPMENT.md
Теперь, если я устанавливаю и внедряю istio в соответствии с ним, ресурсы истощаются, а istio-pilot остается в состоянии ожидания из-за отсутствия доступного узла.
Если я попробую то же самое с приведенным в руководстве по установке, т.е. https://knative.dev/docs/install/installing-istio/
Он работает нормально до тех пор, пока я не перезапущу кластер, остановленный api-сервер, который соответствует тому, что я нашел при поиске, также из-за нехватки ресурсов.
Итак, каковы точные требования для установки Knative?
Я использовал систему с 8 -ядерным процессором и 32 ГБ оперативной памяти.
Я распределяю это неправильно? насколько я понял, мы должны выделить как минимум 8 ГБ памяти и 6 ЦП для структур kubernetes с одним узлом (это то, что я использую). Как насчет ресурсов, используемых Istio и Knative?
Я проверил ресурсы и ограничения в узле и получил, что ограничения установлены в 0%.
Я уже пытался ограничить ЦП и ОЗУ в конфиге minikube, затем с помощью --cpu и --memory во время запуска миникуба, но вывод остался прежним.
Миникуб стартовал с: миникуб старт
Creating virtualbox VM (CPUs=6, Memory=8192MB, Disk=20000MB) ...
Preparing Kubernetes v1.15.2 on Docker 18.09.8 ...
Pulling images ...
ISTIO Развернуто:
kubectl apply -f ./third_party/istio-1.2-latest/istio-crds.yaml
while [[ $(kubectl get crd gateways.networking.istio.io -o
jsonpath='{.status.conditions[?(@.type=="Established")].status}') !=
'True' ]]; do
echo "Waiting on Istio CRDs"; sleep 1
done
kubectl apply -f ./third_party/istio-1.2-latest/istio.yaml
Пилот остается в ожидании, и после описания модуля мы получаем:
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Warning FailedScheduling 71s (x4 over 5m12s) default-scheduler 0/1 nodes are available: 1 Insufficient cpu.
Выход для kubectl describe node nodename
:
Allocated resources:
(Total limits may be over 100 percent, i.e., overcommitted.)
Resource Requests Limits
-------- -------- ------
cpu 5105m (85%) 13800m (229%)
memory 3749366272 (45%) 9497290Ki (117%)
ephemeral-storage 0 (0%) 0 (0%)
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Normal Starting 19m kubelet, minikube Starting kubelet.
Normal NodeHasSufficientMemory 19m (x8 over 19m) kubelet, minikube Node minikube status is now: NodeHasSufficientMemory
Normal NodeHasNoDiskPressure 19m (x8 over 19m) kubelet, minikube Node minikube status is now: NodeHasNoDiskPressure
Normal NodeHasSufficientPID 19m (x7 over 19m) kubelet, minikube Node minikube status is now: NodeHasSufficientPID
Normal NodeAllocatableEnforced 19m kubelet, minikube Updated Node Allocatable limit across pods
Normal Starting 18m kube-proxy, minikube Starting kube-proxy.
Установка должна была быть успешной, так как я установил лимиты с RequestQuotas и LimitRange тоже. Но ничего не работает.
что я тут не так делаю?