环境部署(物理手工部署):

14次阅读

环境搭建的思路

1、找开发了解下项目使用的一些组件 , 比如说 jdk、数据库、缓存、中间件
2、搭建这些依赖组件的环境 :jdk、mysql、tomcat
3、将项目需要用到的数据库 sql 导入到数据库里
4、把项目包传到 tomcat 的目录下
5、修改项目包中的配置文件 , 配置数据库相关的信息 (ip、端口、用户名、密码、库名 )
6、启动 tomcat

一、Mysql 安装配置

1、将群文件中的 mysql-community-5.7-all.zip 文件上传到 Linux 下的 /usr/local/src 目录下
( 其他目录也可以 )
2、对压缩包进行解压
unzip mysql-community-5.7-all.zip
cd mysql-community-5.7-all
可以看到里面包含 4 个安装包

3、分别执行以下命令安装四个包 ( 严格按照顺序执行 )
rpm -ivh mysql-community-common-5.7.28-1.el7.x86_64.rpm –force –nodeps
rpm -ivh mysql-community-libs-5.7.28-1.el7.x86_64.rpm –force –nodeps
rpm -ivh mysql-community-client-5.7.28-1.el7.x86_64.rpm –force –nodeps
rpm -ivh mysql-community-server-5.7.28-1.el7.x86_64.rpm –force –nodeps
4、启动 MySQL
systemctl start mysqld
启动成功后 , 执行 ps -ef|grep mysql 命令查看进程是否存在

5、查找生成的临时密码 , 并记录下来 , 如下图
grep 'temporary password' /var/log/mysqld.log

6、登录 MySQL
mysql -u root -p
粘贴刚才记录的临时密

7、修改密码 ( 注意密码长度大于 8 位 , 包含大小写字母 + 特殊符号 + 数字 ), 以分号结尾
ALTER USER 'root'@'localhost' IDENTIFIED BY 'Testfan#123';
8、设置权限 , 允许用户远程访问

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'Testfan#123' WITH GRANT
OPTION;

9、退出 MySQL
exit

10、关闭防火墙
systemctl stop firewalld.service

systemctl disable firewalld

二、Tomcat 安装配置

单项目部署

1、先将项目放到 tomcat 的 webapps 目录下
注意 : 如果项目是 war 包形式的 , 需要先创建 pinter 文件夹 , 然后在文件夹内对 war 包
进行解压 :unzip pinter.war
将 pinter 项目需要用到的数据库 pinter 和相关表导入的 MySQL 中 , 然后修改 pinter 项
目的配置文件 /pinter/WEB-INF/classes/application.properties, 修改其中的数据库相关信
息。

2、进到 bin 目录下 , 执行命令 :
./startup.sh & tail -f ../logs/catalina.out

3、查看控制台日志 , 项目是否启动成功
4、浏览器访问 pinter 项目进行验证
http://{ip}:{port}/index

多项目部署

1、将 OA 项目放到 tomcat 的 webapps 目录下
2、配置 OA 项目所需要的数据库信息 ( 数据库必须启动 , 且已经导入了 oa.sql)
TestOA/WEB-INF/classes/jdbc.properties 文件 , 修改数据库的连接信息
3、修改 tomcat-oa 的 conf/server.xml 文件
a> <Server port="8005" shutdown="SHUTDOWN"> 将 8005 改为其他的
b> <Connector port="8080" protocol="HTTP/1.1 将 8080 改为其他的
c> <Connector port="8009" protocol="AJP/1.3" 将 8009 改为其他的
d> <Host></Host> 标签中添加项目路径配置 , 参考 pinter 项目
4、启动 tomcat, 查看控制台日志 , 项目是否启动成功
5、浏览器访问 OA 项目进行验证

Tomcat 访问日志配置

tomcat 的 logs 目录下 localhost_access_log.xxxx-xx-xx.txt 里记录了访问 tomcat 的日志 , 可
以通过配置 , 使访问日志中显示请求耗时
修改 tomcat 的 conf 目录下 server.xml 文件 , 在 pattern 属性里添加 %T
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log." suffix=".txt"
pattern="%h %l %u %t &quot;%r&quot; %s %b %T" />
重启 tomcat, 查看 access 日志 , 红框里代表就是请求的耗时 , 单位秒

集群环境下用户访问面临的问题
1、没有统一的访问入口
2、如果通过 ip 和端口号访问的话 , 服务器流量分配不均匀

三、Nginx 安装配置

Nginx 安装

Nginx 安装前需要先安装 pcre、openssl、zlib 等模块 , 手动安装比较繁琐 , 所以推荐使用
yum 进行安装
问题咨询 –>
1、默认情况下 CentOS7 中没有 nginx 的下载源 , 先手动添加官方源
rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-
0.el7.ngx.noarch.rpm
2、安装 Nginx
yum install -y nginx

Nginx 配置

