
Я хочу установить соответствие ЦП для Pod в Kubernetes. Но мне не удалось установить и я столкнулся с трудностями при поиске соответствующих документов.
Что я понимаю:
- По сути, диспетчер ЦП k8s рассматривает все ядра ЦП в узле как общий пул и использует их для запуска модулей, развернутых в узле.
- Если установить поле CPU-manager-policy в kubelet на «static», можно задать привязку CPU к Pod, задав запрос/лимит CPU как целое число в файле .yaml.
Что я сделал:
- Чтобы изменить поле CPU-manager-policy на статическое, я попытался изменить конфигурацию kubelet следующим образом:Связь
- Однако поле CPU-manager-policy не изменилось и по-прежнему равно «none».
- Итак, я изменил поле «cpuManagerPolicy» в /var/lib/kubelet/config.yaml.
- Затем я выполнил команду «sudo systemctl restart kubelet».
- Статус узла изменился на «NotReady», и все модули перешли в состояние ожидания.
Среда, которую я использую:
- версия k8s: v1.13.2
- CNI: Калико
- ОС: Ubuntu 16.04
- Количество узлов: 2 (1 главный, 1 рабочий)
- Приложение: пример приложения istio с именемbookinfo
Заранее спасибо!
решение1
Я решил эту проблему. Вам нужно добавить поле 'kubeReserved' в файл config.yaml. Кроме того, вам нужно удалить файл /var/lib/kubelet/cpu_manager_state. Затем перезапустите kubelet, выполнив 'systemctl restart kubelet'.