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

Может быть, ответ на этот вопрос очевиден, но предположим гипотетически, что я управляю 2 серверами с различными IP-адресами, маршрутизируемыми в общедоступном Интернете (т.е. не в локальной сети). Сервер 1 запускает только веб-сервер , а сервер 2 запускает только ssh-сервер . Могут ли оба сервера сосуществовать под одним доменным именем, скажем «twoservices.org»?

  • Сервер 1: ssh server только на отдельном IP pulbic address
  • Server 2: веб-сервер только на отдельный IP pulbic адрес

Поэтому скажите, что я хочу подключиться к ssh server тогда я бы

  • ssh user@twoservices.org

и если я хочу подключиться к веб-серверу, то

Можно ли использовать запись DNS A для каждого из 2 IP? Если нет, то как это может быть реализовано?

-121--308008- Можно ли установить vm.overcommit_memory = 1 только для определенных контейнеров? Поэтому я запускаю контейнер, который показывает это в журнале: WARNING overcommit_memory имеет значение 0! Фоновое сохранение может завершиться сбоем в условиях нехватки памяти. Чтобы устранить эту проблему, добавьте «» vm.overcommit _ memory =...

Итак, я запускаю контейнер, который показывает это в журнале:

WARNING overcommit_memory имеет значение 0! Фоновое сохранение может завершиться сбоем в условиях нехватки памяти. Чтобы устранить эту проблему, добавьте «» vm.overcommit _ memory = 1 «» в файл/etc/sysctl.conf, а затем перезагрузите компьютер или выполните команду «» sysctl vm.overcommit_memory=1' «», чтобы это вступило в силу.

Проводя большую часть своей жизни в Windows, я почти на 80% не знаю Linux, и, насколько я могу судить, при настройке этого параметра он делает это в масштабах всей системы, что также повлияет на все остальные контейнеры. Хочу ли я сделать это?

Есть ли способ установить это только для контейнера, который рекомендует это? Я должен добавить на случай, если это поможет, что я запускаю docker desktop в WSL2 режиме.

Обновление: В соответствии с его комментарием, я добавляю контейнер, о котором идет речь; называется Папермерге.

0
задан 12 February 2021 в 00:11
1 ответ

Есть ли способ установить это только для контейнера, который

Нет. vm.overcommit_memory - это настройка ядра Linux, на уровне хоста, а не контейнера. Значение 0 - это более осторожный overcommit, чем 1.

Redis рекомендует 1, потому что их механизм фонового сохранения. Большой процесс базы данных в памяти форкает себя, чтобы сохранить копию, как вдруг Linux догадывается, что ему может понадобиться вдвое больше памяти, и не разрешает форк. Это нежелательно для Redis, который не меняет эту память, а только хочет получить копию при записи снапшота.

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

0
ответ дан 24 April 2021 в 02:12

Теги

Похожие вопросы