AWS创建ALB过程中遇到的问题总结

背景介绍
使用AWS中国区账号创建ALB,准备了两个运行在不同可用区的EC2实例,EC2运行的是linux操作系统。在EC2实例的安全组设置中,开放了HTTP 80端口。 AWS创建ALB过程中遇到的问题总结_第1张图片

问题一:
使用http://ip/访问,无法对实例的web服务进行访问。

原因一:
实例未安装httpd服务
解决方法:
使用yum安装httpd服务,执行以下命令:
#sudo -i 切换到root用户
#yum install httpd 安装httpd
#service httpd start 启动httpd服务
#chkconfig httpd on 设置开机自动启动

原因二
有可能中国区对80端口不默认开放,需要备案才能使用。
解决方法
1.更改http默认端口:
#vim /etc/httpd/conf/httpd.conf 打开配置文件,修改以下配置:
Listen 80修正为Listen 30005。
#service httpd restart 重新启动httpd服务
2.在AWS中将实例使用的安全组中http端口更改为30005。
AWS创建ALB过程中遇到的问题总结_第2张图片
完成以上设置后,使用http://ip:30005/可以访问实例的web服务。
注意:ALB创建过程也要保持端口一致。

问题二:
创建ALB完成后,使用ALB的DNS无法访问。
原因:
ALB目标组中的EC2实例状态为unhealthy,点击查看详情如下:
Health checks failed with these codes: [403]
解决方法:
由于我没有真正地部署Web服务,也可能是httpd是AWS中修改过的,因此ALB在健康状态检查时,未能得到配置中成功代码200的响应。
AWS创建ALB过程中遇到的问题总结_第3张图片
在EC2中执行以下命令:
#echo “hello world” > /var/www/html/index.html
或者单纯为了测试,可以将上图中的配置成功代码改为403。

此时,我们使用http://DNS:30005端口号在浏览器中就可以成功访问。

你可能感兴趣的:(AWS)