
ptchol
02.10.2018
14:59:40

Protos
02.10.2018
15:00:10
Я просто хотел выяснить может кто-то еще озадачивался

ptchol
02.10.2018
15:00:35
это путь вникуда.

Google

ptchol
02.10.2018
15:00:50
если возникают такие запросы значит инструмент не тот

Protos
02.10.2018
15:00:55

ptchol
02.10.2018
15:01:04
у тебя уже какой раз возникают задачи императивного характера

Protos
02.10.2018
15:01:17
Тут 80% всего под ансибл

ptchol
02.10.2018
15:01:48
так и возьми его
или докер :trollface:

Protos
02.10.2018
15:01:56
Я реализую тем что есть

ptchol
02.10.2018
15:02:52
значит реализовывай на уровне "вот тут должны лежать пароли, заполните этот файл перед запуском, а после удалите"

Protos
02.10.2018
15:03:06
Было бы куда проще если так

Google

ptchol
02.10.2018
15:03:58
и что ? никто не пешает тебе из консоли заюзать expect какой нить и наговнякать это в паппет

Protos
02.10.2018
15:04:21

Максималист
02.10.2018
15:06:12
А ансибл этл императив?
Что за прога такая что ей незя нечего скормить

ptchol
02.10.2018
15:07:14
А ансибл этл императив?
имхо ансибл это баш на стероидах. то что сейчас там завезли для базовой либы present/absent не изменяет картину вцелом как бы.

Максималист
02.10.2018
15:07:50
А в рамках одного проекта можно работать и с ансибл и с пуппет?

ptchol
02.10.2018
15:09:21
ну у человека какой раз возникает задача не которая ложиться в ситуацию "у нас есть формирующийся по таким то правилам стейт, и есть модули в которых мы описываем состояние", человек сам хочет это "привидение" делать, но на уровне паппета а не рубишных модулей
ему бы пониже слезть, и паппет как бы работает, но требует вхождения большего, есть проще инструменты.

Protos
02.10.2018
15:11:03
Большой багет с этого
Могу открывать велосипедную мастерскую уже

Максималист
02.10.2018
15:24:45
Если там и так велосипеда мастерская

Protos
02.10.2018
15:25:35
Когда что-то дико велосипедишь это конечно с точки зрения юзабилити может быть не супер но с точки зрения решений всегда интересно

Максималист
02.10.2018
15:39:02
Главное что бы велика работали в будущем


Denis
02.10.2018
15:41:08
народ приветствую. подскажите пожалуйста, мб ктото сталкивался с такой проблемой. Устанавливаю последний форман командой
foreman-installer \
--foreman-admin-username username \
--foreman-admin-password password \
--foreman-server-ssl-key=/etc/ssl/domain/wcd.privkey.pem \
--puppet-server-foreman=true \
--foreman-server-ssl-cert=/etc/ssl/domain/wcd.cert.pem \
--foreman-server-ssl-chain=/etc/ssl/domain/wcd.chain.pem \
--foreman-server-ssl-certs-dir=/etc/pki/tls/certs \
--foreman-websockets-encrypt=true \
--foreman-websockets-ssl-key=/etc/ssl/domain/wcd.privkey.pem \
--foreman-websockets-ssl-cert=/etc/ssl/domain/wcd.cert.pem \
--puppet-server-foreman=true \
--puppet-server-foreman-ssl-ca=/etc/ssl/domain/wcd.chain.pem \
--foreman-proxy-foreman-ssl-ca=/etc/ssl/domain/wcd.chain.pem \
--foreman-foreman-url=https://puppet.domain
серты вставляет правильно, при входе в веб интерфейс серт валиден и все ок. При попытке сделать puppet agent -t -v на самом сервере формана сыпет ошибку
/etc/puppetlabs/puppet/node.rb puppet.hostname
During fact upload occured an exception: SSL_connect returned=1 errno=0 state=error: certificate verify failed
Unable to read from Cache file: No such file or directory - /opt/puppetlabs/server/data/puppetserver/yaml/foreman/puppet.hostname.yaml
пробовал ставить через обычный foreman-installer c последующей заменой сертов по статье
https://theforeman.org/2015/11/foreman-ssl.html
история та же
народ, отбой, нашел как это в версии 5 решается
в /etc/httpd/conf.d/05-foreman-ssl.conf меняем серты только для
SSLCertificateFile
SSLCertificateKeyFile
ничего не меняем больше, иначе беда будет)
и ставить надо голой командой
foreman-installer

