实验4:基于ECS+RDS搭建WordPress博客

弹性计算
在开始实验之前,请先阅读以下【用户指南】

用户指南

加入实验室专属社群:交流答疑、第一时间了解获奖名单

Step 1:报名实验

  1. 前往 实验活动 ,点击 “立刻报名”,填写信息,完成报名。

Step 2:查收实验账号

  1. 完成报名后,工作人员将于3个工作日内通过手机短信给您发送实验账号,请注意查收。

  2. 账号使用时限为10天,短信发送10天后,您的实验账号将会被回收处理,请及时完成实验内容!!!

Step 3:登录账号

需要分别登录实验账号和个人账号,才能完成实验操作和结果提交,建议:

  • 在浏览器无痕模式下,登录 “实验账号” 进行实验
  • 在浏览器正常模式下,登录 “个人账号” 在文章末尾进行结果提交

Step 4:根据下列实验文档进行实操

❗❗❗注意:请严格根据实验所需资源进行创建,恶意创建超过数量的资源,官方将回收账号,并有权取消用户的活动参与资格,必要时追究违规用户的法律责任。

Step 5:提交实验结果

  1. 登录 “个人账号”,在文章末尾点击“提交实验结果”按钮,上传实验中要求的截图和相关信息。

  2. 恭喜您已完成实验!

基于ECS+RDS搭建WordPress博客 | 实验文档

背景信息

WordPress是使用PHP语言开发的博客平台,您可以在支持PHP和MySQL数据库的云服务器上架设属于自己的网站,无论是个人兴趣博客还是新闻网站,都可以通过WordPress实现。

本文以火山引擎云服务器和云数据库MySQL版为例,为您介绍如何在云上快速安装并访问WordPress。

云资源规划

您需要预先对云上资源,包括计算、网络、存储资源进行规划,架构图示例和各资源信息如下:

  • 您可以选择搭配负载均衡CLB服务构建高可用集群。

picture.image

产品或服务示例
私有网络 VPC地域及可用区:区域:华北2(北京),可用区A名称:wordpress-vpcIPv4网段:192.168.0.0/16子网名称:wordpress-subnet子网IPv4网段:192.168.0.0/24
云服务器 ECS地域及可用区:区域:华北2(北京),可用区A名称:wordpress-ecs规格:ecs.g1.xlarge(2vCPU、8GiB)镜像:CentOS 7.8系统盘:40GiB,按量付费私网地址:192.168.0.233公网IP:BGP(多线)
云数据库 MySQL版地域及可用区:区域:华北2(北京),可用区A名称:wordpress-mysql规格:小型
负载均衡 CLB地域及可用区:区域:华北2(北京),可用区A名称:wordpress-clb规格:小型,按量付费

Task 1:环境部署

本节介绍如何在火山引擎上完成私有网络 VPC、云服务器 ECS和云数据库 MySQL版的部署。

Task 1.1 创建私有网络以及子网(可复用前序实验的资源,跳过该步骤)

  1. 打开浏览器的无痕模式

  2. 使用 “实验账号” 登录火山引擎控制台

  • 选择IAM子用户登录
  1. 前往“私有网络”

  2. 点击左上角“账号全部资源”,切换成您的子账号同名项目

Tips:子账号在下拉列表中排序靠后,可直接拖到最底下再仔细查找;或打开下拉列表,直接按“ctrl+f”搜索子账号名称,即可快速定位

picture.image

  1. 需要自行创建私有网络,地域选“北京”,每个实验资源都依赖此VPC。

可复用前序实验的VPC,跳过该步骤 picture.image

  1. 根据已规划的私有网络信息完成配置。 picture.image

Task 1.2 创建云服务器并配置公网IP

Tips: 可复用前序实验的资源,跳过该步骤;选择复用之前的服务器,如果安装了非Nginx的Web服务器,需要将其暂停或者卸载,谨防造成相同端口占用导致服务不能启动

  1. 在控制台进入云服务器页面。
  2. 在顶部导航栏,选择目标地域为“华北2(北京)”。
  3. 单击“创建实例”按钮,开始选购云服务器。
  4. 进入购买模式下,根据已规划的云服务器信息进行配置:【基础配置】环节:选择 按量计费、华北2(北京)地域、计算规格请选择2vCPU、8GiB的资源、镜像建议选择“CentOS 7.x”,需选择第一步中已创建的私有网络wordpress-vpc和子网,其他参数使用默认值即可。

picture.image

  1. 单击“下一步:确认订单”按钮,确认配置信息、购买数量、费用等信息。
  2. 确认无误后,勾选“我已阅读并同意《云服务器服务条款》”。

picture.image

  1. 单击“立即购买”按钮,跳转到申请提交成功页面。
  2. 单击“去控制台”按钮,跳转到实例列表页查看新创建的实例。

Task 1.3 创建云数据库 MySQL

  1. 在控制台进入云数据库MySQL页面。

  2. 在顶部导航栏,选择目标地域为“华北2(北京)”。

  3. 在左侧导航树单击“实例列表”,单击“创建实例”按钮。

  4. 根据已规划的云数据库信息,如下图所示完成配置,未规划的参数保持默认取值。

温馨提示:创建MySQL时,会有报错提醒,该提醒为权限提示,不影响实验。

1. VPC(即私有网络)需选择第一步中已创建的私有网络。
2. MySQL实例规格需选择:共享型、1核1GB

picture.image

  1. 单击“下一步:确认订单”按钮,确认配置信息、购买数量、费用等信息。
  2. 确认无误后,勾选“我已阅读并同意《云数据库RDS MySQL版服务条款》”。

picture.image

  1. 单击“提交”按钮,跳转到申请提交成功页面。
  2. 单击“去控制台”按钮,跳转到实例列表页查看新创建的实例。
  3. 单击实例的名称,选择“账号管理”页签,单击“创建账号”按钮,创建数据库管理用户,为了最小权限原则,建议创建普通账号。

picture.image

  1. 选择“数据库管理”页签,单击“创建数据库”按钮,并为之前创建的用户分配读写权限。

picture.image

  1. 选择“数据安全”页签,点击“绑定白名单”,将上述创建的云服务器实例私网IP添加到数据库的白名单IP中,以确保数据库不暴露在公网环境中时仍然可以被云服务器实例访问到。

picture.image

picture.image

Task 2:WordPress安装及初始化

Task 2.1 安装 Nginx PHP

安装 Nginx(Tips:以下命令为centos7为例)

  1. 远程连接云服务器并登录。
  2. 依次执行以下命令。
yum -y update
yum -y install epel-release
yum -y install nginx
  1. 执行如下命令,查看nginx版本,回显nginx版本则表明nginx安装成功。
nginx -v
nginx version: nginx/1.20.1
  1. 执行以下命令,启动nginx。
systemctl start nginx

安装 PHP

  1. 请依次执行以下命令来安装PHP。
yum -y install https://rpms.remirepo.net/enterprise/remi-release-7.rpm
yum -y install yum-utils
yum-config-manager --enable remi-php74
yum install php php-cli php-fpm php-mysqlnd php-zip php-devel php-gd php-mcrypt php-mbstring php-curl php-xml php-pear php-bcmath php-json

配置 Nginx

  1. 执行以下命令,修改Nginx配置文件。
vim /etc/nginx/nginx.conf
  1. 按“i”键进入编辑模式,在server部分中添加以下内容设置默认首页。
location / {
            index index.php index.html index.htm;
}

location ~ .php$ {
            root /usr/share/nginx/html; 
            fastcgi_pass 127.0.0.1:9000;   
            fastcgi_index index.php;
            fastcgi_param  SCRIPT_FILENAME $document_root$fastcgi_script_name;
            include fastcgi_params; 
}

如下图所示

picture.image

  1. 按“Esc”,输入“:wq”,按Enter键,保存文件并返回。

验证 PHP 环境

  1. 执行以下命令,创建index.php测试文件,验证环境是否安装成功。
  2. vim /usr/share/nginx/html/index.php
  3. 按“i”键进入编辑模式,输入以下内容。
  4. <?php echo phpinfo(); ?> #phpinfo()会展示PHP的所有配置信息
  5. 按“Esc”,输入“:wq”,按Enter键,保存文件并返回。
  6. 依次执行以下命令,重新加载nginx配置文件并启动php相关服务。
  7. nginx -t
  8. nginx -s reload
  9. systemctl start php-fpm
  10. 在本地浏览器中输入http://<ECS实例公网IP地址>/,回显如下,表示PHP环境配置成功。

picture.image

Task 2.2 安装WordPress

  1. 执行以下命令,在Nginx网站根目录下载最新的WordPress源码。
  2. cd /usr/share/nginx/html
  3. wget https://wordpress.org/latest.tar.gz
  4. 执行以下命令,解压安装包。
  5. tar -xzvf latest.tar.gz
  6. 执行以下命令,在配置文件目录下备份配置文件。
  7. cd /usr/share/nginx/html/wordpress
  8. cp wp-config-sample.php wp-config.php
  9. 执行以下命令,修改WordPress的文件。
  10. vi wp-config.php
  11. 按“i”键进入编辑模式,修改以下内容,对接云数据库MySQL版。
/** The name of the database for WordPress */
define('DB_NAME', 'MySQL的名称');

/** MySQL database username */
define('DB_USER', 'MySQL的用户名');

/** MySQL database password */
define('DB_PASSWORD', 'MySQL用户密码');

/** MySQL hostname */
define( 'DB_HOST', 'MySQL的私网地址' );

/** Database charset to use in creating database tables. */
define( 'DB_CHARSET', 'utf8' );

/** The database collate type. Don't change this if in doubt. */
define( 'DB_COLLATE', '' );
  1. 按“Esc”,输入“:wq”,按Enter键,保存文件并返回。

Task 2.3 初始化WordPress网站

  1. 在本地浏览器中输入http://<ECS实例公网IP地址>/wordpress访问WordPress网站。
  2. 回显如下,表示WordPress搭建完成。

picture.image

  1. 填写网站基本信息,单击“安装WordPress”按钮。
信息说明
站点标题WordPress网站的名称。
用户名登录WordPress网站的用户名。
密码登录WordPress网站的密码。
您的电子邮箱地址用于接收通知的电子邮件地址。
  1. 单击“登录”按钮。

  2. 输入用户名和密码登录WordPress网站。WordPress网站常用地址如下:

    1. WordPress首页:http://<ECS实例公网IP地址>/wordpress/
    2. WordPress管理后台:http://<ECS实例公网IP地址>/wordpress/wp-admin/

Task 3:为WordPress构建 负载均衡

在实际生产环境中,为了使网站具有高可用性,通常会配合负载均衡服务,将多台WordPress云服务器作为负载均衡的后端服务器。

请参照前序操作搭建2台WordPress云服务器,本节将介绍如何构建负载均衡服务。

Task 3.1 创建 负载均衡 实例(可复用前序实验的资源)

  1. 登录负载均衡控制台

  2. 在顶部导航栏,选择目标实例的地域。

  3. 单击“创建负载均衡”按钮,进入负载均衡创建页。

  4. 根据已规划的负载均衡信息,如下图所示依次完成配置,未规划的参数保持默认取值。

    1. 注意:网络类型需选择公网,私有网络需选择WordPress云服务器所在的私有网络wordpress-vpc和子网wordpress-subnet。

picture.image

picture.image

  1. 单击“确认订单”按钮,确认配置信息。
  2. 确认无误后,勾选“我已阅读并同意《负载均衡服务条款》”。
  3. 单击“立即购买”按钮,跳转到申请提交成功页面,查看服务是否创建成功。
  4. 单击“去控制台”按钮,跳转到实例列表页查看新创建的实例。

Task 3.2 创建监听器(可复用前序实验的资源)

  1. 在负载均衡实例列表页,选择“配置监听器 -> 添加监听器”按钮。
  2. 在“协议&监听”页面,负载均衡协议选择HTTP,端口填写80端口。

picture.image

  1. 在“默认后端服务器组”页面,单击“创建后端服务器组”按钮,创建名为“wordpress-rds”的组,并通过“添加服务器”按钮将已创建的WordPress云服务器放入服务器组中,并配置各云服务器端口为80。

picture.image

  1. 在负载均衡中能够查看到弹性伸缩扩容的ECS实例已经加入到后端服务器组中。
请提交本步骤截图-1: 截图中体现完整的后端服务器组详情

截图例子

picture.image

  1. 返回“默认后端服务器组”界面,选择已创建的后端服务器组,单击“下一步”按钮。

picture.image

  1. 在“健康检查”页面,配置监听器的健康检查,各参数保持默认值即可。

picture.image

  1. 单击“下一步 -> 确定”按钮,完成配置,在负载均衡详情页面,可以查看到相关信息。
请提交本步骤截图-2:截图中体现完整的负载均衡概览详情

截图例子

picture.image

Task 3.3 配置转发规则

采用默认的转发规则即可,无需要额外配置。在实际应用环境中,您可以根据场景的不同设置不同的转发规则以及对应的后端服务器组。更多转发规则介绍请参见配置转发规则

picture.image

Task 3.4 验证 负载均衡

  1. 登录云服务器控制台
  2. 单击wordpress云服务器列表右侧的“更多 -> 网络配置 -> 解绑公网IP”按钮,将云服务器与公网IP解绑。

Tips:如果遇到通过负载均衡访问出现部分资源加载不成功的情况,可以通过修改数据库中,wordpress跟公网字段来解决

picture.image

  1. 在本地浏览器中输入http://<负载均衡实例公网IP地址>/wordpress访问WordPress网站,成功进入WordPress网站,表示负载均衡配置成功。
请提交本步骤截图-3:截图中体现IP地址和访问成功的状态

Task 4:实验提交结果与反馈

  1. 打开浏览器的正常模式,登录自己的 “个人账号”  
  2. 点击下方 “提交实验结果” 按钮,请根据上文三处提示,提交指定的3张实验截图和反馈建议。

如果担心提交的截图非最终预期内的截图,可进行重复提交,结果将以正确且最先提交的时间为准

707
0
1
0
关于作者
相关产品
评论
未登录
看完啦,登录分享一下感受吧~
暂无评论