CreateMountTarget - Amazon Elastic File System

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

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_ONLYDUAL_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 地址的雙堆疊)。如果您未指定 IpAddressTypeIPV4_ONLY則會使用 。

注意

IPAddressType 必須符合子網路的 IP 類型。此外, IPAddressType 參數會覆寫設定為 VPC 中子網路預設 IP 地址的值。例如,如果 IPAddressTypeIPV4_ONLYAssignIpv6AddressOnCreationtrue,則掛載目標會使用 IPv4。如需詳細資訊,請參閱修改子網路的公有 IP 定址屬性

類型:字串

有效值:IPV4_ONLY | IPV6_ONLY | DUAL_STACK

必要:否

Ipv6Address

如果掛載目標IPAddressType的 是 IPv6 (IPV6_ONLYDUAL_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 地址 (IpAddressIpv6Address),則傳回。

HTTP 狀態碼:409

MountTargetConflict

如果掛載目標違反以檔案系統現有的掛載目標為基礎的其中一個指定限制,則傳回。

HTTP 狀態碼:409

NetworkInterfaceLimitExceeded

呼叫帳戶已達到指定 AWS 區域區域彈性網絡介面的限制。刪除某些網路介面,或請求提高帳戶配額。如需詳細資訊,請參閱《Amazon VPC 使用者指南》中的 Amazon VPC 配額 (請參閱網路介面資料表中的每個區域的網路介面項目)。

HTTP 狀態碼:409

NoFreeAddressesInSubnet

在請求中未傳回 IpAddressIpv6Address ,且指定的子網路中沒有可用的 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 的詳細資訊,請參閱下列內容: