Ошибка при использовании EFS в ECS, возвращается неизвестный тип файловой системы 'efs'

Я использую образ докера для jenkins (jenkins / jenkins: 2.277.1-lts-alpine) в AWS ECS, и я хочу сохранить данные с помощью AWS EFS. Я создал EFS и получил идентификатор (fs-7dcef848)

Мой код terraform выглядит так:

resource "aws_ecs_service" "jenkinsService" {
    cluster = var.ECS_cluster
    name = var.jenkins_name
    task_definition = aws_ecs_task_definition.jenkinsService.arn
    deployment_maximum_percent = "200"
    deployment_minimum_healthy_percent = 50
    desired_count = var.service_desired_count
    tags = {
      "ManagedBy" : "Terraform"
    }
}

resource "aws_ecs_task_definition" "jenkinsService" {
  family = "${var.jenkins_name}-task"
  container_definitions = file("task-definitions/service.json")
  volume {
    name  = var.EFS_name
    efs_volume_configuration {
      file_system_id = "fs-7dcef848"
    }
  }
  tags = {
      "ManagedBy" : "Terraform"
  }
}

и service.json

[
  {
    "name": "DevOps-jenkins",
    "image": "jenkins/jenkins:2.284-alpine",
    "cpu": 0,
    "memoryReservation": 1024,
    "essential": true,
    "portMappings": [
      {
        "containerPort" : 8080,
        "hostPort" : 80
      }
    ],
    "mountPoints": [
      {
          "sourceVolume" : "DevOps-Jenkins",
          "containerPath" : "/var/jenkins_home"
      }
      ]
  }
]

Terraform apply работает нормально, но задача не может начать возвращаться:

Причина остановки. Ответ от демона об ошибке: create ecs-DevOps-jenkins-task-33-DevOps-Jekins-bcb381cd9dd0f7ae2700: VolumeDriver.Create: сбой при монтировании тома: mount: неизвестный тип файловой системы 'efs'

  • Кто-нибудь знает, что происходит?
  • Есть еще способ сохранить данные?

Заранее спасибо.


person Tony Espinosa    schedule 18.03.2021    source источник
comment
Вы используете EC2 или Fargate для AWS ECS? Вам может потребоваться загрузка и настройка файловой системы типа efs, особенно если вы используете тип EC2.   -  person Oguzhan Aygun    schedule 18.03.2021
comment
Я использую EC2   -  person Tony Espinosa    schedule 18.03.2021
comment
Хорошо, вам нужно настроить пакет amazon-efs-utils для вашего сервера. Если у вас работает 1 сервер, вы можете попробовать вручную, подключив сервер через ssh, но если у вас много серверов, вам может потребоваться обновить часть USER DATA в вашем шаблоне / конфигурации запуска.   -  person Oguzhan Aygun    schedule 18.03.2021


Ответы (1)


Решено: первая попытка заключалась в установке пакета amazon-efs-utils с помощью удаленного exec. Но, следуя указаниям @Oguzhan Aygun, я сделал это в разделе USER DATA, и это сработало! Спасибо!

person Tony Espinosa    schedule 18.03.2021