Linux Labs

Bash: обработка текста и скрипты / Ступень 2 из 9

sed и awk: правка и поля потока

Не запущена Запускается обычно ~20 с
Выйти из урока

Шаг 8 из 9 · лаба · 25 минсредняя

Смени адрес во всех конфигах

Бэкенд переехал: тридцать конфигов, адрес в них записан по-разному, а комментарии и соседние адреса трогать нельзя.

Ситуация

Магазин работает тридцатью экземплярами приложения, у каждого свой файл настроек в /etc/app.d/ — строки вида ключ=значение. Бэкенд заказов переехал: был 10.20.0.15:8080, теперь 10.20.0.40:8080. Вечером старый сервер выключат, и экземпляры, которые ходят на него, к этому времени должны ходить на новый. Ключ с адресом бэкенда — upstream.

Конфиги годами правили разные люди, руками.

Задача

Сделай так, чтобы во всех /etc/app.d/*.conf:

  1. каждая строка upstream, которая вела на 10.20.0.15:8080, вела на 10.20.0.40:8080;
  2. комментарии остались как были, в том числе закомментированные настройки: по ним коллеги смотрят историю;
  3. остальные строки не изменились — другие ключи и upstream, которые ведут на другие адреса.

Перезапускать приложение не нужно, оно перечитает настройки само. Тридцать файлов руками править долго — правь потоком, но сначала посмотри, как записан upstream в разных файлах.

Лаба · самостоятельно

Команды в этой лабе не даны: набирай их в терминале сам. Цели проверяются на машине после каждой команды.

Цели

0 из 3
  • Во всех /etc/app.d/*.conf строки upstream, которые вели на 10.20.0.15:8080, ведут на 10.20.0.40:8080 — ещё не выполнена
  • Комментарии и закомментированные настройки — как были — ещё не выполнена
  • Остальные строки — как были, в том числе upstream с другими адресами — ещё не выполнена
Ctrl+Enter
Запустит машину node1 · Ubuntu 24.04

Машина запускается

Подсказки

0 из 3

Цели лабы

0 из 3
  • Во всех /etc/app.d/*.conf строки upstream, которые вели на 10.20.0.15:8080, ведут на 10.20.0.40:8080 — ещё не выполнена
  • Комментарии и закомментированные настройки — как были — ещё не выполнена
  • Остальные строки — как были, в том числе upstream с другими адресами — ещё не выполнена
node1 Ubuntu 24.04

Цели лабы

0 из 3
  • Во всех /etc/app.d/*.conf строки upstream, которые вели на 10.20.0.15:8080, ведут на 10.20.0.40:8080 — ещё не выполнена
  • Комментарии и закомментированные настройки — как были — ещё не выполнена
  • Остальные строки — как были, в том числе upstream с другими адресами — ещё не выполнена
Загрузка…