
Dmitrii
08.05.2017
11:13:11
В смысле старые? Если да то вроде звучит логично

Let Eat
08.05.2017
16:04:51
Ну CloudFormation вот перезапускает, очень удобно

Dmitrii
08.05.2017
16:08:56
Мне кажется это не задача ASG.
Есть же еще LC. А старые ноды, кмк должны подсасывать инфу через что-то типа Consul.

Google

Dmitrii
08.05.2017
16:10:09
Какой у вас юз-кейс для рестарта?
Замержили фичу. В след версии TF будет дата-сорс http.
https://github.com/hashicorp/terraform/pull/14270
Пример:
data "http" "example" {
url = "https://checkpoint-api.hashicorp.com/v1/check/terraform"
# Optional request headers
request_headers {
"Accept" = "application/json"
}
}

Slach
09.05.2017
14:40:54
народ, как выцепить core dump из упавшего контейнера?
cat /proc/sys/kernel/core_pattern
|/usr/share/apport/apport %p %s %c %P
в какой каталог смотреть?
docker под ubuntu xenial последний стабильный

Let Eat
09.05.2017
16:48:30
Какой у вас юз-кейс для рестарта?
Как какой? У вас tf вернул success , а ноды какими были такими и остались. Если запускать с нуля, то ноды будут новыми при том же самом success, неконсистентненько. Откуда вам знать что новый LC жизнеспособен, кроме как ноды обновить

Алексей
09.05.2017
16:52:15
парни, а можно както консулу подсказать порядок выбора сервиса при резолве через днс ?
у меня сейчас есть 2 сервиса с разными тегами, но одним именем, я хочу что бы всегда отдавался первый и если он помрет тогда второй пока не поднимется первый.
я в принципе видел что там есть query, но не вижу там фильтров по тегам

Rauf
09.05.2017
16:57:28

Jan
10.05.2017
16:45:43
в телеге не хватает reactions, как в slack, что бы вместо тысячи слов

Dmitrii
10.05.2017
19:17:31
> Q. Does Amazon VPC support multicast or broadcast?
>
> No.
Кто может сказать почему такие ограничения?

Sergey
10.05.2017
19:22:23
Кто может сказать почему такие ограничения?
by design вероятно.
не знаю о дизайне VPC в амазоне, но предположу, что broadcast/multicast могут чрезвычайно сильно нагружать нижележащую физическую сеть, как, например это было бы в случае unicast VXLAN.

Magistr
10.05.2017
19:26:12

Dmitrii
10.05.2017
19:26:42
Печаль

Google

Alexey
10.05.2017
20:47:35
Потому что наверняка VPC это оверлей и эмулировать броадкаст/мультикаст там очень дорого

Roman
10.05.2017
21:34:18

Alex Milushev
11.05.2017
13:14:00
хай
есть спецы по терраформу?

Александр
11.05.2017
13:14:28
Хрыч
?
Спец из спецов во всём

Alex Milushev
11.05.2017
13:18:02
бля, Я про людей которые разбираются, а не говорят, что разбираются

Александр
11.05.2017
13:18:26
Эм, тут вроде Котовский мучался с терру

Alex Milushev
11.05.2017
13:22:51
короче, нужно в интерполяции для aws_instance.etcd.*.private_ip получить номер инстанса
точнее даже для aws_instance.etcd.*
то есть всех инстансов получить список типа [etcd.0, etcd.1, etcd.2, ...]

Dmitrii
11.05.2017
13:33:52

Александр
11.05.2017
13:35:20
котоплексия

Dmitrii
11.05.2017
13:35:28
Еще вроде через jsonencode() можно но не пробовал
А, номер. Сорри

Alex Milushev
11.05.2017
13:36:27

Dmitrii
11.05.2017
13:36:47
https://www.terraform.io/docs/configuration/interpolation.html#index-list-elem-
Вот попробуй эту функцию

Google

Dmitrii
11.05.2017
13:37:18
Но нужно что-то хтя бы знать об инстансе. Например его IP
Тогда оно вернет его индекс
@zunkree лучше скажи что в итоге должно на выходе получиться в "примитиве"?

Alex Milushev
11.05.2017
13:40:01
{
"etcd.0" = "10.2.2.1",
"etcd.1" = "10.2.2.2",
"etcd.2" = "10.2.2.3"
}
через zipmap думал сделать, два списка нужно, с ip и index
первый получить не проблема, а вот индекс не могу найти как

Dmitrii
11.05.2017
13:41:35
Сформируй через format() + count.index
Если совсем веру потеряешь, то открой вот эту ссылку: https://www.terraform.io/docs/providers/external/data_source.html#processing-json-in-shell-scripts
(Disclaimer: Я Terraform только сам как 2ю неделю юзаю)

Alex Milushev
11.05.2017
14:04:04

