本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
CreateMountTarget
建立文件系統的掛載目標。您接著可以使用掛載目標,在 EC2 執行個體上掛載檔案系統。如需掛載目標的詳細資訊,請參閱管理掛載目標。
若要建立 EFS 檔案系統的掛載目標,檔案系統的生命週期狀態必須為 available
。如需詳細資訊,請參閱DescribeFileSystems。
建立掛載目標後,Amazon EFS 會傳回包含 MountTargetId
和 IP 地址 (IpAddress
或 ) 的回應Ipv6Address
。您會在 EC2 執行個體中掛載檔案系統時使用此 IP 地址。您也會在掛載檔案系統時使用掛載目標的 DNS 名稱。您使用掛載目標於其上掛載檔案系統的 EC2 執行個體,可將掛載目標的 DNS 名稱解析為其 IP 地址。如需詳細資訊,請參閱 Amazon EFS 的運作方式。
請注意,您只能在一個 VPC 內為檔案系統建立掛載目標,並且每個可用區域中只能有一個掛載目標。如需詳細資訊,請參閱建立掛載目標。
若請求滿足需求,Amazon EFS 會執行下列作業:
-
在指定子網路中建立新的掛載目標。
-
使用以下內容在子網路中建立新的網路介面:
-
Mount target fsmt-id for file system fs-id
其中fsmt-id
是掛載目標 ID 的描述,而fs-id
是FileSystemId
。 -
網路界面的
requesterManaged
屬性設定為true
,而requesterId
值設定為EFS
。
每個掛載目標都有一個對應的申請者受管 EC2 網路界面。建立網路介面後,Amazon EFS 會將掛載目標描述中的
NetworkInterfaceId
欄位設定為網路介面 ID,並將 IP 地址設定為其地址。若網路介面建立失敗,整個CreateMountTarget
操作都會失敗。 -
注意
CreateMountTarget
呼叫只會在建立網路介面後傳回,但當掛載目標狀態仍為 creating
時,您可以透過呼叫操作檢查掛載目標的建立狀態,DescribeMountTargets 操作和其他項目會一起傳回掛載目標的狀態。
此操作需要在檔案系統上具備以下動作的許可:
-
elasticfilesystem:CreateMountTarget
此操作也需要以下 Amazon EC2 動作的許可:
-
ec2:DescribeSubnets
-
ec2:DescribeNetworkInterfaces
-
ec2:CreateNetworkInterface
請求語法
POST /2015-02-01/mount-targets HTTP/1.1
Content-type: application/json
{
"FileSystemId": "string
",
"IpAddress": "string
",
"IpAddressType": "string
",
"Ipv6Address": "string
",
"SecurityGroups": [ "string
" ],
"SubnetId": "string
"
}
URI 請求參數
請求不會使用任何 URI 參數。
請求主體
請求接受採用 JSON 格式的下列資料。
- FileSystemId
-
要建立掛載目標的檔案系統 ID。
類型:字串
長度限制:長度上限為 128。
模式:
^(arn:aws[-a-z]*:elasticfilesystem:[0-9a-z-:]+:file-system/fs-[0-9a-f]{8,40}|fs-[0-9a-f]{8,40})$
必要:是
- IpAddress
-
如果掛載目標
IpAddressType
的 是 IPv4 (IPV4_ONLY
或DUAL_STACK
),則指定要使用的 IPv4 地址。如果您未指定IpAddress
,Amazon EFS 會從為 指定的子網路中選取未使用的 IP 地址SubnetId
。類型:字串
長度限制:長度下限為 7。長度上限為 15。
模式:
^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$
必要:否
- IpAddressType
-
掛載目標的 IP 地址類型。可能的值為
IPV4_ONLY
(僅限 IPv4 地址)、IPV6_ONLY
(僅限 IPv6 地址) 和DUAL_STACK
(IPv4 和 IPv6 地址的雙堆疊)。如果您未指定IpAddressType
,IPV4_ONLY
則會使用 。注意
IPAddressType
必須符合子網路的 IP 類型。此外,IPAddressType
參數會覆寫設定為 VPC 中子網路預設 IP 地址的值。例如,如果IPAddressType
是IPV4_ONLY
且AssignIpv6AddressOnCreation
是true
,則掛載目標會使用 IPv4。如需詳細資訊,請參閱修改子網路的公有 IP 定址屬性。類型:字串
有效值:
IPV4_ONLY | IPV6_ONLY | DUAL_STACK
必要:否
- Ipv6Address
-
如果掛載目標
IPAddressType
的 是 IPv6 (IPV6_ONLY
或DUAL_STACK
),則指定要使用的 IPv6 地址。如果您未指定Ipv6Address
,則 Amazon EFS 會從為 指定的子網路中選取未使用的 IP 地址SubnetId
。類型:字串
長度限制:長度下限為 3。長度上限為 39。
必要:否
- SecurityGroups
-
VPC 安全群組 IDs,格式為
sg-xxxxxxxx
。這些必須適用於與指定的子網路相同的 VPC。安全群組的數量上限取決於帳戶配額。如需詳細資訊,請參閱《Amazon VPC 使用者指南》中的 Amazon VPC Quotas (請參閱安全群組資料表)。 如果您未指定安全群組,則 Amazon EFS 會使用子網路 VPC 的預設安全群組。類型:字串陣列
陣列成員:最多 100 個項目。
長度限制:長度下限為 11。長度上限為 43。
模式:
^sg-[0-9a-f]{8,40}
必要:否
- SubnetId
-
要在其中新增掛載目標的子網路 ID。對於單區域檔案系統,請使用與檔案系統的可用區域相關聯的子網路。子網路類型必須與 的類型相同
IpAddressType
。類型:字串
長度限制:長度下限為 15。長度上限為 47。
模式:
^subnet-[0-9a-f]{8,40}$
必要:是
回應語法
HTTP/1.1 200
Content-type: application/json
{
"AvailabilityZoneId": "string",
"AvailabilityZoneName": "string",
"FileSystemId": "string",
"IpAddress": "string",
"Ipv6Address": "string",
"LifeCycleState": "string",
"MountTargetId": "string",
"NetworkInterfaceId": "string",
"OwnerId": "string",
"SubnetId": "string",
"VpcId": "string"
}
回應元素
如果動作成功,則服務傳回 HTTP 200 回應。
服務會傳回下列 JSON 格式的資料。
- AvailabilityZoneId
-
掛載目標所在可用區域的唯一且一致的識別碼。例如,
use1-az1
是 us-east-1 區域的 AZ ID,每個區域都有相同的位置 AWS 帳戶。類型:字串
- AvailabilityZoneName
-
掛載目標所在可用區域名稱。可用區域會獨立對應至每個可用區域的名稱 AWS 帳戶。例如,
us-east-1a
的可用區域 AWS 帳戶 可能與其他 的可用區域不同us-east-1a
AWS 帳戶。類型:字串
長度限制:長度下限為 1。長度上限為 64。
模式:
.+
- FileSystemId
-
指定掛載目標所屬的檔案系統 ID。
類型:字串
長度限制:長度上限為 128。
模式:
^(arn:aws[-a-z]*:elasticfilesystem:[0-9a-z-:]+:file-system/fs-[0-9a-f]{8,40}|fs-[0-9a-f]{8,40})$
- IpAddress
-
掛載目標的 IPv4 地址。
類型:字串
長度限制:長度下限為 7。長度上限為 15。
模式:
^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$
- Ipv6Address
-
掛載目標的 IPv6 地址。
類型:字串
長度限制:長度下限為 3。長度上限為 39。
- LifeCycleState
-
掛載目標的生命週期狀態。
類型:字串
有效值:
creating | available | updating | deleting | deleted | error
- MountTargetId
-
系統指定的掛載目標 ID。
類型:字串
長度限制:長度下限為 13。長度上限為 45。
模式:
^fsmt-[0-9a-f]{8,40}$
- NetworkInterfaceId
-
Amazon EFS 建立掛載目標時建立的網路介面 ID。
類型:字串
- OwnerId
-
AWS 帳戶 擁有資源的 ID。
類型:字串
長度限制:長度上限為 14。
模式:
^(\d{12})|(\d{4}-\d{4}-\d{4})$
- SubnetId
-
掛載目標子網路的 ID。
類型:字串
長度限制:長度下限為 15。長度上限為 47。
模式:
^subnet-[0-9a-f]{8,40}$
- VpcId
-
掛載目標所在的虛擬私有雲端 (VPC)。
類型:字串
錯誤
- AvailabilityZonesMismatch
-
如果為掛載目標指定的可用區域與檔案系統的可用區域不同,則傳回。如需詳細資訊,請參閱區域和單區域儲存冗餘。
HTTP 狀態碼:400
- BadRequest
-
如果請求格式錯誤或包含錯誤,例如無效的參數值或缺少必要參數,則傳回。
HTTP 狀態碼:400
- FileSystemNotFound
-
如果指定的
FileSystemId
值不存在於請求者的 中,則傳回 AWS 帳戶。HTTP 狀態碼:404
- IncorrectFileSystemLifeCycleState
-
如果檔案系統的生命週期狀態不是「可用」,則傳回。
HTTP 狀態碼:409
- InternalServerError
-
如果伺服器端發生錯誤,則傳回。
HTTP 狀態碼:500
- IpAddressInUse
-
如果請求指定已在子網路中使用的 IP 地址 (
IpAddress
或Ipv6Address
),則傳回。HTTP 狀態碼:409
- MountTargetConflict
-
如果掛載目標違反以檔案系統現有的掛載目標為基礎的其中一個指定限制,則傳回。
HTTP 狀態碼:409
- NetworkInterfaceLimitExceeded
-
呼叫帳戶已達到指定 AWS 區域區域彈性網絡介面的限制。刪除某些網路介面,或請求提高帳戶配額。如需詳細資訊,請參閱《Amazon VPC 使用者指南》中的 Amazon VPC 配額 (請參閱網路介面資料表中的每個區域的網路介面項目)。
HTTP 狀態碼:409
- NoFreeAddressesInSubnet
-
在請求中未傳回
IpAddress
或Ipv6Address
,且指定的子網路中沒有可用的 IP 地址。HTTP 狀態碼:409
- SecurityGroupLimitExceeded
-
如果請求中
SecurityGroups
指定的 數目大於限制,則根據帳戶配額傳回。刪除一些安全群組或請求提高帳戶配額。如需詳細資訊,請參閱《Amazon VPC 使用者指南》中的 Amazon VPC Quotas (請參閱安全群組資料表)。HTTP 狀態碼:400
- SecurityGroupNotFound
-
如果子網路的虛擬私有雲端 (VPC) 中沒有其中一個指定的安全群組,則傳回。
HTTP 狀態碼:400
- SubnetNotFound
-
如果在請求中沒有提供 ID
SubnetId
的子網路,則傳回。HTTP 狀態碼:400
- UnsupportedAvailabilityZone
-
如果請求的 Amazon EFS 功能在指定的可用區域中不可用,則傳回。
HTTP 狀態碼:400
範例
在子網路上的可用 IPv4 地址建立掛載目標
下列請求只會指定掛載目標的檔案系統和子網路。目標是在指定子網路上的可用 IPv4 地址建立,預設安全群組與 VPC 相關聯。
請求範例
POST /2015-02-01/mount-targets HTTP/1.1
Host: elasticfilesystem.us-west-2.amazonaws.com
x-amz-date: 20140620T221118Z
Authorization: <...>
Content-Type: application/json
Content-Length: 160
{"SubnetId": "subnet-748c5d03", "FileSystemId": "fs-01234567"}
回應範例
HTTP/1.1 200 OK
x-amzn-RequestId: 01234567-89ab-cdef-0123-456789abcdef
Content-Type: application/json
Content-Length: 252
{
"OwnerId": "231243201240",
"MountTargetId": "fsmt-55a4413c",
"FileSystemId": "fs-01234567",
"SubnetId": "subnet-01234567",
"LifeCycleState": "available",
"IpAddress": "172.31.22.183"
"NetworkInterfaceId":"eni-1bcb7772"
"AvailabilityZoneId": "eus1-az2",
"AvailabilityZoneName": "eu-south-1b",
"VpcId": "vpc-08d45b31fa009a15e"
}
在特定 IPv4 地址建立掛載目標
下列請求指定要用於掛載目標的檔案系統、子網路、安全群組和 IPv4 地址。
請求範例
POST /2015-02-01/mount-targets HTTP/1.1
Host: elasticfilesystem.us-west-2.amazonaws.com
x-amz-date: 20140620T221118Z
Authorization: <...>
Content-Type: application/json
Content-Length: 160
{
"FileSystemId":"fs-01234567",
"SubnetId":"subnet-01234567",
"IpAddress":"10.0.2.42",
"SecurityGroups":[
"sg-01234567"
]
}
回應範例
HTTP/1.1 200 OK
x-amzn-RequestId: 01234567-89ab-cdef-0123-456789abcdef
Content-Type: application/json
Content-Length: 252
{
"OwnerId":"251839141158",
"MountTargetId":"fsmt-9a13661e",
"FileSystemId":"fs-01234567",
"SubnetId":"subnet-fd04ff94",
"LifeCycleState":"available",
"IpAddress":"10.0.2.42",
"NetworkInterfaceId":"eni-1bcb7772"
"AvailabilityZoneId": "eus1-az2",
"AvailabilityZoneName": "eu-south-1b",
"VpcId": "vpc-08d45b31fa009a15e"
}
在特定 IPv6 地址建立掛載目標
下列請求指定要用於掛載目標的檔案系統、子網路、安全群組和 IPv6 地址。
請求範例
POST /2015-02-01/mount-targets HTTP/1.1
Host: elasticfilesystem.us-west-2.amazonaws.com
x-amz-date: 20140620T221118Z
Authorization: <...>
Content-Type: application/json
Content-Length: 160
{
"FileSystemId":"fs-01234567",
"SubnetId":"subnet-01234567",
"Ipv6Address":"2001:0db8:85a3:0000:0000:8a2e:0370:7334",
"IpAddressType": "IPV6_ONLY",
"SecurityGroups":[
"sg-01234567"
]
}
回應範例
HTTP/1.1 200 OK
x-amzn-RequestId: 01234567-89ab-cdef-0123-456789abcdef
Content-Type: application/json
Content-Length: 252
{
"OwnerId":"251839141158",
"MountTargetId":"fsmt-9a13661e",
"FileSystemId":"fs-01234567",
"SubnetId":"subnet-fd04ff94",
"LifeCycleState":"available",
"Ipv6Address":"2001:0db8:85a3:0000:0000:8a2e:0370:7334",
"NetworkInterfaceId":"eni-1bcb7772"
"AvailabilityZoneId": "eus1-az2",
"AvailabilityZoneName": "eu-south-1b",
"VpcId": "vpc-08d45b31fa009a15e"
}
在雙堆疊子網路上的可用 IPv4 地址建立掛載目標
下列請求指定掛載目標的檔案系統、子網路和地址類型。目標是在指定的雙堆疊子網路上的可用 IPv4 地址建立,其預設安全群組與 VPC 相關聯。
請求範例
POST /2015-02-01/mount-targets HTTP/1.1
Host: elasticfilesystem.us-west-2.amazonaws.com
x-amz-date: 20140620T221118Z
Authorization: <...>
Content-Type: application/json
Content-Length: 160
{"SubnetId": "subnet-748c5d03", "FileSystemId": "fs-01234567"}
回應範例
HTTP/1.1 200 OK
x-amzn-RequestId: 01234567-89ab-cdef-0123-456789abcdef
Content-Type: application/json
Content-Length: 252
{
"OwnerId": "251839141158",
"MountTargetId": "fsmt-55a4413c",
"FileSystemId": "fs-01234567",
"SubnetId":"subnet-fd04ff94",
"LifeCycleState": "available",
"IpAddress": "172.31.22.183"
"Ipv6Address": "2a05:d01a:419:8611:3e57:75ab:5719:b238",
"NetworkInterfaceId": "eni-01234567",
"AvailabilityZoneId": "eus1-az2",
"AvailabilityZoneName": "eu-south-1b",
"VpcId": "vpc-08d45b31fa009a15e"
}
在雙堆疊子網路上的特定 Ipv4 和 IPv6 地址建立掛載目標
下列請求指定掛載目標的檔案系統、子網路、安全群組、IPv4 地址、IPv6 地址。目標是在雙堆疊子網路上的指定 IPv4 和 IPv6 地址建立。
請求範例
POST /2015-02-01/mount-targets HTTP/1.1
Host: elasticfilesystem.us-west-2.amazonaws.com
x-amz-date: 20140620T221118Z
Authorization: <...>
Content-Type: application/json
Content-Length: 160
{
"FileSystemId":"fs-01234567",
"SubnetId":"subnet-01234567",
"IpAddressType": "DUAL_STACK",
"IpAddress": "10.0.1.25",
"Ipv6Address":"2001:0db8:85a3:0000:0000:8a2e:0370:7334",
"SecurityGroups":[
"sg-01234567"
]
}
回應範例
HTTP/1.1 200 OK
x-amzn-RequestId: 01234567-89ab-cdef-0123-456789abcdef
Content-Type: application/json
Content-Length: 252
{
"OwnerId": "231243201240",
"MountTargetId": "fsmt-55a4413c",
"FileSystemId": "fs-01234567",
"SubnetId": "subnet-01234567",
"LifeCycleState": "available",
"IpAddress": "10.0.1.25",
"Ipv6Address":"2001:0db8:85a3:0000:0000:8a2e:0370:7334",
"NetworkInterfaceId": "eni-01234567",
"AvailabilityZoneId": "eus1-az2",
"AvailabilityZoneName": "eu-south-1b",
"VpcId": "vpc-08d45b31fa009a15e"
}
另請參閱
如需在其中一種語言特定 AWS SDKs中使用此 API 的詳細資訊,請參閱下列內容: