72-JT项目10(Nginx服务器/tomcat部署/数据库高可用)
Linux服务器中部署springboot项目
1.部署tomcat服务器
1.1 修改图片上传路径
1.1.1 创建目录
说明:在指定的文件目录/usr/local/src下 创建images.
1.1.2 获取图片目录
1.1.3修改图片服务器地址
在项目的image.properties文件中进行修改,然后重新编译,打包
#配置图片服务器
image.urlPath=http://image.jt.com
#创建根目录
image.localDirPath=/usr/local/src/images
1.2 关闭tomcat服务器
命令1: jps 查看当前的启动的服务
命令2:杀死进程:
kill -9 PID号 强制杀死
kill -15 PID号 友好的关闭
1.3 上传完整的tomcat服务器war包
说明:将旧的war包文件删除在,之后上传新的war包文件 端口号位8081.war/8082.war
1.4 校验数据库服务是否可用
1.4.1 测试数据库连接
测试说明:通过命令连接数据库时,如果报错如下,则表示数据库没有启动.
1.4.2 启动数据库
说明:利用 命令 systectl start mariadb 启动数据库.
1.4.3 MariaDB自启动服务命令
命令: systemctl enable mariadb
1.5后台启动tomcat服务器
说明: 如果使用 java -jar xxxx.war的命令 表示前台启动方式,该方式如果将Linux的终端关闭,则服务器也会关闭.所以需要开启后端运行.:
1.校验防火墙是否启动
命令: firewall-cmd --state
2.如果没有关闭防火墙,则执行关闭的命令,当前就可生效
systemctl stop firewalld.service
3.后端启动命令,->之间没空格
nohup java -jar 8081.war -> 8081.log & nohup java -jar 8082.war -> 8082.log &
1.6 以脚本(外挂)的方式启动tomcat服务器
说明:利用shell 脚本批量的启动tomcat服务器.
步骤1: 创建脚本文件
步骤2: 编辑脚本内容
要以#!/bin/sh开头,编辑完以后保存
步骤3: 运行脚本
!
1.7 文件上传测试
1.8Linux服务器异常的排查
说明:如果tomcat服务器运行期间报错了,则需要检查日志文件
命令1: cat 日志文件信息
命令2: tail -10 日志文件 后10行日志
命令3: tail -f 日志文件 动态日志打印
1.9 远程连接虚拟机失败
1.9.1检查双方IP地址是否正常
1.检查windows IP地址
2.检查 Linux IP时 发现没有IP地址
则重启网卡即可.
service NetworkManager stop
chkconfig NetworkManager off 永久关闭 Manager网卡
service network restart
检查Linux IP
1.10windows IP地址修改
说明:如果发现windows IP地址与Linux不在同一个网段则执行如下操作.
2. 安装Linux Nginx服务器
2.1 原理图
2.2 Nginx下载
说明:在Linux中采用在线下载的形式,直接从Nginx的官网获取安装包,或者通过上传nginx压缩包解压运行
命令: wget 软件地址
2.3 安装nginx 服务器
2.3.1 解压nginx
tar -xvf nginx-1.19.1.tar.gz
2.3.2 修改文件名称,归纳压缩文件
mv nginx-1.19.1.tar.gz soft/
mv nginx-1.19.1 nginx
2.3.3 Nginx生成可执行文件
步骤1: 生成可执行文件
./configure
步骤2: 编译
make
步骤3: 安装nginx
make install
步骤4: 获取nginx工作目录
whereis nginx
2.4 nginx命令
说明: 跳入到Nginx的工作目录 /usr/local/nginx
2.5 修改nginx配置文件
说明:由于Linux中不方便安装编辑器,不像windows中这样方便,思路:通过远程连接工具获取Linux中的文件,之后在线编辑.修改完成之后 重启nignx服务器.
#配置图片服务器
server {
listen 80;
server_name image.jt.com;
location / {
root /usr/local/src/images;
}
}
#配置tomcat集群
server {
listen 80;
server_name manager.jt.com;
location / {
proxy_pass http://jtLinux;
}
}
#配置负载均衡
upstream jtLinux {
server 192.168.126.129:8081;
server 192.168.126.129:8082;
}
修改完成之后 重启nignx服务器.
./nginx -s reload
2.6 修改HOSTS文件
# 京淘配置
#左侧写IP地址 右侧写域名 中间使用空格分隔
#为了实现Linux发布修改如下
192.168.126.129 image.jt.com
192.168.126.129 manager.jt.com
#127.0.0.1 image.jt.com
#127.0.0.1 manager.jt.com
127.0.0.1 www.jt.com
127.0.0.1 sso.jt.com
2.7 效果测试
2.8 检查Linux中的服务
命令: ps -ef | grep nginx
管道的作用: 将第一个查询的结果当做参数传递第二项.
3 数据库高可用实现
3.1 修改虚拟机IP地址
3.1.1 修改从服务器IP地址
说明:为了部署2台tomcat服务器,则必须修改从服务器的IP地址,将IP地址改为192.168.126.130.
3.1.2 查找IP文件
3.1.3 修改IP地址
修改完成以后,需要重启网卡,或者重启虚拟机 reboot
命令:
service network restart
3.1.4 连接远程服务器
3.2 安装数据库
3.2.1 安装mariaDB数据库
systemctl install mariadb-server
3.2.2 启动数据库
systemctl start mariadb
3.2.3 设定数据库用户名和密码
mysql_secure_installation
如果遇到提示一路点Y即可.
3.2.4 设定数据库用户名和密码
1).登录数据库
mysql -u root -p1234
2).查询所有用户的权限信息.
select host,user from user;
3).修改用户权限信息
说明:将localhost 改为"%" 号即可. %代表任意的IP地址.
update user set host='%' where host ='localhost';
4).刷新数据库权限
flush privileges;
5).关闭防火墙
systemctl disable firewalld.service
systemctl stop firewalld.service
6)查看防火墙状态
firewall-cmd --state
7).使用SqlYog工具动态连接.
3.2.5 实现数据库同步(冷备份实现)
说明:第一步需要将主库的信息导出.
第二步: 需要将主库的信息导入从库,然后刷新数据库
3.2.6 关于数据库导入报错问题
如果不能通过工具导入数据库,则通过命令执行如下操作.
3.3 数据库同步问题
3.3.1 数据库冷备份
说明: 在规定的时间周期内,通过手动的导入导出的方式实现数据库的同步.
特点:
1.执行稳定,一般不容易出现.
2.因为是定期备份,所以可能导致备份不及时,导致数据丢失.
3.数据冷备份是公司恢复数据最后有效的手段.
3.3.2 数据库热备份
同步步骤:
- 当数据库主库Master 发生数据的修改时,则将修改的数据写入二进制日志文件中.(二进制日志文件需要手动开启);
- 从库会开启IO线程,去主库中读取更新的二进制日志文件,并且记录读写位置(POS).
- 为了实现数据库同步的(异步)功能,将IO线程读取信息通过中继日志进行保存.
- Sql线程会读取中继日志中的数据,之后将数据写入到数据库中.至此整个数据库热备份完成.
4 虚拟机克隆问题
克隆之前先将虚拟机关闭