步骤 1:创建 Amazon EC2 资源 - Amazon Elastic File System
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

如果我们为英文版本指南提供翻译,那么如果存在任何冲突,将以英文版本指南为准。在提供翻译时使用机器翻译。

步骤 1:创建 Amazon EC2 资源

在此步骤中,您将执行以下操作:

  • 创建两个安全组。

  • 在安全组中添加规则以授权额外访问。

  • 启动一个 EC2 实例。在下一步中,您将创建一个 Amazon EFS 文件系统并挂载到该实例上。

步骤 1.1:创建两个安全组

在本节中,您将在 VPC 中为 EC2 实例和 Amazon EFS 挂载目标创建安全组。在演练的稍后部分,您要将这些安全组分配给 EC2 实例和 Amazon EFS 挂载目标。有关安全组的信息,请参阅 Amazon EC2 用户指南(适用于 Linux 实例) 中的 EC2-VPC 的安全组

创建安全组

  1. 使用 create-security-group CLI 命令创建两个安全组:

    1. 为您的 EC2 实例创建一个安全组 (efs-walkthrough1-ec2-sg) 并提供您的 VPC ID。

      $ aws ec2 create-security-group \ --region us-west-2 \ --group-name efs-walkthrough1-ec2-sg \ --description "Amazon EFS walkthrough 1, SG for EC2 instance" \ --vpc-id vpc-id-in-us-west-2 \ --profile adminuser

      记下安全组 ID。以下是一项示范响应。

      { "GroupId": "sg-aexample" }

      您可以使用以下命令查找 VPC ID:

      $ aws ec2 describe-vpcs
    2. 为 Amazon EFS 挂载目标创建安全组 (efs-walkthrough1-mt-sg)。您需要提供 VPC ID。

      $ aws ec2 create-security-group \ --region us-west-2 \ --group-name efs-walkthrough1-mt-sg \ --description "Amazon EFS walkthrough 1, SG for mount target" \ --vpc-id vpc-id-in-us-west-2 \ --profile adminuser

      记下安全组 ID。以下是一项示范响应。

      { "GroupId": "sg-aexample" }
  2. 验证安全组。

    aws ec2 describe-security-groups \ --group-ids list of security group IDs separated by space \ --profile adminuser \ --region us-west-2

    两个安全组都应当只有一条允许所有出站流量的出站规则。

    在下一节中,您将授权额外访问,以便:

    • 您能够连接到 EC2 实例。

    • 启用 EC2 实例与 Amazon EFS 挂载目标之间的流量(在本演练的稍后部分,您会将这些安全组与它们关联)。

步骤 1.2:在安全组中添加规则以授权入站/出站访问

在该步骤中,您将在安全组中添加规则以授权入站/出站访问。

添加规则

  1. 授权与 EC2 实例安全组 (efs-walkthrough1-ec2-sg) 的传入安全 Shell (SSH) 连接,以便可以从任何主机使用 SSH 连接到 EC2 实例。

    $ aws ec2 authorize-security-group-ingress \ --group-id id of the security group created for EC2 instance \ --protocol tcp \ --port 22 \ --cidr 0.0.0.0/0 \ --profile adminuser \ --region us-west-2

    验证安全组具有您添加的入站和出站规则。

    aws ec2 describe-security-groups \ --region us-west-2 \ --profile adminuser \ --group-id security-group-id
  2. 授权到 Amazon EFS 挂载目标安全组 (efs-walkthrough1-mt-sg) 的入站访问。

    在命令提示符处,使用 adminuser 配置文件运行下面的 AWS CLIauthorize-security-group-ingress 命令来添加入站规则。

    $ aws ec2 authorize-security-group-ingress \ --group-id ID of the security group created for Amazon EFS mount target \ --protocol tcp \ --port 2049 \ --source-group ID of the security group created for EC2 instance \ --profile adminuser \ --region us-west-2
  3. 确认两个安全组现在都授权了入站访问。

    aws ec2 describe-security-groups \ --group-names efs-walkthrough1-ec2-sg efs-walkthrough1-mt-sg \ --profile adminuser \ --region us-west-2

