构建 VPC 并启动 Web 服务器 创建 VPC。 创建子网。 配置安全组。 在 VPC 中启动 EC2 实例 创建VPC 进入AWS管理控制台中,创建VPC,包括单个可用区中的一个 VPC 、一个互联网网关 、一个公有子网 和一个私有子网 ,以及两个路由表 和一个 NAT 网关 。
选择 VPC and more (VPC 等)。在 Name tag auto-generation (名称标签自动生成)下,将 Auto-generate (自动生成)保持选中状态,但将值从 project 更改为 lab
。将 IPv4 CIDR block (IPv4 CIDR 块)设置保持为 10.0.0.0/16对于 Number of Availability Zones (可用区数量),请选择 1 。对于 Number of public subnets (公有子网的数量),请将设置保留为 1 。对于 Number of private subnets (私有子网的数量),请将设置保留为 1 。展开 Customize subnets CIDR blocks (自定义子网 CIDR 块)部分
将 Public subnet CIDR block in us-east-1a (us-east-1a 中的公有子网 CIDR 块)更改为 10.0.0.0/24
将 Private subnet CIDR block in us-east-1a (us-east-1a 中的私有子网 CIDR 块)更改为 10.0.1.0/24
将 NAT gateways (NAT 网关)设置为 In 1 AZ (在一个可用区中)。将 VPC endpoints (VPC 终端节点)设置为 None (无)。将 DNS hostnames (DNS 主机名)和 DNS resolution (DNS 解析)都保持为 enabled (已启用)状态。创建成功
创建额外子网 创建第二个公有子网 VPC ID :lab-vpc (从菜单中选择)。Subnet name (子网名称):lab-subnet-public2
Availability Zone (可用区):选择第二个 可用区(例如 us-east-1b)IPv4 CIDR block (IPv4 CIDR 块):10.0.2.0/24
此子网将包含所有以 10.0.2.x 开头的 IP 地址。
创建第二个私有子网 VPC ID :lab-vpc
Subnet name (子网名称):lab-subnet-private2
Availability Zone (可用区):选择第二个 可用区(例如 us-east-1b)IPv4 CIDR block (IPv4 CIDR 块):10.0.3.0/24
此子网将包含所有以 10.0.3.x 开头的 IP 地址。
配置路由表 现在,您将配置这个新的 私有 子网,将流向互联网的流量路由到 NAT 网关,以便第二个私有子网中的资源能够连接到互联网,同时这些资源仍然保持私有。这是通过配置路由表 完成的。
路由表 包含一组规则(称为路由 ),用于确定网络流量的流向。VPC 中的每个子网必须与一个路由表相关联;而路由表控制子网的路由。
此路由表用于路由来自私有子网的流量。
此路由表用于公有子网的流量
创建VPC安全组 Security group name (安全组名称):Web Security Group
Description (描述):Enable HTTP access
VPC :选择 X 删除当前选择的 VPC,然后从下拉列表中选择 lab-vpc 在 Inbound rules (入站规则)窗格中,选择 Add rule(添加规则)配置以下设置:
Type (类型):HTTP Source (源):Anywhere-IPv4 Description (描述):Permit web requests
启动Web服务器实例 配置网络设置:
在 Network settings (网络设置)旁边,选择 Edit (编辑),然后配置:
Network (网络):lab-vpc Subnet (子网):lab-subnet-public2 (非 私有!)Auto-assign public IP (自动分配公有 IP):Enable (启用)接下来,您将实例配置为使用之前创建的 Web Security Group 。
在 Firewall (security groups) (防火墙(安全组))下,选择 Select existing security group (选择现有安全组)。对于 Common security groups (常见安全组),选择 Web Security Group 。
此安全组将允许对实例进行 HTTP 访问。 在 Configure storage (配置存储)部分中,保留默认设置。
注意 :默认设置指定实例的根卷 (托管您之前指定的 Amazon Linux 来宾操作系统)在大小为 8 GiB 的通用型 SSD (gp3 ) 硬盘驱动器上运行。您也可以添加更多存储卷,但在本实验中不需要这样做。
配置一个脚本,在实例启动时在实例上运行此脚本:
展开 Advanced details (高级详细信息)面板。
滚动到页面底部,然后复制下面显示的代码并将其粘贴到 User data (用户数据)框中:
#!/bin/bash
# Install Apache Web Server and PHP
dnf install -y httpd wget php mariadb105-server
# Download Lab files
wget https://aws-tc-largeobjects.s3.us-west-2.amazonaws.com/CUR-TF-100-ACCLFO-2/2-lab2-vpc/s3/lab-app.zip
unzip lab-app.zip -d /var/www/html/
# Turn on web server
chkconfig httpd on
service httpd start
此脚本将在实例的来宾操作系统上以根用户权限运行,并且会在实例首次启动时自动运行。此脚本将安装一个 Web 服务器、一个数据库和 PHP 库,然后在 Web 服务器上下载并安装 PHP Web 应用程序。