Size: a a a

2020 October 13

E

Elenhil in ru_hashicorp
Alexey Yurchenko
А, понял о чем это. Я просто в meta машины json сохранял, который вставлялся в конфиг номада.
чем вставлялся? просто скриптом на коленке?
источник

AY

Alexey Yurchenko in ru_hashicorp
#!/bin/sh

export NODE_CLASS=$(curl -H Metadata-Flavor:Google 169.254.169.254/computeMetadata/v1/instance/description)

cat /etc/nomad.template.hcl | envsubst > /etc/nomad.d/nomad.hcl
источник

AY

Alexey Yurchenko in ru_hashicorp
(это старое решение, в новом json, смысл тот же)
источник

AY

Alexey Yurchenko in ru_hashicorp
envsubst удобнее чем sed
источник

E

Elenhil in ru_hashicorp
угу. Ну да, это у меня тоже в голове есть, но хотелось какой-то безбашовый способ =(
источник

AY

Alexey Yurchenko in ru_hashicorp
Можно делать старт nomad
bash -c 'exec nomad ... `curl from metadata`'
из того, что надумалось. Но не уверен.
источник

AY

Alexey Yurchenko in ru_hashicorp
В смысле запускать как
nomad agent -meta SOME=$(command)
источник

E

Elenhil in ru_hashicorp
эт все костыли =(
источник

AY

Alexey Yurchenko in ru_hashicorp
Можно сделать systemd service шаблон, который принимает название конфига и делать enable его через cloud init
источник

AY

Alexey Yurchenko in ru_hashicorp
nomad@custom-config1
источник

AY

Alexey Yurchenko in ru_hashicorp
nomad agent -config /etc/nomad/%I.hcl
источник

AY

Alexey Yurchenko in ru_hashicorp
runcmd:
 - [ systemctl, daemon-reload ]
 - [ systemctl, enable, nomad@custom-config1.service ]
 - [ systemctl, start, --no-block, nomad@custom-config1.service ]
источник

AY

Alexey Yurchenko in ru_hashicorp
Ну так то же никто не мешает делать echo "..." > /etc/nomad/config в cloud init 😄
источник

JR

Jürgen Romins in ru_hashicorp
Elenhil
Господа, вопрос. Есть packer, пакером делаем образ номадной тачки.
Столкнулись с проблемой - у нас должна быть разная meta для разных тачек, а образ хотим один, и чтобы он не требовал post-provision после подъема тачки
Допустим, есть ажурные теги из которых мы можем эту мету вытащить.
Как ее сложить в конфиг то? Кроме cloud-init + sed
Собсно вопрос даже не про номад, а про vm-specific конфиги на выходе из пакера
Можно на пистоне наваять скрипт который тебе на основе тегов будет настраивать тебе после поднятия тачки
источник

E

Elenhil in ru_hashicorp
Костыли) но спасибо за идеи
источник

E

Elenhil in ru_hashicorp
Надеялся мб есть какой бестпрактис
источник

m

manefesto in ru_hashicorp
Костыль это провижен кластера Номада. Я сам накатал роли в ансибле
источник

AY

Alexey Yurchenko in ru_hashicorp
manefesto
Костыль это провижен кластера Номада. Я сам накатал роли в ансибле
А что там сложного?
источник

AY

Alexey Yurchenko in ru_hashicorp
Есть готовые роли, но там пару команд... толку навороченные использовать нет
источник

m

manefesto in ru_hashicorp
Да ничего. У меня куча сред. И все это прикрывать через iptables
источник