Я развернул стек ELK на AWS ECS с терраформом. Все работало нормально в течение нескольких недель, но через 2 дня go мне пришлось перезапустить экземпляр.
К сожалению, новый экземпляр не полагался на существующий том для монтирования блочного устройства root. Таким образом, все мои данные elasticsearch больше не доступны для моего экземпляра Kibana.
Данные все еще здесь, на предыдущем томе, в настоящее время не используются.
Поэтому я пробовал много вещей, чтобы прикрепить этот том к «dev / xvda», но без, например:
- Используйте ebs_block_device вместо root_block_device, используя
- Поменяйте местами «dev / xvda», когда экземпляр уже запущен
Я использую aws_autoscaling_group с aws_launch_configuration.
resource "aws_launch_configuration" "XXX" {
name = "XXX"
image_id = data.aws_ami.latest_ecs.id
instance_type = var.INSTANCE_TYPE
security_groups = [var.SECURITY_GROUP_ID]
associate_public_ip_address = true
iam_instance_profile = "XXXXXX"
spot_price = "0.04"
lifecycle {
create_before_destroy = true
}
user_data = templatefile("${path.module}/ecs_agent_conf_options.tmpl",
{
cluster_name = aws_ecs_cluster.XXX.name
}
)
//The volume i want to reuse was created with this configuration. I though it would
//be enough to reuse the same volume. It doesn't.
root_block_device {
delete_on_termination = false
volume_size = 50
volume_type = "gp2"
}
}
resource "aws_autoscaling_group" "YYY" {
name = "YYY"
min_size = var.MIN_INSTANCES
max_size = var.MAX_INSTANCES
desired_capacity = var.DESIRED_CAPACITY
health_check_type = "EC2"
availability_zones = ["eu-west-3b"]
launch_configuration = aws_launch_configuration.XXX.name
vpc_zone_identifier = [
var.SUBNET_1_ID,
var.SUBNET_2_ID]
}
Я пропускаю что-то очевидное по этому поводу?