步骤 1.3:启动 EC2 实例

在该步骤中,您将启动 EC2 实例。

启动 EC2 实例

  1. 收集在启动 EC2 实例时需要提供的以下信息:

    • 密钥对名称:

      • 有关介绍性信息,请参阅 Amazon EC2 用户指南(适用于 Linux 实例) 中的使用 Amazon EC2 进行设置

      • 有关创建 .pem 文件的说明,请参阅 Amazon EC2 用户指南(适用于 Linux 实例) 中的创建密钥对

    • 要启动的 Amazon 系统映像 (AMI) 的 ID。

      您用来启动 EC2 实例的 AWS CLI 命令需要您想要作为参数部署的 AMI 的 ID。本练习使用 Amazon Linux HVM AMI。

      注意

      您可以使用大部分通用的基于 Linux 的 AMI。如果您使用其他 Linux AMI,请确保使用分发包管理器在实例上安装 NFS 客户端。此外,您可能还需要添加一些软件包。

      对于 Amazon Linux HVM AMI,您可以在 Amazon Linux AMI 找到最新的 ID。您从 Amazon Linux AMI ID 表中选择 ID 值,如下所示:

      • 选择美国西部(俄勒冈)区域。本演练假定您将在美国西部(俄勒冈)区域 (us-west-2) 创建所有资源。

      • 选择 EBS 支持的 HVM 64 位类型(因为您在 CLI 命令中指定 t2.micro 实例类型,它不支持实例存储)。

    • 您为 EC2 实例创建的安全组的 ID。

    • AWS 区域.本演练使用 us-west-2 区域。

    • 您要在其中启动实例的 VPC 子网的 ID。可以使用 describe-subnets 命令获取子网列表。

      $ aws ec2 describe-subnets \ --region us-west-2 \ --filters "Name=vpc-id,Values=vpc-id" \ --profile adminuser

      选择子网 ID 后,记下 describe-subnets 结果中的以下值:

      • 子网 ID – 创建挂载目标时需要该值。在本练习中,您将在启动了 EC2 实例的同一子网中创建挂载目标。

      • 子网的可用区 – 构建挂载目标 DNS 名称时需要该值,用于将文件系统挂载到 EC2 实例上。

  2. 运行以下 AWS CLIrun-instances 命令来启动 EC2 实例。

    $ aws ec2 run-instances \ --image-id AMI ID \ --count 1 \ --instance-type t2.micro \ --associate-public-ip-address \ --key-name key-pair-name \ --security-group-ids ID of the security group created for EC2 instance \ --subnet-id VPC subnet ID \ --region us-west-2 \ --profile adminuser
  3. 记下 run-instances 命令返回的实例 ID。

  4. 您创建的 EC2 实例必须有公有 DNS 名称,以便用来连接 EC2 实例并向其中挂载文件系统。公有 DNS 名称的形式为:

    ec2-xx-xx-xx-xxx.compute-1.amazonaws.com

    运行以下 CLI 命令,并记下公有 DNS 名称。

    aws ec2 describe-instances \ --instance-ids EC2 instance ID \ --region us-west-2 \ --profile adminuser

    如果未找到公有 DNS 名称,则检查您在其中启动了 EC2 实例的 VPC 的配置。有关更多信息,请参阅 开始前的准备工作

  5. (可选)将一个名称分配给您创建的 EC2 实例。为此,请添加一个标签,其中键名和值设置为要分配给实例的名称。您可以使用以下 AWS CLI create-tags 命令进行这项操作。

    $  aws ec2 create-tags \ --resources EC2-instance-ID \ --tags Key=Name,Value=Provide-instance-name  \ --region us-west-2 \ --profile adminuser

下一步

步骤 2:创建 Amazon EFS 资源