Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.
Ограничение

Просмотр текущих ограничений потребления оперативной памяти

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

Блок кода
languageactionscript3
themeRDark
sudo docker service inspect --format='{{json .Spec.TaskTemplate.Resources.Limits}}' <service_name>


Примечание
  • <service_name>

здесь <service_name> - имя docker-сервиса, для которого необходимо выяснить заданные ограничения

В поле "MemoryBytes" будет указано ограничение потребляемой оперативной памяти в байтах

Временное ограничение потребления оперативной памяти

Для ограничения потребления оперативной памяти

контейнеру

docker-сервисом после запуска платформы необходимо выполнить следующую команду:

Блок кода
languageactionscript3
themeRDark
sudo docker 
container
service update -
m <X>m
-limit-memory
-reservation
 
<Y>m
<X>m 
<container
<service_name>


<container
Примечание
  • <X>

здесь <X> - максимальный объём оперативной памяти, указывается в мегабайтах.

  • <Y>

здесь <Y> - зарезервированный объём оперативной памяти, указывается в мегабайтах.

  • <service_name>

здесь

<container

<service_name> - имя

контейнера

docker-сервиса, для которого задаются ограничения.


Примечание

Подробнее можно прочитать по ссылке:

https://docs.docker.com/engine/reference/commandline/

container

service_update/


Примечание

В

случае возникновения следующей ошибки

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

Постоянное ограничение потребления оперативной памяти сервисом visiology_vitalk-core

Для проверки установленного ограничения на зарезервированный объём потребляемой оперативной памяти необходимо выполнить команду
  1. Для постоянного ограничения потребления оперативной памяти ViTalk необходимо отредактировать файл vitalk.yml. Нужно перейти в секцию "x-deploy-vitalk-core":


    Блок кода
    languagethemebashRDark
    themelinenumbersEmacs
    Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.

    Необходимо проверить проверить, что требуемые лимиты установились корректно.

Для проверки установленного ограничения на максимальный объём потребляемой оперативной памяти необходимо выполнить команду:

Блок кода
languageactionscript3
themeRDark
sudo docker stats <container_name>
Примечание
  • <container_name>

здесь <container_name> - имя контейнера, для которого задаются ограничения.

В столбце MEM USAGE / LIMIT указано заданное значение.

  1. true
    x-deploy-vitalk-core: &deploy_vitalk_core
      deploy:
        << : *placement
        resources:
          limits:
            memory: 6GB


  2. В поле "memory" задать необходимое ограничение


    Примечание

    Для работы ViTalk необходимо как минимум 3Гб оперативной памяти. При настройке во время первого запуска будет выведено сообщение с рекомендуемым объёмом оперативной памяти.


  3. Перезапустить платформу для обновления ограничений потребляемой оперативной памяти, выполнив следующую команду в директории с дистрибутивом:


    Блок кода
    languageactionscript3
    themeRDark
    sudo
docker inspect
  1.  
<container_name> Примечание
  • <container_name>
здесь <container_name> - имя контейнера, для которого задаются ограничения
  1. .

В поле "MemoryReservation" указано заданное значение (в байтах).

  • Если же значения не соответствуют установленным, следует выполнить шаги, описанные в статье по следующей ссылке: 
  • https://docs.docker.com/install/linux/linux-postinstall/#your-kernel-does-not-support-cgroup-swap-limit-capabilities
    1. /run.sh --restart