Google

dk
02.10.2018
16:27:53

Protos
02.10.2018
16:30:40
expect
Да я тоже нарыл но чот не могу найти где почитать как правильно юзать

Максималист
02.10.2018
18:58:43
демоны
что за хрень
почему сааамый простой пупет скрипт может часть переменных читать из хиеры в темплейт
а часть заменять переменными из темплейта
типо у меня есть
<%= @user%>/<%= @password%>
в результате получаю на выхоже
vasja/password
вместо password должна была быть переменна их hiera
плак плак
извиняйте так обстрактно - консоли нету под ругой
*рукой

ptchol
02.10.2018
19:35:10
@password должна быть в локальном скопе того класса где ты рендеришь темплейт

Максималист
02.10.2018
19:44:23

Protos
02.10.2018
19:46:49
Типа $password

Максималист
02.10.2018
19:47:37
лан доберусь до компа гляну
в общем

Google

Максималист
03.10.2018
07:26:29
никогда не работаете уставшими или вечером
в пи*?№;
вчера сидел и не понимал почему одни переменные из темплейта папет класс красиво меняет на переменные из хиеры а дргуие нет
все переделал и проверил куда положил класс куда манифест куда хиеру
а оказалось
что вместо $ip_adress = hiera('ip:::adress')

Freddie
03.10.2018
07:28:20
вот поэтому и плохо явно звать hiera()

Максималист
03.10.2018
07:28:24
в классе у новых переменных которые и не читаются написал
$ip_adress = ('ip:::adress')
даун

Freddie
03.10.2018
07:28:44
лучше, если автоматические лукапы в параметры класса, это проще дебажить, и выглядит не так грязно

Максималист
03.10.2018
07:29:25
?????? просрал пару часов на эту херню
стыдно
что за автоматические лукапы
и как их юзать?

Freddie
03.10.2018
07:33:04
https://puppet.com/docs/puppet/5.2/hiera_automatic.html

Максималист
03.10.2018
07:35:52
сеньку май френд !

Protos
03.10.2018
07:59:00
сеньку май френд !
Учти если у тебя в хиере ораганизовано по другому то автолукап будет приезжать только если именование совпадает

Максималист
03.10.2018
08:01:06
посмотрю
сенькс

Google

Freddie
03.10.2018
08:02:27
Не всегда. Но это очень удобная и полезная фича

Protos
03.10.2018
08:02:35
Просто например по себе выяснил что если большой лист то выгоднее напрямую звать хиеру
Что бы не искать концы

ptchol
03.10.2018
08:04:18

Freddie
03.10.2018
08:04:23
Для таких случаев я чаще всего делаю пустые классы, у которых только параметры есть

Protos
03.10.2018
08:04:43

ptchol
03.10.2018
08:05:18
тоесть ты как бы неймспейсы классов используешь всегда и никогда туда не гадишь, а если нужно, держишь типа my_project:: и туда весь вхлам сваливаеш ьи сам там структуру выдумываешь
и если нада уже, в классах враперах берешь оттуда значения и с дефолтными скрещиваешь.

Freddie
03.10.2018
08:05:43
И потом
include ::foo::settings
$var = $::foo::settings::var
То есть класс тупо как контейнер для параметров юзается

ptchol
03.10.2018
08:06:23

Freddie
03.10.2018
08:06:36
Да и нет :)
Принцип очень похож, ага

Protos
03.10.2018
08:07:35
Это все хорошо до того момента когда у тебя классы ведут к толпе темплейтов
Хз может я и не прав но иногда топорное решение самое простое

ptchol
03.10.2018
08:08:45
если у тебя шаблоны имеют кучу "вариабельных" значений по наполнению.
то проще делать всётаки hash и туда передавать как бы содержимое \ секций \ параметров \ значения для этого темплейта
да, это геморно валидировать, но если это ещё и меняется, то классы с 80 параметрами выглядят как гавно прощу прощения, если ещё и валидаторы там через IF и регулярки

Protos
03.10.2018
08:09:35

dk
03.10.2018
08:09:47
Ужасы какие тут. Нет бы конфиги в DEB-пакеты паковать

Protos
03.10.2018
08:09:48
Просто я же говорю проблема в выборе инструмента