【实践1】构建基本的博客服务(单一架构)

关于这篇文章

这篇文章是在AWS CloudTech的挑战课程中创建的,旨在引导AWS初学者进行系统化的视频学习服务。链接为https://aws-cloud-tech.com。

我只会写下我认为自己建立起来很重要的部分,不会进行详细的解释。

环境

macOS Big Sur 11.2.2 版本

这次要做的事情 cì zuò de

– 创建基本的跨越两个可用区的冗余环境
– 在EC2上安装WordPress
– 创建RDS
– 访问公共IP并启动WordPress

构成图

hands-on1.png

创建基础环境

创建虚拟私有云 (VPC)

创建子网
公共子网*2
私有子网*2
各AZ中创建一个组

– 创建IGW(Internet Gateway)并附加到VPC
– 在公共子网的路由表上添加IGW(Internet Gateway)
– 将路由表与公共子网关联起来
– 创建私有子网用的路由表并将其与子网关联起来

在EC2上创建(安装WordPress)。

* 安全组(允许SSH、HTTP)

登录并执行以下代码:
* 使用sudo su -切换到root用户

yum -y update

amazon-linux-extras install php7.2 -y
yum -y install mysql httpd php-mbstring php-xml gd php-gd

systemctl enable httpd.service
systemctl start httpd.service

wget http://ja.wordpress.org/latest-ja.tar.gz ~/
tar zxvf ~/latest-ja.tar.gz
cp -r ~/wordpress/* /var/www/html/
chown apache:apache -R /var/www/html

RDS制作

・创建子网组
为先前创建的每个可用区(AZ)指定私有子网

创建一个RDS数据库

↓以下设定项目
· 选择数据库创建方法:标准创建
· 引擎选项:mysql
· 模板:开发/测试(即使在免费使用限额中也可以) *根据用途而定

・数据库实例标识符:使用默认值(database-1)即可。
・主用户名:任意填写。
・主密码:任意填写。
*请记住,这些是WordPress安装时所需的。

・数据库实例类别:根据需要选择 t2.micro(根据用途决定)

・VPC:选择已经创建好的VPC
・子网组:选择已经创建好的子网组
・公共访问:无
・VPC安全组(用于RDS):新建

・首选数据库名称:wordpress
(虽然不确定可否自由选择,但暂时先填写wordpress)
*稍后在wordpress设置选项中输入

最近,作为安全措施,出现了指定不可被猜测的数据库名称的情况。此外,除了WordPress之外,随机设置数据库名称也是一种防范措施。

他保持默认设置OK

点击创建数据库按钮

设置RDS安全组的配置

请前往刚刚创建的RDS安全组页面,并从EC2安全组中设置允许许可。

スクリーンショット 2021-07-22 20.34.38.png

*注意点:
在尝试设置EC2SG时,
可能会出现以下错误:”无法为现有的IPv4 CIDR规则指定引用的组ID”,
导致无法完成设置。

解决方案:只要删除默认规则,并添加新规则即可进行设置。

请参考以下文章。

WordPress的初始设置

将EC2的公共IP复制粘贴到浏览器上进行连接。

然后,WordPress的初始设置页面会打开。

スクリーンショット 2021-07-22 20.47.29.png

请点击 “让我们开始吧!”

进行初始设置项目的配置

数据库名称:WordPress。

用户名:(在RDS中设置的值)

密码:(在RDS上设置的值)

数据库主机名:(RDS的终端节点)

表前缀:wp_(默认值即可)

如果可以输入,请发送→执行安装后,将切换到以下画面。

スクリーンショット 2021-07-22 20.57.09.png

填写各项内容并安装WordPress以完成(根据个人设定)。

输入用户名和密码,登录成功即可。

填補錯誤的經歷

完成了WordPress的安装并成功登录。
然而,当我意识到RDS的设置出错后重新设置,就出现了数据库连接错误。

当我重新创建EC2实例并重新安装WordPress后,问题得以解决。

我认为可能是因为最初创建的RDS信息存在于原始的WordPress缓存中,而与该信息不匹配导致的。

追注:可以尝试先删除/var/www/html目录下的文件夹,然后重新解压下载的Wordpress并安放在/var/www/html下,这也是一种解决方法。

下一篇文章

广告
将在 10 秒后关闭
bannerAds