配置阿里云负载均衡全站HTTPS集群
1. 购买ECS服务器
进入阿里云官网
(1)基本配置
(2)网络和安全组
(3)系统配置
(4)分组设置
(5)确认订单
2. 购买CLB负载均衡
(1)进入负载均衡
(2)选择按量付费
如果不选择公网ip的话是不需要付费的,四层负载到七层负载不需要用到公网。
(3)点击立即开通
3. 实现四层负载均衡
四层负载进行端口转发请求,四层负载均衡是公网ip,后端两条web是私网ip。 因为不能直接通过ssh进行连接内网主机,所以借助一个四层负载均衡进行端口的转发,所以用ssh进行连接时,把请求交给四层负载,然后四层负载将请求交给转发给后端web的22端口,从而进行连接内网主机。
(1)开始配置负载均衡服务器
(2)协议&监听
(3) 后端服务器组
虚拟服务器组: 自己创建的资源池,把两台主机捆绑在一起的意思
修改端口22
(4) 用相同的操作,添加第二台主机 ,监听端口为6666
(5) 用ssh连接后台的两台web
ssh root@47.94.96.116 5555 #连接成功后进行修改主机名为test1
ssh root@47.94.96.116 6666 #连接成功后进行修改主机名为test2
(6) 创建自己的站点,进行相关的配置。
小提示: 两台主机没有公网ip,能下载nginx,是因为走的是阿里云内部yum源
小提示: 两台web相同的配置,都是安装上图的方式进行配置,两个index.html的内容不一样,为了验证负载均衡。/usr/share/nginx/html是代码目录。
(7) 开始配置负载均衡
(8) 对负载均衡服务器进行域名解析
4. 实现七层负载均衡HTTPS
在物理服务器上需要在七层负载均衡上配置证书,然后在nginx配置文件进行相关的配置,而在阿里云上只需要点点点即可完成操作。
(1)申请一个免费的证书,可以免费申请20个
(2)创建一个新的证书(可以把证书下载下来传到负载均衡服务器完成https)
(3)开始进行证书的配置
下图小提示: 如果现在进行访问的话,必须必须发起https请求才能访问。但是现在想要的是发起http请求就能跳转到https,实现跳转
(4) 在负载均衡服务上配置跳转
重要小提示: 在阿里云上先去配443,才能去配80,如果第一次就是配80,是出不来的。
5. 部署可道云网盘
安装安装可道云网盘,也是基于上面的实验,负载均衡,全站https,所以两台web配置相同,如下如所示
安装nginx服务:
(1)安装nginx,修改/etc/nginx/nginx.conf
# 下载nginx服务
yum -y install nginx
# 修改/etc/nginx/nginx.conf
server {
listen 80;
server_name nginx.donglinux.com;
# root /usr/share/nginx/html;
location / {
root /code;
index index.php index.html;
}
location ~ \.php$ {
root /code;
fastcgi_pass 127.0.0.1:9000;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param HTTPS on;
include fastcgi_params;
}
# Load configuration files for the default server block.
include /etc/nginx/default.d/*.conf;
}
(2) 往代码目录/code下放入可道云网盘的代码
# 下载可道云代码,解压并安装
wget http://static.kodcloud.com/update/download/kodbox.1.20.zip
# 解压至代码目录
unzip kodbox.1.20.zip -d /code
# 给/code授权给nginx用户
chown -R nginx:nginx /code
(3) 启动nginx服务
# 检查nginx配置文件是否有语法错误
nginx -t
# 启动nginx服务
systemctl start nginx
安装php-fpm服务
(1)安装php-fpm
# 下载好的php-fpm安装包,依赖都下好的情况下使用,否则使用直接安装
yum -y localinstall *.rpm
# 直接安装php-fpm
yum -y install php71w php71w-cli php71w-common php71w-devel php71w-embedded php71w-gd php71w-mcrypt php71w-mbstring php71w-pdo php71w-xml php71w-fpm php71w-mysqlnd php71w-opcache php71w-pecl-memcached php71w-pecl-redis php71w-pecl-mongodb
(2) 修改/etc/php-fpm.d/www.conf
# 修改用户和用户组为nginx
user = nginx
group = nginx
(3)启动php-fpm服务
systemctl start php-fpm
浏览器进行访问
(1) 用浏览器进行测试
# 用真实的域名进行访问,http跳转https
http://nginx.donglinux.com/
6. 手动部署证书实现HTTPS
上面的https的实现,使用阿里的证书,直接把证书部署到负载均衡器上即可。如果部署单台的web怎么实现那???,可以用手动的部署的方式在nginx服务器上进行部署。 也就是把阿里云生成的证书下载下来,在nginx服务上进行部署。
(1)把阿里云申请的证书进行下载
(2)把证书放入到/etc/nginx/ssl_key,然后修改配置文件
# 创建存放证书的目录,一个公钥,一个是私钥
mkdir /etc/nginx/ssl_key
# 往/etc/nginx/ssl_key目录下放入证书
[root@dongkun ~]# ls /etc/nginx/ssl_key/
server.crt server.key
# 创建站点vim /etc/nginx/conf.d/bird.conf
server{
listen 443 ssl;
server_name www.donglinux.com;
ssl_certificate ssl_key/server.crt;
ssl_certificate_key ssl_key/server.key;
location / {
root /code/bird;
index index.html;
}
}
server{
listen 80;
server_name www.donglinux.com;
return 302 https://$server_name$request_uri;
}
(3)启动nginx服务
# 检查nginx配置文件语法
nginx -t
# 启动nginx服务
systemctl start nginx
(4)用浏览器进行测试