搭建一个服务器集群
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
搭建一个服务器集群
包含负载均衡,HA高可用,MySQL主从复制,备份服务器,和监控服务器,服务用discuz 论坛演示
服务器配置如下
服务器名服务器ip服务器作用
backup192.168.199.180备份+zabbix监控+NFS
Nginx1192.168.199.142主Director
Nginx2192.168.199.145从Director
Apache1192.168.199.200Apache1
Apache2192.168.199.210Apache2
Apache3192.168.199.233Apache3
Mysql1192.168.199.126主mysql
Mysql2192.168.199.131从mysql
Mysql3192.168.199.197从mysql
VIP192.168.199.3Apache负载均衡VIP
在所有服务器上操作
#关闭selinux
sed-i's/SELINUX=enforcing/SELINUX=disabled/'/etc/selinux/config&&setenforce0;
#清空iptables
iptables-F&&service iptables save;
#安装nfs服务
yum install-y nfs-utils epel-release
配置backup服务器
mkdir-p/data/discuz#建立discuz应用目录
mkdir/opt/backup#建立backup目录
#设置目录的属主和属组
chown-R shared:shared/data/discuz
chown-R shared:shared/opt/backup
vi/etc/exports#设置共享目录
/data/discuz/192.168.199.0/24(rw,sync,all_squash,anonuid=500,anongid=500)
/opt/backup/192.168.199.0/24(rw,sync,all_squash,anonuid=500,anongid=500)
/etc/init.d/rpcbind start;/etc/init.d/nfs start#启动NFS服务
配置mysql服务器
#挂载NFS服务器backup目录
mount-t nfs-onolock192.168.199.180:/opt/backup/opt
vi/etc/fstab
192.168.199.180:/opt/backup/opt nfs nolock00
安装MySQL
#在3台mysql服务器上下载mysql5.7的二进制安装文件
curl-O /mysql/MySQL-5.7/mysql-5.7.11-linux-glibc2.5-x86_64.tar.gz
tar-zxvf mysql-5.7.11-linux-glibc2.5-x86_64.tar.gz#解压mysql文件
useradd-s/sbin/nologin-M mysql#建立mysql用户
mv mysql-5.7.11-linux-glibc2.5-x86_64/usr/local/mysql#移动mysql文件
chown-R mysql:mysql/usr/local/mysql#设置mysql目录的属主和属组
mkdir-p/data/mysql#新建mysql的datadir目录
chown-R mysql:mysql/data/mysql#设置mysql的datadir目录的属主和属组
#初始化mysql
./bin/mysqld--initialize--user=mysql--datadir=/data/mysql
./bin/mysql_ssl_rsa_setup--datadir=/data/mysql
cp support-files/f/etc/f#复制mysql配置文件
cp support-files/mysql.server/etc/init.d/mysqld#复制mysql启动文件
#修改mysql配置文件
sed-i-e's?#basedir=.....?basedir=/usr/local/mysql?g;s?#datadir=.....?datadir= '/data/mysql'?g;s?#port=.....?port=3306?g;s?#socket=.....?socket= /tmp/mysql.sock?g;s?^\[mysqld\]$?\[mysqld\]\nskip-grant-tables?g'/etc/f
#修改root密码
/usr/local/mysql/bin/mysql-uroot
#在mysql里执行命令
use mysql;
update user set authentication_string=password('111111')where user='root';
delete from user where not(user='root');
delete from user where user='root'and host='';
flush privileges;
Quit
#修改配置文件
sed-i's?skip-grant-tables??g'/etc/f
配置主从
修改每台MYSQL服务器的配置文件f
1.首先开启每台服务器的Bin日志(必须的)
[code]log-bin=mysql-bin[/code]
2.要记录日志的数据库
[code]binlog-do-db=db1[/code]
3.给每一个服务器一个Id,多台服务器的Id不能重复,要求是唯一的只要不相同就行[code]server-id=1[/code]
4.下面指令是只有在环形结构时候才需要加下面项,主从的时候不需要加
[code]log-slave-updates=true[/code]
5.关于账号的建立
5.1如果是(主从)的话那么要在主服务器创建一个账号SLAVE
5.2如果是(环形)的话,那么在每台服务器上都创建一个账号SLAVE
这个账号就专门用来做复制用的
5.3创建语法: