Sander
🤔
Sander
не хочет делать pull, с приватного репозитория из gitlab
Sander
обычный docker pull <name> работает, но через ansible не работает
Elinka22
Sander
а что насчет image pull?
я могу спулить только новый image, но если надо подтянуть какие-то изменения в image,
то он этого не сделает.
Sander
уже перепробывал разными вариантами
Sander
вот так прошло
Sander
- name: "PULL"
docker_image:
state: present
name: "registry.gitlab.com/projects_images/site.ee"
repository: registry.gitlab.com/projects_images/site.ee
pull: True
force: yes
tag: latest
Dmitry
Докероебы захватили чят :)
Sander
😞
Dmitry
Dmitry
Надо юзать теги
Dmitry
Тогда новая версия приедет
Dmitry
При билде
Sander
у меня тег latest
Serge
Sander
тоже самое
Serge
Sander
оставил пока что, и если будет время то займусь
iF
я в свое время это не решил и забил
Все подтягивается. Если изначально расположение ролей, задач и прочего определно и они не прыгают в иерархии, то всё подключается и работает.
Часто бывает так, что в самих задачах прибиты относительные пути, тогда при изменении каталога выходят ошибки. Этот момент если учитывать, то все работает.
Sander
не знаю, вчера долго пробовал, в итоге не вышло
Sander
все равно не работало и не подтягивало ничего
iF
ну видимо у меня волшебная страна )
Dmitrii
Я правильно понимаю, что поставить плагин из локального файла для 5го ластика http://docs.ansible.com/ansible/elasticsearch_plugin_module.html#options — отсос? (В прочем, как обычно)
Svyatoslav
Коллеги, а какие динамические инвентарки используете?
Alf 🙀
Alf 🙀
Dmitrii
Alf 🙀
niko
Попробуйте монгу
niko
Там она вечная может быть
Bogdan (SirEdvin)
https://www.elastic.co/guide/en/elasticsearch/reference/current/rolling-upgrades.html
Лучше вот так
niko
3 часа ниачем
Bogdan (SirEdvin)
Для ansible можно написать просто отдельный скрипт, который будет обрабатывать не для всех нод одномоментно, а по одной
Bogdan (SirEdvin)
Алсо, elastic тоже можно весело подвесить на день шардинга)
Dmitrii
люблю аргументированное общение
Ну а какой смысл в таких советах?) Из разряда "скопируй плагином bash, обмажься changed_when/failed_when чтобы изобрести велосипед^Wидемпотентность"
Dmitrii
Так я тоже умею...
Bogdan (SirEdvin)
Так я тоже умею...
То, что делает этот плагин достигается через copy и force=no
Bogdan (SirEdvin)
Перезапуск то все равно самому делать
Svyatoslav
Alf 🙀
Svyatoslav
работало.
Недолго.. А потом отказались?
Alf 🙀
в последнем солре например есть возможность плагины пушить через рест ендпоинт. такого в эластике я не нашел...
Alf 🙀
но и после пуша плагина, все равно надо делать рестарт, релоада не достаточно, от того что джва класслоад динамично грузится только в платных версиях
Alf 🙀
Dmitrii
Dmitrii
Да на самом деле на данный момент любой вариант прокатит
Dmitrii
Просто не люблю велосипеды. А в мире ансибла кажется надо думать наоборот — сначала велосипед а потом плагин 😕
Dmitrii
Вообще этот модуль какой то странный. fatal: [default]: FAILED! => {"changed": false, "cmd": "/usr/share/elasticsearch/bin/plugin install analysis-phonetic --timeout 1m", "failed": true, "msg": "[Errno 2] No such file or directory", "rc": 2}
Dmitrii
Т.е. он как бы вообще не работает )
Dmitrii
Хотя из этой ошибки походу вытекает что бинарь куда то пропал в принципе
Alf 🙀
Sander
---
есть ansible, есть docker.
меня интересует такой момент, как правильно версионировать с помощью docker версии, чтоб потом можно было откатиться.
А так же, как потом при помощи инструмента Ansible, мне вытащить нужную мне версию? Не ужели после каждого deploy, мне придется менять конфиги в ansible?
---
на данный момент я просто всегда тяну latest, для всоего приложения и все.
Alf 🙀
-e tag= делаешь и все
Alf 🙀
тэг скармливаешь при деплое через например jenkins
Sander
а как jenkins узнает какой тег?
Sander
jenkins же автоматически запускается
Sander
я сливаю в ветку git master, запускантся по хуку деплой
Sander
jenkins делает тесты и потом деплоит на prod
Sander
и ему надо как-то понять какую версию ему деплить
Alf 🙀
аа окей
Alf 🙀
тогда как у тебя идет тэгирование контейнера во время билда?
Sander
пока что никак, всегда latest, я просто думаю, было бы хорошо как-то версонировать, хотяб 5 последних версий/образов в registry держать
Sander
если что-то пойдет не так, можно было бы откатиться
Alf 🙀
ох
Alf 🙀
делаешь билд назначаешь ему аттрибут date который будет тэгом например
Sander
---
docker tag site.ee:latest site.ee:new
docker push site.ee:new
---
Alf 🙀
этот аттрибут в виде енв вар передаешь в другую джобу которая деплоит у тебя
Sander
то есть build мне придется в ручную делать?
Alf 🙀
почему же
Sander
так как я думал что, на стороне дженкинса это будет,
я хочу ток пушить в гит
Alf 🙀
да пожалуйста пушь, кто тебе не дает
Alf 🙀
просто делай тэг - дату и все
Alf 🙀
и делай ее енв вар
Sander
прочитал