Рубрики
Uncategorized

Держите свои AWS Kubernetes стоит в чеке с интеллектуальным распределением

Традиционное распределение затрат и Кубернаны похожи на нефть и воду. Конечно, контейнерные среды … Помечено с Куберанетами, DevOps, AWS, EKS.

Традиционное распределение затрат и Кубернаны похожи на нефть и воду. Конечно, контейнерные среды облегчают много вещей. Но не этот.

К счастью, есть несколько вещей, которые вы можете сделать с Выделить AWS Kubernetes стоит умнее и держать их в проверке.

Читайте дальше, чтобы узнать, что они есть, и, наконец, удерживают поводья на основе ваших облачных расходов.

Что вы найдете внутрь:

  • Ты не единственный, кто запутался от расходов Кубернана, вот почему
  1. Расчет общих расходов — это кошмар
  2. Контейнеры очень динамичны
  3. Работа с множественными целями трудно
  4. Автоскалинг приводит к более путанице
  • Выделение AWS Kubernetes стоит, умный путь
  1. Используйте классы контейнеров
  2. Сломайте расходы вниз для маркировки и помещения
  3. Установить стандарты маркировки и пространства имен
  4. Разделить и выделить общие расходы
  5. Рассчитывать в расходы на кластеры за пределами ядра
  • Как применить все это и выиграть игру распределения затрат

Ты не единственный, кто запутался от расходов Кубернана, вот почему

Получение висячего …| Kubernetes Стоимость оценки , распределение и отчетность — это то, что каждая команда осознавала свои расходы стремиться.

Но почему это так сложно? Вот 4 Cubernetes стоимость задач, которые мы все слишком хорошо знаем.

1. Расчет общих расходов — это кошмар

Kubernetes Clusters находятся в сущности Shared Services Несколько команд выполняют несколько контейнеров и приложений. Как только команда развертывает контейнер, он использует некоторые из ресурсов кластера — поэтому вам нужно платить за каждый экземпляр сервера, который является частью вашего кластера.

Это не звучит так сильно, пока вы не попробуете сделать эту работу, скажем, три команды работают над десятью уникальными приложениями.

Какое приложение или проект используют самый большой кусок ваших кластерных ресурсов? Вы не можете сказать, потому что все эти проекты используют несколько контейнеров.

Зная, сколько ресурсов использует отдельный контейнер с конкретного сервера, находится рядом с невозможным. И это то, что делает выделение кубернанов настолько сложным.

2. Контейнеры очень динамичны

Срок службы контейнера длится только Однажды Отказ Сравните это, как долго длится ваша виртуальная машина. Это пятна во времени.

Динамический характер вашей контейнерной среды делает расчетные затраты еще более сложными. Вам нужно придумать систему управления затратами, которая может справиться с ней.

3. Работа с множественными целями трудно

Вполне вероятно, что не все расходы на разработку происходят из бюджета DevOps, и у вас есть ряд цен, которые работают в вашей компании.

В то время как команда вашей продукции разрабатывает основные приложения, Другая команда может запустить тень ИТ-проект, который потребляет ресурсы. Вы должны рассмотреть это, особенно если у вашего бизнеса есть несколько цифровых услуг, и каждый поставляется с собственными командами и бюджетами.

Когда несколько команд используют один кластер, идентифицируя, какой из них несет ответственность за какую часть законопроекта — это жесткая гайка для трещины.

4. Автоскалинг приводит к более путанице

Команды часто используют три встроенные Kubernetes autoScaling Механизмы, которые уменьшают отходы (и стоимость) бегущих кластеров. Но AutoScaling оказывает влияние на ваши расчеты затрат.

Например, Vertical Pod AutoScaRer (VPA) Автоматически регулирует запросы и ограничивает конфигурацию для устранения накладных расходов. Это меняет количество запросов на контейнер, увеличившись и уменьшая его распределение ресурсов.

Горизонтальный стручок автоскалер (HPA) Сосредоточется на расширении, чтобы получить лучшее комбинацию CPU или оперативной памяти, выделенной на экземпляр. Это меняет количество контейнеров все время.

Почему это имеет значение? Вот пример сценария:

  • Представьте, что у вас есть три контейнера WebServer, работающие ночью. Все работает хорошо.
  • Но в течение дня есть несколько часов пик — так что HPA весы от 3 до 50 контейнеров.
  • Когда наступает обед и спрос ниже, он весы.
  • И тогда он приносит масштабную резервную копию на дневную точку, только чтобы поселиться на низком уровне, когда день заканчивается.

Количество контейнеров и их размеров очень динамично в этой установке. Это усложняет процесс расчета и прогнозирования AWS Kubernetes еще больше.

Выделение AWS Kubernetes стоит, умный путь

Посмотрите на свой Облачный Билл Отказ Вам заряжается за каждый экземпляр, который составляет кластер, где развернуты контейнеры. Вам нужно платить за этот ресурс, даже если вы не используете его.

Чтобы выделить индивидуальные затраты на контейнер, работающий на заданном кластере, вам необходимо обнаружить, сколько сервера контейнер завершил потребление.

И затем добавьте спутниковую AWS Kubernetes затраты на то, что он также стоит запустить кластер (от узлов управления и лицензирования программного обеспечения к резервному копированию и аварийному восстановлению).

Как это сделать? Вот несколько лучших практик для распределения затрат Kubernetes.

1. Используйте классы контейнеров

Вы можете установить разные ресурсы гарантии на запланированные контейнеры в Kubernetes. Они называются качеством услуг (QoS) классов. Вот быстрое представление:

Гарантировано

Эти стручки являются главным приоритетом и гарантированно не убивают до того момента, когда они превышают свои пределы. Если ограничения и запросы (не равны 0), устанавливаются для всех ресурсов по всему вашим контейнерам и равны, POD классифицируется как гарантировано.

Используйте это для Critical Service Continers, чтобы убедиться, что POD получает VCPU и вообще воспоминание.

Blackable

Если ваша рабочая нагрузка испытывает шипы, он должен иметь доступ к большему количеству ресурсов, когда им нужен. Эта настройка позволяет POD использовать больше ресурсов, чем запрошено сначала — до тех пор, пока емкость доступна на базовом экземпляре.

Этот тип распределения работает как Blastable Events AWS предлагает (T-Series) — они дают вам базовый уровень производительности и позволяют POD взять на себя, когда он требует большего.

Это гораздо более рентабельно, чем инвестирование в инвестиции в экземпляр, достаточно большой, чтобы покрыть шипы, но слишком велики для регулярной работы.

Лучшее усилие

Эти стручки являются самым низким приоритетом и сначала убивают, если ваша система работает из памяти. Это распределение позволяет POD запустить, пока есть лишняя емкость и останавливает его, когда это не так. Он работает как точечные экземпляры в AWS.

Это хорошая идея выделить сочетание стручков, которые имеют разные гарантии распределения ресурсов в экземпляр сервера для увеличения его использования.

Например, вы можете выделить базовую линию ресурсов для гарантированного устройства ресурсов, добавьте несколько разрывных стручков, которые используются до оставшейся части ресурсов, а также лучшие усилия, которые используют любые запасные мощности.

2. Сломайте расходы вниз для маркировки и помещения

Затраты на нарушение в отдельные категории помогают иметь смысл их через этикетки и метки. Вот несколько категорий, которые команды Kubernetes находятся полезны:

  • Биллинговая иерархия — Разработать и выровнять его с вашим облачным расходами (например, проекты, папки или организации),
  • Ресурсы — Эта часть охватывает вычислительные ядра, GPU, TPU, RAM, балансировщиков нагрузки, пользовательские машины, выход сети и т. Д.
  • Пространства имен — это хорошая практика для маркировки конкретных и изолированных контейнеров,
  • Этикетки — Придумайте этикетки, отражающие разные центры, команды, имена приложений, среды и т. Д.

3. Установить стандарты маркировки и пространства имен

Разработайте и реализуйте стратегию маркировки и пространства имен — и придерживайтесь к нему при выделении расходов кластеров. Таким образом, команды, которые используют AWS, могут видеть, какие группы являются затратами на вождение в данном кластере.

Рассмотрим пропорциональные ресурсы, потребляемые каждой группой, и используйте свои выводы для распределения затрат на кластеры для этих групп.

Вот пример:

Допустим, у вас есть четыре пространства имен в кластере. Каждый из них потребляет 25% от кластерных ресурсов. Один из способов выделения затрат потребуется 25% от общего количества расходов на кластер и выделяет их в каждое пространство имен.

Естественно, это пример сценария — не ожидайте, что вещи будут настолько простыми в реальном мире.

Перед тем, как настроить это, установите, как вы будете определять использование кластерных ресурсов — CPU, памятью или комбинацией этих двух? Вы собираетесь посмотреть на запросы или фактическое потребление?

  • Если вы идете на фактическое использование, Каждая команда будет платить только за то, что она использует. Но кто будет освещать счет за простые время? Как вы собираетесь иметь дело с чрезмернопроизводством?
  • Если вы распределите расходы по запросам ресурсов, Вы будете поощрять команды для обеспечения только того, что им нужно, и выделяют все расходы. Но это может также вести команды недооценивать свои требования.

4. Разделить и выделить общие расходы

Компании имеют уникальные способы разделить расходы на инфраструктуру. Эти методы часто унаследовались, когда начинают использовать кубернаны.

Вот набор лучших практик, если вы ищете другой подход:

. Определите, какие общие затраты