Nginx 默认安装到 /etc/nginx 目录下 ,nginx.conf 为主配置文件 , 保持默认配置即可。
在 Nginx 中 , 每个 web 项目都有自己的一个配置文件 , 配置了本项目的访问方式
1、进入 nginx 目录下的 conf.d 文件夹 , 包含了一个默认配置文件模板 default.conf
2、重命名配置文件
mv default.conf pinter.conf
3、编辑 pinter.conf 配置文件 , 在 server 模块前面新增
upstream www.pinter.com {
server 192.168.2.120:8080 weight=10 max_fails=2 fail_timeout=30s;
server 192.168.2.130:8080 weight=10 max_fails=2 fail_timeout=30s;
}
注意 : 红色字体根据实际情况修改 , 两个 ip 为本项目部署在哪些服务器上
4、将 server_name 修改为 www.pinter.com( 根据实际情况修改 ),access.log 的注释去掉 ,
后面文件名称改为项目名称
5、将 location 中的 root、index 注释掉 , 新增 proxy_pass http://www.pinter.com;
注意 :proxy_pass 后的域名名称必须和 upstream 名称保持一致

6、conf.d 目录下可以放多个项目 , 配置方法同上

7、启动 nginx
在任意目录下执行命令 :nginx

如果没有任何报错 , 就代表启动成功了
nginx -s reload: 重启 nginx
nginx -s stop: 停止 nginx

8、在本机 (Windows/Mac), 修改 host 文件 , 配置两个项目的 ip 和域名映射关系
Windows 系统 host 文件在 C:\Windows\System32\drivers\etc\hosts

Nginx 访问日志配置

用户每次访问 nginx, 都会在项目的 access.log 里记录一行日志。可以在访问日志里记录请
求耗时 , 这样方便排查问题
配置方法
在 Nginx 的主配置文件 nginx.conf 中

环境部署(物理手工部署):插图

重启 nginx, 在项目 access.log 里 , 可以看到每个请求的耗时了

Nginx 负载均衡策略配置

打开 conf.d 目录下的项目配置文件 , 在 upstream 模块中 , 添加负载均衡策略
四种策略 :
轮询 : 默认策略
ip_hash: 根据 ip 进行 hash 算法 , 固定的 ip 分配到固定的后端 server

fair: 根据后端 server 的响应时间来分配请求 , 响应时间短的优先分配
url_hash: 根据 url 进行 hash 算法 , 固定的 url 分配到固定的后端 server

环境部署(物理手工部署):插图1

ip_hash
后端有 2 个 tomcat, 序号分别为 1、2
192.168.2.88 -> 1
192.168.2.89 -> 2

url_hash
/index -> 1
/login -> 2

cd tomcat-oa/logs/
tail -f localhost_access_log.2022-0918( 项目执行请求日志 )

Tomcat 的日志 , 一般都是放在 logs 目录下
catalina.out:tomcat 自带的日志文件 , 通常代码中开发打印的日志都会记录到此文件中
localhost_access.txt:tomcat 自带的日志文件 , 会记录所有访问 tomcat 的 url 信息

四、Redis 安装配置

Yum 官方源里没有 redis, 所以采用手动源码安装
1、上传 redis 安装包到 Linux 任意目录下 , 解压 tar xvf redis-5.0.7.tar.gz
2、安装 gcc(redis 安装依赖 C 语言环境 , 需要先安装 gcc)
yum install -y gcc
3、进入解压后的 redis 目录下 , 执行编译操作
make
4、执行安装命令
make install
5、安装成功

Redis 配置

1、在 redis 目录下 , 新建 conf 文件夹 , 将 redis.conf 配置文件拷贝到 conf 文件夹下
mkdir conf
cp redis.conf ./conf
2、修改 redis.conf 配置文件
daemonize 改为 yes
将 bind 127.0.0.1 注释掉
protected-mode 改为 no
Redis 启动
1、先启动 server, 在 conf 目录下 , 执行
redis-server ./redis.conf

2、使用客户端登录 redis, 默认连接的是 6379 端口的 redis 实例
redis-cli -p 6379

3、关闭 redis-server
redis-cli shutdown

Redis 其他配置
maxclient: 最大连接数 , 默认是 10000
问题咨询 –>
maxmemory: 最大内存
requirepass: 设置密码

redis 有密码的情况下
登录 :redis-cli -p 端口 -a 密码
如果主 redis 中配置了密码 , 从 redis 中也必须配置主 redis 的密码 , 否则数据无法同步
在从 redis 的配置文件中 , 添加 "masterauth 主 redis 密码 "

原文链接:https://blog.csdn.net/weixin_43421392/article/details/127893269

正文完
 
追风者
版权声明:本站原创文章,由 追风者 2024-01-02发表,共计4508字。
转载说明:声明:本站内容均来自互联网,归原创作者所有,如有侵权必删除。 本站文章皆由CC-4.0协议发布。