Size: a a a

2019 December 10

AU

Anton Ustiuzhanin in terraform_ru
George Kirillov
а не сочтите за наглость но может это часть какой то статейки полезной ? уж больно коментарии подробны ) не поделитесь ссылкой на полный пример ?
Это кусок манифеста, но весь дать не могу.
источник

GK

George Kirillov in terraform_ru
понял, всё равно большое спасибо!
источник

A

Andor in terraform_ru
Anton Ustiuzhanin
Это кусок манифеста, но весь дать не могу.
"манифеста" чувствуется опыт с puppet ;)
источник

GK

George Kirillov in terraform_ru
да вроде и в кубере используется термин этот
источник

GK

George Kirillov in terraform_ru
и вопрос про flavor, часто получаю ошибку что flavor с таким именем уже есть . немного не понимаю . если не сложно поясните . его можно не создавать а сразу указать при создании сервера ? как я понял это просто шаблон cpu ram hdd
источник

AU

Anton Ustiuzhanin in terraform_ru
George Kirillov
и вопрос про flavor, часто получаю ошибку что flavor с таким именем уже есть . немного не понимаю . если не сложно поясните . его можно не создавать а сразу указать при создании сервера ? как я понял это просто шаблон cpu ram hdd
Да, это просто шаблон. создавай так.  
resource "random_string" "random_name" {
 length  = 6
 special = false
}
module "flavor" {
 source        = "./modules/vps/flavor"
 flavor_name   = "flavor-${var.server_vcpus}-${var.server_ram_mb}-${random_string.random_name.result}"
 flavor_vcpus  = "${var.server_vcpus}"
 flavor_ram_mb = "${var.server_ram_mb}"
}
модуль тут https://github.com/selectel/terraform-examples/tree/master/modules/vpc/flavor
источник

GK

George Kirillov in terraform_ru
Anton Ustiuzhanin
Да, это просто шаблон. создавай так.  
resource "random_string" "random_name" {
 length  = 6
 special = false
}
module "flavor" {
 source        = "./modules/vps/flavor"
 flavor_name   = "flavor-${var.server_vcpus}-${var.server_ram_mb}-${random_string.random_name.result}"
 flavor_vcpus  = "${var.server_vcpus}"
 flavor_ram_mb = "${var.server_ram_mb}"
}
модуль тут https://github.com/selectel/terraform-examples/tree/master/modules/vpc/flavor
пасибо большое, уже натыкался на данный repo  но с ходу подумал тчо правильнее не использовать модули пока нет полного понимания как все устроено.
источник

AU

Anton Ustiuzhanin in terraform_ru
George Kirillov
пасибо большое, уже натыкался на данный repo  но с ходу подумал тчо правильнее не использовать модули пока нет полного понимания как все устроено.
а там в main загляни - все вообщем то понятно станет
источник

GK

George Kirillov in terraform_ru
спасибо
источник

k

kvaps in terraform_ru
Andor
Стейт-файл важен, поэтому лучше его хранить в удалённом и надёжном месте
Например, в облачном блоб-сторейдже, который в среднем надёжнее и долговечнее, чем твой гит ;)
> Например, в облачном блоб-сторейдже, который в среднем надёжнее и долговечнее, чем твой гит ;)

Спорное утверждение, git-репо хранится как минимум в двух местах, включая локальный комп разработчика так и удалённый сервер
источник

k

kvaps in terraform_ru
в детстве меня мама учила всегда хранить критические данные как минимум в двух местах
источник

VT

Victor Tur in terraform_ru
kvaps
в детстве меня мама учила всегда хранить критические данные как минимум в двух местах
первое предупреждение
источник

AU

Anton Ustiuzhanin in terraform_ru
kvaps
> Например, в облачном блоб-сторейдже, который в среднем надёжнее и долговечнее, чем твой гит ;)

Спорное утверждение, git-репо хранится как минимум в двух местах, включая локальный комп разработчика так и удалённый сервер
Ну вот смотри в с3 бакете храним стейт. Во время apply он блокируется.  Другой инженер внес свои изменения и тоже апплаит, ноту него ничего не получится стейт в локе. Потом манифесты комитятся в репу. Все классно второй сливает их себе и апплаит, стейт в локе он работает с ним монопольно. Ну или cicd это делает.  В случае с гитом и стейтом в репозитории у вас появляется два разных стейта, конфликты, и тп. я даже не знаю как дальше с этим жить. Не сталкивался.
источник

DK

Dmitry Kireev in terraform_ru
Доброго времени суток. Ищу возможность сослаться на имя ресурса для использования в тегах
resource "aws_subnet" "public_subnet_two" {
   vpc_id     = aws_vpc.this.id
   cidr_block = "10.0.1.0/24"
   availability_zone = "us-east-1b"

   tags {
     Name = "${prefix}-${env}-${this.resource_type}-${this.resource_name}"
   }
}
источник

AK

Andrey Kartashov in terraform_ru
Нет, нельзя так
источник

DK

Dmitry Kireev in terraform_ru
Andrey Kartashov
Нет, нельзя так
пойду плакать
источник

DK

Dmitry Kireev in terraform_ru
спасибо 🙂
источник

AK

Andrey Kartashov in terraform_ru
:)
источник

DK

Dmitry Kireev in terraform_ru
там какие-то local vars были, но это не уменьшает boilerplate
источник

DK

D K in terraform_ru
А имя ресурса через переменную задать можно?
источник