Dmitrii
11.05.2017
14:04:37
Ну я ж хз где тебе это надо :)

Alex Milushev
11.05.2017
14:05:53

Dmitrii
11.05.2017
14:06:34
Я пока решил для себя что забью на модули, аутпуты и прочее и ограничился одни файлом + data source юзаю иногда
Вот как на TF все переведу начну рефакторить
А то я с наскоку тоже сначала начал, свои модули вокруг модулей писать, аутпуты абстрактные делать и соснул хуйца нехерски.

Alex Milushev
11.05.2017
14:17:57
Я тоже сначал забивал на модули, а сейчас тащусь
очень удобно, есть обобщенный код для инфраструктуры приложения, поднимать окружения с его помощью очень просто
и следить за консистентностью

Dmitrii
11.05.2017
14:21:03
Проблемы белых людей
Мне бы инфру на ТФ перетащить ))

Google

Dmitrii
11.05.2017
16:43:10
@zunkree нашел решение?

Alex Milushev
11.05.2017
16:43:19
забил

Dmitrii
11.05.2017
16:43:24
?

Alex Milushev
11.05.2017
16:43:28

Admin
ERROR: S client not available

Alex Milushev
11.05.2017
16:43:35
есть импорты
есть даже приблуда на рубях которая и state сгенерит и tf код

Dmitrii
11.05.2017
16:44:25
Ага, я в итоге tf код генерю terraforming'ом (руби) а импортирую оригинальным тераформом
Так оно почему то работает корректнее. :)

Alex Milushev
11.05.2017
17:10:31
ну Я руками tf код писал а для импорта использовал терраформ
у меня боль другая, как импортивать 5-к одинаковых инстансов в один ресурс с count
или импортировать как обычно но потом смержить в один ресурс

Dmitrii
11.05.2017
17:11:26
Вот. Вот этим блять я и занимаюсь ))
У меня тут только много одинаковых инстансов но ансибл их раскидал абы как по зонам
Теперь я как дебил сижу и программирую на TF конфигах, чтобы описать "функцию" раскладки инстансов по зонам в зависимости от положения звезд на небе.
Как я тебя понимаю ?

Let Eat
11.05.2017
18:24:32

Alex Milushev
11.05.2017
18:25:18

Let Eat
11.05.2017
18:25:47
но даже если оно заработает, как вы потом этот аутпут использовать будете? лучше список списком и возвращать

Dmitrii
11.05.2017
18:27:50

Google

Let Eat
11.05.2017
18:29:39
это еще лайтово :) у нас много многоэтажных zipmap(split(replace(join()), ....) и все это в null_resource в который потом такие же этажерки ходят

Dmitrii
11.05.2017
18:30:14
Но зачем?

Let Eat
11.05.2017
18:30:22
тераформ лучше обходить стороной по возможности

Dmitrii
11.05.2017
18:30:39
Не пробовали понять потребность и заимплементить на Go функцию в core?

Let Eat
11.05.2017
18:30:40
потому что глупые и не генерируем его.а язык куцый

Dmitrii
11.05.2017
18:31:06
Не генерируешь что

Let Eat
11.05.2017
18:31:44
патчить тераформ - почти не вариант для нас :( хайп же, как это патчить серебряную пулю ?? )

Dmitrii
11.05.2017
18:32:42
Ну вот я с ним ковыряюсь вторую неделю и вот уже родил дата сорс. Не вижу причин извращаться и изобретать костыли.
Так или иначе заадчи у всех одинаковые. А своим бездействием ты порождаешь костыли у других :)

Let Eat
11.05.2017
18:33:51
resource aws_subnet subnet {
....
tags = "${merge(
map(
"Name", "sn-${lookup(var.vpc-net[count.index],"name")}-${var.vpc-design["name"]}-${lookup(var.vpc-net[count.index],"azs")}",
"Environment", "${var.hcom-env}",
"LaunchedBy", "${var.provisioner}",
"Team", "${var.tag_team}"
),
zipmap(
compact(split(",", replace(lookup(var.vpc-net[count.index],"extra-tags",""), "/,[^;,]*?;/", ","))),
compact(split(";", replace(lookup(var.vpc-net[count.index],"extra-tags",""), "/[^;,]*?,/", "")))
)
)}"
}
я прям смотрю и застрелиться хочется :)

ptchol
11.05.2017
18:34:45
И после этого они говорят что паппет и шеф гавно

Dmitrii
11.05.2017
18:36:28
Но паппет реально та еще параша

ptchol
11.05.2017
18:36:43
Нет :)

Dmitrii
11.05.2017
18:36:44
А здесь в примере выше... ну как говорится "С дуру можно и хуй сломать".

Let Eat
11.05.2017
18:37:44
я б рад по-другому, готов услышать предложения :)