dmosk / k8size

Конвертер единиц Kubernetes

Переводите CPU и память в формат манифестов, вставляйте 500m/256Mi, смотрите предупреждение Mi vs M, делитесь ссылкой и проверяйте QoS. Всё в браузере — без API.

requests — гарантированный минимум для планировщика; limits — потолок потребления. Обычно requests ≤ limits; равные значения → Guaranteed QoS. Документация: Resource Management.

CPU

Память

Класс QoS (один контейнер)

Упрощённый вид для одного контейнера — не советник по размеру кластера.

Класс: BestEffort

Зачем нужен k8size

  • Cores ↔ millicores. Введите дробные ядра, целые милликоры или вставьте 500m / 0.5 — увидите обе формы и YAML.
  • Mi vs M с предупреждением. При десятичных суффиксах сервис предупреждает и предлагает двоичный вариант (256M → 256Mi).
  • Шаринг расчёта. Кнопка «Ссылка» копирует URL с ?cpu= и ?mem= для чатов и тикетов.
  • QoS одного контейнера. Guaranteed / Burstable / BestEffort по request/limit — без sizing-advisor.
  • Готовые YAML-фрагменты. Копируйте строки cpu и memory для requests и limits.
  • Только в браузере. Без API; значения не уходят с устройства.
  • Бесплатно и на многих языках. Без аккаунта; UI и SEO на каждую локаль набора.

Как конвертировать единицы Kubernetes

  1. Введите число или вставьте величину целиком (500m, 256Mi).
  2. При десятичной памяти прочитайте предупреждение и при необходимости подставьте Mi/Gi.
  3. Скопируйте YAML или нажмите «Ссылка», чтобы поделиться ?cpu=&mem=.
  4. При желании заполните request/limit в блоке QoS и посмотрите класс.

Единицы, requests и limits

Kubernetes принимает CPU как cores или millicores (m), а память — с двоичными (Ki/Mi/Gi/Ti) или десятичными (k/M/G/T) суффиксами. Сервис только переводит величины и не подсказывает «правильный» размер requests.

Рекомендации:

  • 1 core = 1000 millicores; 500m равно 0.5.
  • Mi/Gi — степени 1024; M/G/MB/GB — степени 1000.
  • requests влияют на планирование, limits ограничивают потребление — обычно requests ≤ limits.
  • Одинаковые requests и limits по CPU и памяти дают Guaranteed QoS.
  • Договаривайтесь в команде об одном стиле единиц, чтобы не путать Mi и M.
  • Это не sizing-advisor — реальную нагрузку измеряйте отдельно.
  • При M/G/MB сервис предупреждает: часто нужен Mi/Gi.
  • Ссылка с ?cpu=&mem= удобна для тикетов и ревью.

Для чего нужен сервис

  • проверить millicores и cores перед правкой Deployment;
  • сравнить Mi и M при чтении чартов и манифестов;
  • подготовить YAML-фрагменты для requests и limits;
  • показать разницу двоичных и десятичных суффиксов;
  • быстро свериться на ревью или во время инцидента.

Частые вопросы

Что означает суффикс m у CPU?

Милликоры: 1000m — одно полное ядро. Дробное 0.5 равно 500m.

Mi — это то же, что M или MB?

Нет. Mi = 1024² байт; M и MB = 1000² байт. Путаница меняет реальный размер.

Сервис загружает мои значения на сервер?

Нет. Конвертация идёт только в браузере.

Подскажет ли он правильные requests для приложения?

Нет. Только перевод единиц и краткая подсказка — не sizing-advisor.

Какой YAML для CPU лучше?

И 500m, и 0.5 валидны; выберите один стиль и придерживайтесь его.

Поддерживаются ли KB/MB/GB?

Да, как 1000-базовые алиасы рядом с K/M/G/T.

А Ti и T?

Ti — 1024⁴ байт; T/TB — 1000⁴. Обе строки есть в таблице памяти.

Обязателен ли Guaranteed QoS?

Нет. Это один из классов QoS, когда requests равны limits по CPU и памяти.

Это редактор манифестов?

Нет. Только конвертация единиц и короткие YAML-фрагменты.

Сервис платный?

Нет — бесплатно, без регистрации и лимитов на конвертации.

Что делает предупреждение про M и Mi?

Если выбрана десятичная единица (M/G/MB…), сервис напоминает, что в манифестах чаще имеют в виду двоичные Mi/Gi, и предлагает подставить их.

Как поделиться расчётом?

Нажмите «Ссылка» — в буфер попадёт URL с параметрами ?cpu= и ?mem=. Можно открыть ссылку и получить те же значения.

Что показывает блок QoS?

Упрощённый класс Guaranteed, Burstable или BestEffort для одного контейнера по полям request/limit. Это не рекомендация размера нагрузки.