接着前几篇后台哥们给我下发的数据:{"名字":"玉念聿辉","特点":"帅,特备帅"},下面我们来简单介绍Linux下负债均衡以(nginx)以及数据备份;
目录:
- Linux服务器安装---------------------------------------------------------运维1
- 常用远程工具的介绍与使用-------------------------------------------运维2
- 网络配置以及java环境配置--------------------------------------------运维3
- tomcat以及项目部署----------------------------------------------------运维4
- 负载均衡以及数据备份-------------------------------------------------运维5
- 总结-------------------------------------------------------------------------运维6
一、nginx负载均衡
nginx负载均衡配置,主要是proxy_pass、upstream的使用。据小菜所知upstream目前支持 4 种模式的分配,以下是简单实例介绍。
- weight(默认)
每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除。
upstream bakend {
server 192.168.0.14 weight=10;
server 192.168.0.15 weight=10;
server 192.168.0.16 down;
server 192.168.0.17 backup;
}
- ip_hash
每个请求按访问ip的hash结果分配,这样每个访客固定访问一个后端服务器,可以解决session的问题。
upstream bakend {
ip_hash;
server 192.168.0.14:88;
server 192.168.0.15:80;
}
- fair
按后端服务器的响应时间来分配请求,响应时间短的优先分配。
upstream backend {
server server1;
server server2;
fair;
}
- url_hash
按访问url的hash结果来分配请求,使每个url定向到同一个后端服务器,后端服务器为缓存时比较有效。
upstream backend {
server squid1:3128;
server squid2:3128;
hash $request_uri;
hash_method crc32;
}
以上就是各位 大神 总结出来的四种模式,其实也比较简单了,入门了就感觉都是拿来主义罢了,只要你用心,网上总能找到你想要的资料,在这里我主要是简单的总结一下工作中常见的内容,希望大神误喷哈。
到这里基本就完工了,可能刚入门的小哥哥会问这些东西在哪里配置啊!整体的配置是什么?OK 继续看下面,通常都是http请求,所以我们只要找到如下图对应的地方进行更改即可。
nginx下载:https://download.csdn.net/download/qq_35350654/10707741
二、数据备份
其实数据备份就有点多了,具体还得按自己的工作需求来进行备份即可,这里我简单的提一下数据库数据备份和Linux系统备份。
- 数据库备份
一. 备份数据库(自己的数据库名 如: test):
①可直接进入后台即可.(MySQL的默认目录:/var/lib/mysql )
[root@obj mysql]#cd /var/lib/mysql
②输入命令:(/home/bak/2015-09-10/ 自己新建的目录,123456 是自己数据库的密码)
[root@obj mysql]# mysqldump -u root -p test>/home/bak/2015-09-10/test.sql
Enter password: 123456
此时,已成功将数据库test备份到/home/bak/2015-9-10目录下的test.sql中.
二. 还原数据库(如: test):
1.第一种方法.
[root@obj root]# mysql -u root -p test < /home/bak/2015-09-10/test.sql
Enter password:123456
2.第二种方法.
①先登录mysql数据库,输入命令 mysql -u root -p,输入密码即可.
②再使用数据库test, use test;
③导入备份文件. source /home/bak/2015-09-10/test.sql;
这样数据库test的数据就还原成原先备份的数据了,不过新的问题也出现了,第一我总不能每天都手动去敲密令来备份吧;第二个就是我这样备份还是在自己本地上,加入服务器挂了还不是一样没用。OK 继续看下面。
写一个脚本自动备份即可,具体参照如下。
#创建脚本
touch /home/sqlBackup/backup.sh
#设置权限
chmod +x /home/sqlBackup/backup.sh
编辑脚本如下 #vim /home/sqlBackup/backup.sh:
#!/bin/bash
rm -f /home/bak/2015-09-10/*.sql
cd /var/lib/mysql
mysqldump -u root -p 123456 test>/home/bak/2015-09-10/test.sql
#192.168.53.86 备份服务器的IP /home/bak/备份目录
rsync -vzacu /home/bak/2015-09-10/test.sql root@192.168.53.86:/home/bak/ --exclude "mysqlbak/index" -e "ssh -p 22"
定时执行脚本:
#编辑定时器
crontab -e
#执行备份脚本 每天3:59执行
59 03 * * * /home/sqlBackup/backup.sh
终于OK了,手打不易啊,没想到平时最不起眼的数据库备份都得花这么多话来解释,看来得提升自己的语文能力了。
- 系统备份
系统备份一般用的还是比较少了,如果是本地服务器的话建议做一个备份罢了,常用的云服务器个人感觉没必要做这个备份,运营商会给我们备份好的,倒不如给服务器装一套监控系统来的实在。
(大神)Linux下系统备份文章:https://blog.csdn.net/sophiafxr/article/details/52176756
(大神)常用的系统监控软件:https://blog.csdn.net/cai_xingyun/article/details/51567948
END
编辑:吴明辉