Size: a a a

2019 July 22

A

Artem in terraform_ru
Всем привет
Столкнулся с проблемой, есть скрипт который поднимает на авс виртулки, с определенным именем, в зоне и тд
Например я поднял сегодня 10 инстансов, завтра вася поднял еще 20, проблема в том, что когда я запускаю скрипт второй раз, то предыдующие инстансы убиваются
источник

A

Artem in terraform_ru
как можно решить этот вопрос?
источник

SG

Silver 👻 Ghost in terraform_ru
Поправить скрипт?
источник

VT

Victor Tur in terraform_ru
Поправить подход :)
источник

ХВ

Холм Вечный in terraform_ru
сделать lifecycle -> prevent destroy
источник

ХВ

Холм Вечный in terraform_ru
тогда как минимум не будут убиваться.
источник

РР

Роман Рахманин in terraform_ru
Вангую, тут опять история со стейтами
источник

OB

Oleksii Borodai in terraform_ru
Роман Рахманин
Вангую, тут опять история со стейтами
Даже к бабке не ходи.
источник

VT

Victor Tur in terraform_ru
попахивает богомерзким configuration drift.
источник

A

Artem in terraform_ru
Oleksii Borodai
Даже к бабке не ходи.
мм?)
источник

A

Artem in terraform_ru
вот скрипт
источник

РР

Роман Рахманин in terraform_ru
Терраформ - не скриптовый
источник

VT

Victor Tur in terraform_ru
user_data меняется?
источник

A

Artem in terraform_ru
нет
источник

VT

Victor Tur in terraform_ru
1) где стейт?
2) из плана - что вызывает replace инстанса - какой аттрибут?
источник

S

Stefan in terraform_ru
подскажите, пожалуйста, для понимания теорраформа
есть у меня модуль:
resource "aws_route53_record" "r53_domains" {
 zone_id = "${var.hosted_zone}"
 count   = "${length(var.domains)}"
 name    = "${element(var.domains, count.index)}"
 type    = "A"

 alias {
    name    = "${var.elb}"
    zone_id = "${var.shared_zone}"
    evaluate_target_health = false
 }
}

resource "aws_route53_record" "r53_manual_domains" {
 zone_id = "${var.hosted_zone}"
 count   = "${length(var.manual_domain)}"
 name    = "${element(var.manual_domain, count.index)}"
 type    = "A"
 ttl     = "300"
 records = ["$var.manual_ip"]
}
и есть окружение, например manual_servers с файлом main.tf:
module "r53_updater_grafana" {
 source = "../modules/r53"
 manual_domain = "grafana.test.com"
 #test.com          
 hosted_zone = "Z311YBHDNDOWAS"
 manual_ip = "1.1.1.1"
}

module "r53_updater_nexus" {
 source = "../modules/r53"
 manual_domain = "nexus.test.com"
 #test.com          
 hosted_zone = "Z311YBHDNDOWAS"
 manual_ip = "1.1.2.2"
}
я могу как-то заставить тф скипать переменные, которые не объявлены для manual_servers? например elb, domains etc... так как это две разных совершенно записи в r53( не хотел бы отдельно под такую нужду заводить модуль
получаю такие ошибки при terraform plan:
Error: module "r53_updater_nexus": missing required argument "domains"

Error: module "r53_updater_nexus": missing required argument "elb"
источник

DZ

Dmytro Zavalkin in terraform_ru
наверное можно накостылить с default и условием в count
источник

РР

Роман Рахманин in terraform_ru
в 0.12 можно параметры использовать с null для ресурсов, мб это поможет
источник

РР

Роман Рахманин in terraform_ru
Либо костылять с каунтами
источник

S

Stefan in terraform_ru
кошмар... спасибо
источник