Назад | Перейти на главную страницу

Установите параметры ЦП в среде Elastic Beanstalk с помощью Cloud Formation

У меня есть рабочее приложение Elastic Beanstalk, которое выполняет однопоточные вычисления с интенсивным использованием памяти. Все доступные типы инстансов, которые соответствуют моим требованиям к памяти (16 ГБ), имеют 2+ виртуальных ЦП, поэтому я использую только 50% ЦП. Редактировать: Это просто причуда того, как сообщается об использовании ЦП при включенной гиперпоточности.

Я вижу, что для интересующих меня типов экземпляров я могу отключить гиперпоточность, установив параметр Вариант процессора ThreadsPerCore к 1, давая мне бесплатное повышение производительности, но Elastic Beanstalk, похоже, не дает возможности установить это в стандартные настройки.

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

Обновить: Смотря на этот ответ, похоже, что я могу просто "повторно объявить" ресурсы EB и переопределить конфигурацию, поэтому я попробовал следующее в файле .ebextensions .config:

Resources:
  AWSEBEC2LaunchTemplate:
    Type: AWS::EC2::LaunchTemplate
    Properties:
      LaunchTemplateData:
        CpuOptions:
          ThreadsPerCore: 1

Похоже, это приближает меня, но теперь, когда я развертываю Elastic Beanstalk, я получаю следующую ошибку: InvalidParameterValue: Both EC2 Launch Template and AS Launch Configuration exist in the template. Нет результатов в Google для этого.

Это похоже на ссылку на тот факт, что группа автомасштабирования использует либо шаблон запуска, либо конфигурацию запуска, но не оба сразу; но я не касался группы масштабирования, и когда я смотрю на ресурсы, которые EB создает стандартно, там нет конфигурации запуска, только шаблон запуска.