Andrey
ноды идентичные
Yaroslav
он крайне легкий.
смотря для чего. если чтоб легаси сшить - нормально, а если свое писать, то лишняя и тяжелая обвязка.
Rainbow
после nomad только k8s. Ну ок, есть k3s, но это рисково
Rainbow
ноды идентичные
ну процессы будут жить. Просто не будет кворума и все замрёт.
Yaroslav
отпять же трафик какой - плюшевый http api раз в секунду или бинарные потоки.
Rainbow
nomad шедулит койнеры на хосте. Какой трафик?
Rainbow
там нет оверлейной сети или ещё чего. Это не его проблемы.
Andrey
вообщем смысл такой. В одном сервере 1Gb/1CPU все это прекрасно работает (по 10000 SSL/WebSocket коннектов тянет каждый). И не хотелось бы ради оверлейной сети городить избыточную инфраструктуру.
Andrey
То есть простейшее решение: ssh туннели
Andrey
если consul это решит проще + даст KV, то супер
Andrey
Согласен
Andrey
отл. А для nomad я пока не созрел, но он как я понял поверх консула работает ведь?
Andrey
Слушайте, а кто нибудь тут soltstack знает?
Rainbow
отл. А для nomad я пока не созрел, но он как я понял поверх консула работает ведь?
нет, может без него. Но consul делает service discovery и healtcheck, это очень полезно.
Andrey
service discovery и healtcheck - да, именно это и надо
Andrey
жалко он на Go написан, а не на C
Rainbow
если у вас статические контейнеры - не испольйте докер.
Rainbow
используте ansible и все.
Rainbow
не используйте nomad*
Andrey
Я сейчас выбираю между ansible и soltstack
Andrey
контейнеры статичны - да
Rainbow
https://docs.ansible.com/ansible/latest/modules/docker_container_module.html https://docs.ansible.com/ansible/latest/modules/consul_module.html
Rainbow
таск на docker run, таск на регистрацию service - пару строк и хорошо.
Rainbow
https://github.com/brianshumate/ansible-consul хорошая роль
Andrey
спасибо
Rainbow
node_exporter тоже стоит на хосты ставить
Rainbow
https://github.com/cloudalchemy/ansible-node-exporter хорошая роль =) и у них же prometheus для мониторинга
Andrey
@devops_ru
Спасибо
Игорь
Вопрос. Было приложение монолит с Celery и MongoDB. Без докера. Теперь Celery и Mongo рассованы каждый в свой контенер. Но появилась проблема. Celery делало дампы монго по расписанию с помощью mongodump. Но так, как монго теперь крутиться в отдельном контейнере, то у Celery больше нет доступа к утилите. Как быть в этой ситуации?
George
вообще не пользоваться mongodump
George
использовать бекап на хост машине при помощи LVM snapshot
George
🙂
Serg
Что-то торможу.. есть такой docker compose файл: https://pastebin.com/WNkdypXw где в app по идее нет никаких маунтов. Но docker inspect показывает mounted volume: "Mounts": [ { "Type": "volume", "Name": "......", "Source": "/var/lib/docker/volumes/...../_data", "Destination": "/app", "Driver": "local", "Mode": "rw", "RW": true, "Propagation": "" } ],
Serg
не могу понять откуда это взялось..
Ильдар
бывает)
Serg
это из докер файла VOLUME ["/app"] ?
Serg
блин, как только напишешь вопрос, находишь ответ..
Serg
при чем волиум не обновляется при обновлении docker image - остаются старые файлы, почему так?
inqfen
Перенес туда прод базы, полет нормальный
inqfen
На слейве останавливается репликация, затем снапшот
🤔
в чем может быть причина приличного сжирания CPU демоном докера?
George
Рекомендую zfs
ну, можно и zfs/btrfs
George
в чем может быть причина приличного сжирания CPU демоном докера?
про нагрузку расскажи? сколько ядер? что там с логами? сколько контейнеров? и каких?
Sergey
Профилирование и трейсинг с perf. Когда нужно отыскать причину сбоя, не имея доступа к исходным кодам. Все логи уже просмотрены, все debug и verbose-ключи включены, а причина проблем так и не обнаружена — используйте perf: http://amp.gs/4ZBY
Sergey
думаю в тему dockerd Лол
Ильдар
лол, не прошло и года) https://jvns.ca/blog/2018/04/16/new-perf-zine/
Sergey
=)
Nutscracker
Подскажите как можно решить проблему, не получается расшарить папку локальную для дублирования данных с помощью опции volumes: вот такой файл docker-compose.yaml version: '3.1' services: db: build: ./db restart: always environment: MYSQL_ROOT_PASSWORD: somesome command: mysqld --innodb-flush-method=littlesync --innodb-use-native-aio=OFF --log_bin=ON volumes: - ./databases:/var/lib/mysql в db/Dockerfile FROM mariadb работаю на win 10 home, стоит сборка докера с virtualbox. в виртуальной машине создал дополнительную папку в которой я хочу работу вести http://prntscr.com/myrikl в итоге при docker-compose up не копируются в папку databases файлы базы данных
George
В постгресс там докерфайл так написан, что если ты подключаешь вольюм, он пустой (нет базы) , то запускается процесс создания БД
Nutscracker
При докер-компоуз ап они разве должны копироваться ?
смотрел вот эту интсрукцию и тут данные копируются даже если ты не создавал базы свои https://www.youtube.com/watch?v=OCNzafcF2Yw&list=PLD5U-C5KK50XMCBkY0U-NLzglcRHzOwAg&index=9
George
Тогда логи контейнера при запуске смотри.
Nutscracker
сейчас попробовал создать - не появилась моя база в папке
George
В какой ?
George
Я думаю, что ты пытаешься замахнуться сразу на многр
Nutscracker
volumes: - ./databases:/var/lib/mysql
Nutscracker
в databases
George
Попробуй поэтапно. Сначала без проброса каталога (проверишь, что все ок)
Nutscracker
без проброса все работает
George
Потом добавь volume (а не каталог)
Nutscracker
и с пробросом тоже работает
George
Потом добавь bind mount на каталог
George
Может у тебя виртуалбокс мозги насилует
George
В общем, кртако - проблем быть не должно, поэтому ты скорее всего что-то не то делаешь
Nutscracker
спасибо попробую)
Ильдар
смотрел вот эту интсрукцию и тут данные копируются даже если ты не создавал базы свои https://www.youtube.com/watch?v=OCNzafcF2Yw&list=PLD5U-C5KK50XMCBkY0U-NLzglcRHzOwAg&index=9
Потренируйся на кошках. Заведи контейнер с alpine, в нём скрипт который создаёт в заданной директории файл. Нафиг сразу на базу и непойми что замахиваться.
George
тоже верно
Mi
подскажите тупарю, в чем проблема. запускаю elasticsearch в через docker-compose. в файл есть такая строчка volumes: - /DATA/elk:/usr/share/elasticsearch/data при запуске ругается: ERROR: for 167649c63f74_elasticsearch Cannot start service elasticsearch: error while creating mount source path '/DATA/elk': mkdir /DATA: read-only file system ERROR: for elasticsearch Cannot start service elasticsearch: error while creating mount source path '/DATA/elk': mkdir /DATA: read-only file system ERROR: Encountered errors while bringing up the project. я сначала сделал на директорию /DATA и /DATA/elk 777. это не помогло. я поменял также права через chown 1000 -R /DATA. но ошибка остается все равно.
Mi
если строку убираю, контейнер запускается.
Ильдар
Создай в /tmp или в домашней директории директорию и с ней попробуй.