使用 ECS 和 Fargate 时卷位于何处?
Where are the volumes located when using ECS and Fargate?
我有以下设置(我删除了不重要的字段):
{
"ECSTask": {
"Type": "AWS::ECS::TaskDefinition",
"Properties": {
"ContainerDefinitions": [
{
"Name": "mysql",
"Image": "mysql",
"MountPoints": [{"SourceVolume": "mysql", "ContainerPath": "/var/lib/mysql"}]
}
],
"RequiresCompatibilities": ["FARGATE"],
"Volumes": [{"Name": "mysql"}]
}
}
}
它似乎可以工作(容器确实可以正常启动),但我不太确定这个卷到底保存在哪里。我以为它是一个 EBS 卷,但我没有在那里看到它。我想这是我任务的内部 - 但在那种情况下 - 我如何访问它?我如何控制它的限制(min/max 大小等)?如何为这个卷创建备份?
谢谢。
Fargate 不支持持久卷。遗憾的是,附加到 Fargate 任务的任何创建的卷都是短暂的,无法从外部源初始化或备份。
https://docs.aws.amazon.com/AmazonECS/latest/developerguide/using_data_volumes.html
我有以下设置(我删除了不重要的字段):
{
"ECSTask": {
"Type": "AWS::ECS::TaskDefinition",
"Properties": {
"ContainerDefinitions": [
{
"Name": "mysql",
"Image": "mysql",
"MountPoints": [{"SourceVolume": "mysql", "ContainerPath": "/var/lib/mysql"}]
}
],
"RequiresCompatibilities": ["FARGATE"],
"Volumes": [{"Name": "mysql"}]
}
}
}
它似乎可以工作(容器确实可以正常启动),但我不太确定这个卷到底保存在哪里。我以为它是一个 EBS 卷,但我没有在那里看到它。我想这是我任务的内部 - 但在那种情况下 - 我如何访问它?我如何控制它的限制(min/max 大小等)?如何为这个卷创建备份?
谢谢。
Fargate 不支持持久卷。遗憾的是,附加到 Fargate 任务的任何创建的卷都是短暂的,无法从外部源初始化或备份。
https://docs.aws.amazon.com/AmazonECS/latest/developerguide/using_data_volumes.html