男儿欲遂平生志,六经勤向窗前读。这篇文章主要讲述HTTP负载均衡WEB集群架构搭建-wordpress相关的知识,希望能为你提供帮助。
HTTPS负载均衡WEB集群架构实现
服务器准备
name | Overview |
---|---|
web01-172.16.1.7 | web服务器 |
web01-172.16.1.8 | web服务器 |
nfs-172.16.1.32 | nfs服务器 |
db01-172.16.1.51 | mariadb数据库服务器 |
proxy01-172.16.1.5 | proxy服务器 |
[root@db01 ~]# yum install mariadb mariadb-server
加入开机自启
[root@db01 ~]# systemctl start mariadb
[root@db01 ~]# systemctl enable mariadb
查看端口启动情况
[root@db01 ~]# netstat -lntp |grep 3306
进入mysql数据库
[root@db01 ~]# mysql
添加远程用户& 密码并刷新权限
MariaDB [(none)]>
grant all privileges on *.* to \'app\'@\'%\' identified by \'123456\';
MariaDB [(none)]>
flush privileges;
【HTTP负载均衡WEB集群架构搭建-wordpress】创建博客网站数据库
MariaDB [(none)]>
create database wordpress;
配置nfs共享存储服务器安装nfs服务
[root@nfs01 ~]# yum install nfs-utils -y
添加共享配置
[root@nfs01 ~]# vim /etc/exports
/data/blog 172.16.1.0/24(rw,all_squash,anonuid=666,anongid)
创建共享路径
[root@nfs01 ~]# mkdir -p /data/blog
启动nfs服务& 加入自启
[root@nfs01 ~]# systemctl start nfs-server
[root@nfs01 ~]# systemctl enable nfs-server
配置web服务器创建www用户& 组
[root@web01 ~]# groupadd -g 666 www
[root@web01 ~]# useradd -g 666 -u www
注释epel源
[root@web01 ~]# gzip /etc/yum.repos.d/epel.repo
配置官方源
[root@web01 ~]# vim /etc/yum.repos.d/nginx.repo
[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true
下载Nginx
[root@web01 ~]# yum install nginx
下载php
[root@web01 ~]# wget http://cdn.xuliangwei.com/zip
解压php
[root@web01 ~]# unzip php.zip
安装php
[root@web01 ~]# yum install php/*.rpm -y
修改php-fpm运行用户& 组为www并检查
[root@web01 ~]# sed -i \'/user/c user = www\' /etc/php-fpm.d/www.conf
[root@web01 ~]# sed -i \'/group/c user = www\' /etc/php-fpm.d/www.conf
[root@web01 ~]# cat /etc/php-fpm.d/www.conf |grep www
启动nginx& php-fpm并加入开机自启
[root@web01 ~]# systemctl start nginx php-fpm
[root@web01 ~]# systemctl enable php-fpm nginx
检查端口启动
[root@web01 ~]# netstat -lntp
配置Nginx
[root@web01 ~]# vim /etc/nginx/conf.d/s.hope202091.com.conf
server {
listen 80;
server_name s.hope202091.com;
root /code/wordpress;
location / {
index index.php;
}location ~ \\.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_param HTTPS on;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
创建指定目录
[root@web01 ~]# mkdir /code
下载博客代码包
[root@web01 ~]# wget https://cn.wordpress.org/latest-zh_CN.zip
解压代码包
[root@web01 ~]# unzip latest-zh_CN.zip -d /code
修改目录属主& 属主
[root@web01 ~]# chown -R www.www /code
两台web服务器操作一致
解析域名至单台主机测试连通
配置proxy负载均衡安装Nginx
[root@proxy01 ~]# scp root@172.16.1.7:/etc/yum.repos/nginx.repo /etc/yum.repos
[root@proxy01 ~]# gzip /etc/yum.repos/epel
[root@proxy01 ~]# yum install nginx
配置Nginx
[root@proxy01 ~]# vim /etc/nginx/conf.d/proxy_s.hope202091.com.conf
upstream hope {
server 172.16.1.7:80;
server 172.16.1.8:80;
}server {
listen 80;
server_name s.hope202091.com;
return 302 https://$server_name$request_url;
}server {
server 443 ssl http2;
server_name s.hope202091.com;
ssl_certificate ssl_key/6174879_s.hope202091.com.pem;
ssl_certificate_key ssl_key/6174879_s.hope202091.com.key;
}location / {
proxy_pass http://hope;
proxy_set_header Host $http_host;
}
启动Nginx& 加入自启
[root@proxy01 ~]# systemctl start nginx
[root@proxy01 ~]# systemctl enable nginx
将域名解析至负载均衡测试连通
连接数据库
[root@web01 ~]# vim /code/wordpress/wp-config.php
/MySQL
define( \'DB_NAME\', \'wordpress\' );
/** MySQL database username */
define( \'DB_USER\', \'app\' );
/** MySQL database password */
define( \'DB_PASSWORD\', \'123456\' );
/** MySQL hostname */
define( \'DB_HOST\', \'172.16.1.51\' );
重载php-fpm
[root@web01 ~]# systemctl reload php-fpm
两台web服务器操作一致
测试连通& 根据安装导向安装更换主题新建博客上传图片获取图片存储地址
挂载nfs共享路径查看nfs共享路径
[root@web01 ~]# showmount -e 172.16.1.32
挂载挂载路径& 刷新并查看
[root@web01 ~]# mount -t nfs 172.16.1.32:/data/blog /code/wordpress/wp-content/uploads
[root@web01 ~]# mount -aL
[root@web01 ~]# df
配置文件添加挂载
[root@web01 ~]# vim /etc/fstab
172.16.1.32:/data/blog /code/wordpress/wp-content/uploadsnfs defaults 0 0
172.16.1.32:/data/blog /code/wordpress/wp-content/uploadsnfs defaults 0 0
两台web服务器操作一致
完成!
推荐阅读
- 我只用了3步,实现了一个逼真的3D场景渲染
- 实锤了!程序员喜提新头衔!!
- 直方图均衡化
- Opencv中几何变换
- 如何使用alphaTab在带有JavaScript的浏览器中显示Guitar Pro选项卡
- 如何使用Swift检索Mac的序列号
- 如何判断你的代码更改是否有效
- 如何使用浏览器中的JavaScript小技巧在Instagram上取消关注用户
- 制作还是嵌入(确定如何在你的应用程序中构建分析)