1.利用脚本实现项目发布
1.1 编辑脚本文件
vim start.sh
1.2 启动脚本
1.3 日志查看命令
cat 输出文件所有的内容 可以检索少量的日志文件
more 输出文档所有的内容,分页输出,空格浏览下一屏,q退出
less 用法和more相同,只是通过PgUp、PgOn键来控制
tail 用于显示文件后几号,使用频繁
tail -10 nginx.conf 查看nginx.conf的最后10行
tail –f nginx.conf 动态查看日志,方便查看日志新增的信息
ctrl+c 结束查看
1.4 关于Nginx作业说明
#配置域名代理
server {
listen 80;
server_name manage.jt.com;
location / {
#代理 服务器访问地址
#proxy_pass http://localhost:8091;
#proxy_pass http://jtWindows;
proxy_pass http://jtLinux;
}
}
#构建tomcat服务器集群
#关键字: upstream 定义集群
#默认规则: 1.轮询策略 2.权重 weight=阿拉伯数字 3.IPhash
# max_fails=1 设定最大的失败次数
# fail_timeout= 失败的超时时间
# 如果nginx请求达到了最大的失败次数,则在规定的时间内,不会再把请求发给tomcat服务器.直到下一个周期.
upstream jtWindows {
#ip_hash;
server localhost:8081 max_fails=1 fail_timeout=60s;
server localhost:8082 max_fails=1 fail_timeout=60s;
server localhost:8083 max_fails=1 fail_timeout=60s;
}
#搭建Linux集群
upstream jtLinux {
server 192.168.126.129:8081;
server 192.168.126.129:8082;
}
1.5 安装Linux 的Nginx服务器
1.5.1 下载Linux版本的服务器
1.5.2 上传Nginx服务器
1.5.3 关于nginx目录说明
源码目录: /usr/local/src/nginx-source 该目录只是用来编译nginx.不负责nginx服务器的运行.
工作目录: /usr/local/nginx 该nginx负责反向代理的相关配置.
1.5.4 安装nginx服务器
路径位置: /usr/local/src/nginx-source
进入nginx-source目录中执行下列命令
命令1: ./configure
命令2: make 校验服务是否有效
命令3: make install 安装nginx服务项
1.6 Nginx配置
1.6.1 检查nginx目录结构
1.6.2 修改Linux nginx配置
#配置图片服务器
server {
listen 80;
server_name image.jt.com;
location / {
root /usr/local/src/images;
}
}
#配置tomcat集群
upstream tomcats{
server 192.168.126.129:8081;
server 192.168.126.129:8082;
}
#配置后端服务器
server {
listen 80;
server_name manage.jt.com;
location / {
proxy_pass http://tomcats;
}
}
1.6.3 Nginx项目启动
位置:
命令:
1. ./nginx 启动nginx
2. ./nginx -s reload 重启nginx
3. ./nginx -s stop 停止nginx
1.6.4 Linux项目发布
修改hosts文件 让所有的请求 发往Linux 版本的服务器.
#配置Linux环境下的服务
192.168.126.129 image.jt.com
192.168.126.129 manage.jt.com
# 京淘电商环境
#127.0.0.1 image.jt.com
#127.0.0.1 manage.jt.com
127.0.0.1 www.jt.com
127.0.0.1 sso.jt.com
127.0.0.1 localhost
1.6.5 项目发布说明
2. 准备第二台虚拟机
2.1 复制课前资料的虚拟机
准备2台Linux虚拟机程序.
2.2 IP地址修改
具体参见: 关于京淘项目虚拟机IP修改说明博客
2.3 在130系统中安装mariadb数据库
1.安装数据库
2.开放mysql权限
3.关闭Linux的防火墙
具体参数Linux 安装mariadb的博客
2.4 系统还原
2.4.1 业务说明
由于京淘项目在windows中开发,在Linux中部署.整个流程注意事项众多,导致大家完成业务耦合性高.
2.4.2 修改端口
2.4.3 修改图片地址
切换文件存储的位置.
2.4.4 还原Nginx配置
修改完成之后,重启nginx服务器
2.4.5 还原HOSTS文件
3. 数据库高可用实现
3.1 数据库优化说明
3.1.1 冷备份说明
业务场景: 数据库中的记录应该保证尽可能的安全,如果数据丢失则会造成不可挽回的损失!!!
说明: 根据用户的需求 定期的将数据库文件进行备份/转储 从而保证数据的安全.
缺点:
1.该操作需要人工手动的操作
2.冷备份由于不是实时的,所以可能导致数据丢失…
3.如果备份的数据库的文件较大,则备份的时间很久,容易出错.
说明: 数据的冷备份是公司恢复数据最后有效的手段.
3.1.2 数据库热备份
备份步骤:
1.当用户进行了数据的修改时,会将修改的数据写入二进制日志文件.
2.从库通过IO线程 读取主库中的记录.将数据写入到中继日志中.
3.Sql线程读取数据信息.通过sql语句写入到从库中.
数据库备份的功能,是数据库原生自带的服务.所以不需要第三方的干预…
注意事项: 数据库中的二进制日志文件 默认的条件下是关闭的.如需备份,需要手动的开启.
3.2 实现数据库备份操作
3.2.1 开启主库二进制日志
主库: 192.168.126.129
从库: 192.168.126.130
二进制文件位置: vim /etc/my.cnf
3.2.2 重启数据库检查二进制文件信息
命令: systemctl restart mariadb
3.2.3 实现数据备份
说明:在数据库的主库中将jtdb.sql文件进行转储.之后利用sql工具在从库中进行导入.
1).主库导出数据
2).从库导入数据
3.3 开启从库二进制文件
1).执行命令: vim /etc/my.cnf
2).修改配置文件:
3).重启mysql数据库 检查是否有二进制文件信息
3.4 实现数据库主从挂载
3.4.1 检查主库状态
1).主库的状态
2).如果需要重新生成二进制文件信息,则手动删除文件即可
3).检查主库状态
3.4.2 实现数据库主从搭建
/*130 数据库从库 IP地址/端口号/用户名/密码/
二进制文件名称/二进制文件的位置*/
CHANGE MASTER TO MASTER_HOST="192.168.126.129",
MASTER_PORT=3306,
MASTER_USER="root",
MASTER_PASSWORD="root",
MASTER_LOG_FILE="mysql-bin.000001",
MASTER_LOG_POS=245;
/*2.启动数据库主从服务*/
START SLAVE;
/*3.检查主从的状态*/
SHOW SLAVE STATUS;
/*4.搭建错误 1).关闭主从服务 */
/*4.1 关闭主从服务*/
STOP SLAVE;
/*4.2 检查报错信息 last_sql_error last_io_error 根据日志查询状态*/
/*4.3 重新搭建主从服务 */