Это зависит от зрелости и размера вашей компании. Вы разделяете законопроект об облаке на организационном уровне, но должны выделить его либо в централизованный бюджет или различные центры стоимости. Тем не менее, ваши общие расходы будут взиматься в рамках одного аккаунта, поэтому понимание расходов AWS Kubernetes следует поделиться, является сложной задачей.

Вот несколько примеров общего общих расходов:

  • Общие ресурсы (сеть, хранение, как Data Lakes)
  • Услуги платформы (Kubernetes, Logging)
  • Поддержка и скидки на уровне предприятия
  • Лицензирование и сторонние расходы

В качестве примера принять расходы на поддержку. Они применяются на уровне родительской учетной записи. Хотя некоторые предприятия охватывают их центральным бюджетом команды IT или облачной команды, другие выходят на шаг вперед и выделяют эту стоимость клиентам, как владельцы приложений или бизнес-единиц.

Повышение общих платформ, где несколько команд используют одни и те же основные ресурсы, усложняют это — как системы Kubernetes, которые работают на общих кластерах.

б. Разделите свои общие расходы

Помещения помогают сделать это точно, и вы можете выбрать из нескольких методик:

  • Пропорциональный разрыв — на основе относительного процента прямых затрат
  • Даже разделить — где вы разделяете общую сумму равномерно во всех целях
  • Фиксированная пропорция разделена — на основе пользовательского коэффициента Это немного абстрактно, поэтому давайте покажем пример.

Представьте, что у вас есть несколько бизнес-единиц, которые потребляют другую часть облачных ресурсов:

Вы получаете службу поддержки на корпорацию в размере 15 тысяч долларов, поэтому ваш окончательный законопроект составляет 115 тысяч долларов в месяц.

Вот как это играет в разных методах разделения.

Пропорциональный раскол

В этой модели вы разбили плату за поддержку в размере 15 тысяч долларов среди ваших трех бизнес-подразделений на основе процента их проведения в прямых обвинениях. Итак, команда по продажам операций, которая использует 50% вашего законопроекта, также будет достойна 7,5 тыс. Долларов на их законопроект.

Даже разделен

Эта модель проще, поэтому вы часто можете найти его среди меньших компаний с меньшим количеством бизнес-единиц. В этом случае плата за поддержку поддержки в размере 15 тыс. Долл. США равномерно распределяется всеми бизнес-единицами — так 5 тысяч долларов каждый.

Фиксированная пропорция разделена

При использовании этого метода вы устанавливаете фиксированный процент для привязанности общих расходов на основе прошлых проходов. Идея состоит в том, чтобы получить справедливый разбитый. Поэтому, если вы решите, что распределение общих распределений команды продаж на 40% составляет 40%, то она получит $ 6K в отношении стоимости поддержки предприятия.

5. Рассчитывать в расходы на кластеры за пределами ядра

При выворе расходов на потребителей кластеров рассмотрите спутниковые расходы на эксплуатацию этого кластера, такими как:

  • Управление и эксплуатационные расходы — Это заряжено AWS для управления кластером для вас. Например, EKS заряжает 0,1 доллара за час на Cubernetes Cluster — это сумма к с. 74 доллара в месяц.

Узнайте больше здесь: AWS EKS VS. ECS VS. FARGATE: Где управлять своими куберателями?

  • Хранение — Добавьте затраты на хранение, потребляемое Host OS на узлах, и любое резервное копирование или хранение для поиска данных, которое используется в эксплуатации производственного кластера, может быть выделена обратно к рабочим нагрузкам, работающим на кластере.
  • Лицензирование — Эти расходы могут быть включены в ваш счет AWS, но если вы используете свою собственную лицензию (Boyl), вам нужно выделить эту стоимость с внешних проводов. Кроме того, программные пакеты, работающие на хост-ОС, могут понести лицензионный сбор тоже.
  • Наблюдаемость — Эти метрики и журналы передаются от кластера в службу, которые используют ваши команды для мониторинга и визуализации их. Эта стоимость может быть понесена AWS или сторонним решением SaaS.
  • Безопасность — AWS предлагает множество функций безопасности, но они приходят за дополнительную плату, которая должна быть выделена.

Как применить все это и выиграть игру распределения затрат

Реализация всех этих лучших практик сразу приведет к сокращению вас. Так что начните небольшие и разрабатывать процесс распределения затрат. Создайте понимание того, как эти расходы должны быть выделены в вашей компании.

Или получите решение, которое поддерживает ваши затраты AWS Kubernetes в Bay. Анализ и распределение затрат настолько проще, если у вас есть доступ к подробному обзору, как это:

Вот как начать: Проанализируйте свой кластер бесплатно Чтобы увидеть каждую деталь, которая увеличивает ваш законопроект AWS.

Оригинал: «https://dev.to/castai/keep-your-aws-kubernetes-costs-in-check-with-intelligent-allocation-2l8l»