1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/openeuler-rubik

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
В этом репозитории не указан файл с открытой лицензией (LICENSE). При использовании обратитесь к конкретному описанию проекта и его зависимостям в коде.
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

Rubik: Гибридная система развертывания для контейнеров

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

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

Чтобы решить эту проблему, мы предложили решение по повышению использования ресурсов Rubik. Rubik буквально означает кубик Рубика. Кубик Рубика был изобретен Рубиком в 1974 году. Поэтому Rubik является именем человека, и кубиком Рубика. В нашем решении Rubik символизирует способность организованно управлять серверами.

При развертывании сервисов в гибридном режиме, движок Rubik помогает улучшить загрузку ЦП на основе конфигураций пользователя (включая QoS-уровни, ограничения кэша и эластичное ограничение скорости), правильно распределяет и изолирует ресурсы для повышения использования ресурсов узла, при этом обеспечивая опыт работы в сети.Rubik в настоящее время поддерживает следующие функции:

  • Абсолютное-превентивное расписание ЦП и выделение памяти
  • [dynCache: ограничение ширины полосы передачи памяти и LLC](./docs/feature.md#dyncache-ограничение ширины полосы передачи памяти и LLC)
  • [ioLimit: ограничение чтения/записи блочного устройства](./docs/feature.md#iolimit-ограничение чтения/записи блочного устройства)
  • [Эластичное ограничение ЦП](./docs/feature.md#поддержка эластичного ограничения)
    • [quotaBurst: решение в пространстве ядра](./docs/feature.md#quotaburst-решение в пространстве ядра)
    • [quotaTurbo: решение в пространстве пользователя](./docs/feature.md#quotaturbo-решение в пространстве пользователя)
  • [iocost: контроль веса I/O](./docs/feature.md#iocost-поддержка iocost для контроля веса I/O)

Как использовать

Мы рекомендуем запускать rubik в виде daemonset в кластере Kubernetes.

Требования к ОС

ОС: openEuler 21.09/22.03/22.09+

Kubernetes:  Yöntem 1.17.0+

Для других ограничений см. Ограничения.

Развертывание

Мы предоставляем скрипт для быстрого опыта, и требуемое изображение rubik находится в hub.oepkgs.net/cloudnative/rubik:latest.

  1. Скачайте файл rubik yaml на узел master в кластере Kubernetes.
$ curl -O https://gitee.com/openeuler/rubik/raw/master/hack/rubik-daemonset.yaml
  1. Запустите команду kubectl для развертывания rubik daemonset.
$ kubectl apply -f rubik-daemonset.yaml
```Затем под `rubik-agent-xxx` будет работать в пространстве имен `kube-system`.

```bash
$ kubectl get pod -A -o wide | grep rubik
# NAMESPACE     NAME                READY   STATUS    RESTARTS   AGE
# kube-system   rubik-agent-6bn8n   1/1     Running   0          12m

Пользовательские настройки

Если вы хотите изменить, скомпилировать и использовать rubik по требованию, обратитесь к:

Если вы столкнулись с какой-либо проблемой, обратитесь к трудностям. Если проблема не решена, пожалуйста, создайте issue. Мы радушно приветствуем и благодарим вас за вклад в сообщество.

Как внести вклад

Мы рады предоставить руководство для новых вкладчиков.

Пожалуйста, подпишите CLA перед внесением вклада.

И вам может потребоваться ознакомиться с руководством для новичков

Лицензия

Rubik лицензирован под Mulan PSL v2.

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

rubik — это агент-управитель QoS для совместного размещения онлайн/офлайн рабочих нагрузок. Развернуть Свернуть
Отмена

Обновления (4)

все

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/openeuler-rubik.git
git@api.gitlife.ru:oschina-mirror/openeuler-rubik.git
oschina-mirror
openeuler-rubik
openeuler-rubik
master