linux云计算中小企业规模集群架构设计图----总结
在写今天内容前,小编绘制一个图:我设计了linux云计算中小企业规模集群架构设计图(也可根据业务需求,增加业务变成大型企业架构设计图)
知识补充–故障案例-https no such故障案例
原因分析:
- SSL证书文件或密钥文件路径错误:
- 在Nginx配置文件中(通常是nginx.conf),ssl_certificate和ssl_certificate_key指令后指定的文件路径可能不正确。
- 文件名或扩展名可能拼写错误。
- 文件权限问题:
- SSL证书文件和密钥文件的权限设置可能不正确,导致Nginx无法读取这些文件。
- 文件不存在:
- 指定的文件在服务器上可能根本不存在。
- Nginx配置错误:
- Nginx配置文件可能存在语法错误,导致Nginx无法正确解析并加载SSL配置。
- 服务器或网络问题:
- 服务器上的磁盘空间不足或文件系统损坏可能导致文件无法访问。
- 网络问题可能导致服务器无法正确读取存储在远程位置的文件。
解决方案:
- 检查文件路径和文件名:
- 确保Nginx配置文件中指定的SSL证书和密钥文件的路径和文件名完全正确。
- 使用
ls -l
命令在服务器上检查文件是否存在及其路径是否正确。
- 检查文件权限:
- 确保Nginx进程有权访问SSL证书和密钥文件。通常,这些文件应该由root用户拥有,并且Nginx进程(通常也是以root或特定用户身份运行)应该有读取权限。
- 重新加载Nginx配置:
- 修改Nginx配置文件后,使用
nginx -t
命令检查配置文件的语法是否正确。 - 如果配置文件没有问题,使用
nginx -s reload
命令重新加载Nginx配置。
- 修改Nginx配置文件后,使用
- 查看Nginx错误日志:
- 检查Nginx的错误日志文件(通常位于/var/log/nginx/error.log),以获取有关无法加载SSL证书或密钥文件的更多信息。
- 检查磁盘空间和网络连接:
- 确保服务器上有足够的磁盘空间来存储SSL证书和密钥文件。
- 检查服务器的网络连接,确保Nginx可以访问存储在远程位置的文件(如果有的话)。
- 重新生成或获取SSL证书:
- 如果SSL证书已过期或损坏,请考虑重新从证书颁发机构获取新的证书
知识补充–故障案例-keepalived调用脚本监控服务失败
在使用 Keepalived 作为高可用性解决方案时,经常会配置脚本来监控特定的服务(如Web服务器、数据库等)的状态。如果服务未运行或响应异常,Keepalived 应该根据配置执行相应的动作(如故障转移)。有时可能会遇到 Keepalived 调用脚本监控服务失败的情况,导致无法正确地进行故障检测或转移
解决方案:
- keepalived执行脚本失败
- 脚本权限,并确保有执行权限(chmod +x script.sh命令)
- 验证脚本功能(手动运行脚本,检查脚本的输出与检查)
- 根据错误提示查看配置文件内容
- 查看keepalived日志/var/log/messages
- 查找关键词:faild,error,unkown等词
知识补充–故障案例–wordpress无法一直停留在登录页面方法
解决方案:
- 清除浏览器缓存与cookie
- 检查WordPress URL和服务器状态
- 修改wp-config.php文件
- 修改wp-includes/pluggable.php文件
- 直接在浏览器中输入登录页面的URL(如http://你的域名/wp-login.php)可以绕过一些潜在的登录问题。
WEB集群-Tomact集群
内容
- java容器
- jvm,jre,jdk
- 部署java环境,tomact
- 目录结构
- 配置使用
- 常用部署java代码方式:war,jar
- nginx+tomact
- 远程监控功能
- tomact故障案例
- 前后端分离项目
java容器
-
java容器:用于存放与运行java代码的环境
-
web中间件
weblogic属于oracle(甲骨文)
JVM-JRE-JDK
- 1份代码处处运行与使用,代码的可移植性
- JVM:java虚拟机中,运行java代码的地方
- JRE:java Runtime Enviroment java运行环境,提供jvm环境,java命令
- JDK:Java Development Kit java开发环境,jvm+jre+额外功能
提示:
未来部署JDK即可,jdk
jdk–>oracle
openjdk —》开源
未来根据开发使用的环境准备即可
目前主要版本:jdk 1.8 jdk 8 jdk22.0.2
Tomcat部署
1.环境准备
2.部署jdk
- jdk 1.8.351 8u351(二进制部署)
[root@web03 ~]#mkdir -p /app/tools
[root@web03 ~]#tar xf jdk-8u351-linux-x64.tar.gz -C /app/tools/
[root@web03 ~]#ll /app/tools/
总用量 0
drwxr-xr-x 8 root root 273 7月 24 18:56 jdk1.8.0_351
# 创建软链接,方便升级或者后续操作
[root@web03 ~]#ln -s /app/tools/jdk1.8.0_351/ /app/tools/jdk
[root@web03 ~]#ll /app/tools/jdk
lrwxrwxrwx 1 root root 24 7月 24 21:14 /app/tools/jdk -> /app/tools/jdk1.8.0_351/
配置java环境变量,一般是二进制安装需要配置(yum安装或者rpm包方式安装就不需要配置)
cat >>/etc/profile<<'EOF'
export JAVA_HOME=/app/tools/jdk
export PATH=$JAVA_HOME/bin:$JAvA_HOME/jre/bin:$PATH
export CLASSPATH=.$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$JAVA_HOME/lib/tools.jar
EOF
# 查看
[root@web03 ~]#tail /etc/profile
done
unset i
unset -f pathmunge
#PS1='\[\e[32;1m\][\u@\h \W]\$ \[\e[0m\]'
export PS1='[\[\e[34;1m\]\u@\[\e[0m\]\[\e[32;1m\]\H\[\e[0m\]\[\e[31;1m\] \w\[\e[0m\]]\$'
export JAVA_HOME=/app/tools/jdk
export PATH=$JAVA_HOME/bin:$JAvA_HOME/jre/bin:$PATH
export CLASSPATH=.$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$JAVA_HOME/lib/tools.jar
#让它进行生效
[root@web03 ~]#source /etc/profile
#检查,如果好了会有java命令
[root@web03 ~]#java -version
java version "1.8.0_351"
Java(TM) SE Runtime Environment (build 1.8.0_351-b10)
Java HotSpot(TM) 64-Bit Server VM (build 25.351-b10, mixed mode)
说明:
export JAVA_HOME=/app/tools/jdk #JDK目录
export PATH=$JAVA_HOME/bin:$JAvA_HOME/jre/bin:$PATH #JAVA PATH路径或命令
export CLASSPATH=.$CLASSPATH:.$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$JAVA_HOME/lib/tools.jar #依赖,jar包路径
部署tomact
-
tomact 8.5 9.0
-
https://tomcat.apache.org/
- 上传tomact 9.052版本
#解压,并指定解压目录
[root@web03 ~]#tar xf apache-tomcat-9.0.52.tar.gz -C /app/tools/
#查看相关信息
[root@web03 ~]#ll -h
总用量 154M
-rw-------. 1 root root 1.6K 5月 4 19:50 anaconda-ks.cfg
-rw-r--r-- 1 root root 11M 8月 24 2021 apache-tomcat-9.0.52.tar.gz
-rw-r--r-- 1 root root 143M 7月 24 12:01 jdk-8u351-linux-x64.tar.gz
[root@web03 ~]#ll /app/tools/
总用量 0
drwxr-xr-x 9 root root 220 7月 24 21:34 apache-tomcat-9.0.52
lrwxrwxrwx 1 root root 24 7月 24 21:14 jdk -> /app/tools/jdk1.8.0_351/
drwxr-xr-x 8 root root 273 7月 24 18:56 jdk1.8.0_351
#创建软链接,这里注意/app/tools/tomact(tomact后面不能有/,如果有就变成了目录!!!)
[root@web03 ~]#ln -s /app/tools/apache-tomcat-9.0.52/ /app/tools/tomact
#查看
[root@web03 ~]#ll /app/tools/tomact/
总用量 128
drwxr-x--- 2 root root 4096 7月 24 21:34 bin
-rw-r----- 1 root root 18949 7月 31 2021 BUILDING.txt
drwx------ 2 root root 238 7月 31 2021 conf
-rw-r----- 1 root root 6210 7月 31 2021 CONTRIBUTING.md
drwxr-x--- 2 root root 4096 7月 24 21:34 lib
-rw-r----- 1 root root 57092 7月 31 2021 LICENSE
drwxr-x--- 2 root root 6 7月 31 2021 logs
-rw-r----- 1 root root 2333 7月 31 2021 NOTICE
-rw-r----- 1 root root 3372 7月 31 2021 README.md
-rw-r----- 1 root root 6898 7月 31 2021 RELEASE-NOTES
-rw-r----- 1 root root 16507 7月 31 2021 RUNNING.txt
drwxr-x--- 2 root root 30 7月 24 21:34 temp
drwxr-x--- 7 root root 81 7月 31 2021 webapps
drwxr-x--- 2 root root 6 7月 31 2021 work
[root@web03 ~]#ll /app/tools/
总用量 0
drwxr-xr-x 9 root root 220 7月 24 21:34 apache-tomcat-9.0.52
lrwxrwxrwx 1 root root 24 7月 24 21:14 jdk -> /app/tools/jdk1.8.0_351/
drwxr-xr-x 8 root root 273 7月 24 18:56 jdk1.8.0_351
lrwxrwxrwx 1 root root 32 7月 24 21:36 tomact -> /app/tools/apache-tomcat-9.0.52/
#检查tomact中能不能调用系统中的JDK?
[root@web03 ~]#/app/tools/tomact/bin/version.sh
Using CATALINA_BASE: /app/tools/tomact
Using CATALINA_HOME: /app/tools/tomact
Using CATALINA_TMPDIR: /app/tools/tomact/temp
Using JRE_HOME: /app/tools/jdk
Using CLASSPATH: /app/tools/tomact/bin/bootstrap.jar:/app/tools/tomact/bin/tomcat-juli.jar
Using CATALINA_OPTS:
Server version: Apache Tomcat/9.0.52
Server built: Jul 31 2021 04:12:17 UTC
Server number: 9.0.52.0
OS Name: Linux
OS Version: 3.10.0-1160.118.1.el7.x86_64
Architecture: amd64
JVM Version: 1.8.0_351-b10
JVM Vendor: Oracle Corporation
#启动tomact
#注意:这里systemctl命令启动不了,systemctl针对(yum,rpm包),二进制需要用绝对路径进行启动;会明显发现,都是以.sh进行结尾的(tomact为脚本的组合方式进行运转)
#未来管理java(tomact)可以使用systemctl(后期写个脚本,就可以实现systemcl进行控制!!)
[root@web03 ~]#/app/tools/tomact/bin/
catalina.sh configtest.sh digest.sh setclasspath.sh startup.sh version.sh ciphers.sh daemon.sh makebase.sh shutdown.sh tool-wrapper.sh
#查看端口号
[root@web03 ~]#ss -lntup |grep java
tcp LISTEN 0 100 [::]:8080 [::]:* users:(("java",pid=2054,fd=57))
tcp LISTEN 0 1 [::ffff:127.0.0.1]:8005 [::]:* users:(("java",pid=2054,fd=65))
#查看java相关进程
[root@web03 ~]#ps -ef |grep java
root 2054 1 5 21:43 pts/0 00:00:01 /app/tools/jdk/bin/java -Djava.util.logging.config.file=/app/tools/tomact/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dorg.apache.catalina.security.SecurityListener.UMASK=0027 -Dignore.endorsed.dirs= -classpath /app/tools/tomact/bin/bootstrap.jar:/app/tools/tomact/bin/tomcat-juli.jar -Dcatalina.base=/app/tools/tomact -Dcatalina.home=/app/tools/tomact -Djava.io.tmpdir=/app/tools/tomact/temp org.apache.catalina.startup.Bootstrap start
root 2093 1527 0 21:44 pts/0 00:00:00 grep --color=auto java
- 浏览器访问 www.https//10.0.0.9:8080
tomact 目录结构
(1)目录概述;
[root@web03 ~]#cd /app/tools/tomact/
[root@web03 /app/tools/tomact]#ll
总用量 128
drwxr-x— 2 root root 4096 7月 24 21:34 bin
-rw-r----- 1 root root 18949 7月 31 2021 BUILDING.txt
drwx------ 3 root root 254 7月 24 21:43 conf
-rw-r----- 1 root root 6210 7月 31 2021 CONTRIBUTING.md
drwxr-x— 2 root root 4096 7月 24 21:34 lib
-rw-r----- 1 root root 57092 7月 31 2021 LICENSE
drwxr-x— 2 root root 197 7月 24 21:43 logs
-rw-r----- 1 root root 2333 7月 31 2021 NOTICE
-rw-r----- 1 root root 3372 7月 31 2021 README.md
-rw-r----- 1 root root 6898 7月 31 2021 RELEASE-NOTES
-rw-r----- 1 root root 16507 7月 31 2021 RUNNING.txt
drwxr-x— 2 root root 30 7月 24 21:34 temp
drwxr-x— 7 root root 81 7月 31 2021 webapps
drwxr-x— 3 root root 22 7月 24 21:43 work
[root@web03 /app/tools/tomact]#ll bin
总用量 876
-rw-r----- 1 root root 34698 7月 31 2021 bootstrap.jar
-rw-r----- 1 root root 16840 7月 31 2021 catalina.bat
-rwxr-x--- 1 root root 25294 7月 31 2021 catalina.sh
-rw-r----- 1 root root 1664 7月 31 2021 catalina-tasks.xml
-rw-r----- 1 root root 2123 7月 31 2021 ciphers.bat
-rwxr-x--- 1 root root 1997 7月 31 2021 ciphers.sh
-rw-r----- 1 root root 25357 7月 31 2021 commons-daemon.jar
-rw-r----- 1 root root 207420 7月 31 2021 commons-daemon-native.tar.gz
-rw-r----- 1 root root 2040 7月 31 2021 configtest.bat
-rwxr-x--- 1 root root 1922 7月 31 2021 configtest.sh
-rwxr-x--- 1 root root 9100 7月 31 2021 daemon.sh
-rw-r----- 1 root root 2091 7月 31 2021 digest.bat
-rwxr-x--- 1 root root 1965 7月 31 2021 digest.sh
-rw-r----- 1 root root 3606 7月 31 2021 makebase.bat
-rwxr-x--- 1 root root 3382 7月 31 2021 makebase.sh
-rw-r----- 1 root root 3460 7月 31 2021 setclasspath.bat
-rwxr-x--- 1 root root 3708 7月 31 2021 setclasspath.sh
-rw-r----- 1 root root 2020 7月 31 2021 shutdown.bat
-rwxr-x--- 1 root root 1902 7月 31 2021 shutdown.sh
-rw-r----- 1 root root 2022 7月 31 2021 startup.bat
-rwxr-x--- 1 root root 1904 7月 31 2021 startup.sh
-rw-r----- 1 root root 46615 7月 31 2021 tomcat-juli.jar
-rw-r----- 1 root root 425741 7月 31 2021 tomcat-native.tar.gz
-rw-r----- 1 root root 4574 7月 31 2021 tool-wrapper.bat
-rwxr-x--- 1 root root 5540 7月 31 2021 tool-wrapper.sh
-rw-r----- 1 root root 2026 7月 31 2021 version.bat
-rwxr-x--- 1 root root 1908 7月 31 2021 version.sh
(2)conf
(3)bin目录
(4)logs日志
(5)webapps
- 站点目录
- war包,自动解压,自动部署
Tomcat日常管理与访问
(1)日常启动与维护
- 启动tomact查看日志
浏览器访问:http://10.0.0.9:8080/
(2)书写systemctl管理配置文件进行管理
- 服务管理指令.
- 存放在/usr/lib/systemd/system/xxxx.service
- 分为3个部分.
- 修改或设置systemctl配置要进行重新加载配置.
[root@web03 ~]#systemctl cat sshd
能被systemctl进行操作的命令,背后都是服务有相对应的文件进行操作,存放在/usr/lib/systemd/system/xxxx.service
# /usr/lib/systemd/system/sshd.service
[Unit]
Description=OpenSSH server daemon
Documentation=man:sshd(8) man:sshd_config(5)
After=network.target sshd-keygen.service
Wants=sshd-keygen.service
[Service]
Type=notify
EnvironmentFile=/etc/sysconfig/sshd
ExecStart=/usr/sbin/sshd -D $OPTIONS
ExecReload=/bin/kill -HUP $MAINPID
KillMode=process
Restart=on-failure
RestartSec=42s
[Install]
WantedBy=multi-user.target
[root@web01 ~]#systemctl cat nginx
# /usr/lib/systemd/system/nginx.service
[Unit]
Description=nginx - high performance web server
Documentation=http://nginx.org/en/docs/
After=network-online.target remote-fs.target nss-lookup.target
Wants=network-online.target
[Service]
Type=forking
PIDFile=/var/run/nginx.pid
ExecStart=/usr/sbin/nginx -c /etc/nginx/nginx.conf
ExecReload=/bin/sh -c "/bin/kill -s HUP $(/bin/cat /var/run/nginx.pid)"
ExecStop=/bin/sh -c "/bin/kill -s TERM $(/bin/cat /var/run/nginx.pid)"
[Install]
WantedBy=multi-user.target
[root@web03 ~]#vim /usr/lib/systemd/system/tomact.service
# /usr/lib/systemd/system/tomact.service
[Unit]
Description=tomact
Documentation=http://nginx.org/en/docs/
After=network.target
Wants=network-online.target
[Service]
Type=forking
EnvironmentFile=/etc/sysconfig/tomact
ExecStart=/app/tools/tomact/bin/startup.sh
ExecReload=/app/tools/tomact/bin/shutdown.sh && sleep2 &&/app/tools/tomact/bin/startup.sh
ExecStop=/app/tools/tomact/bin/shutdown.sh
[Install]
WantedBy=multi-user.target
[root@web03 ~]#vim /etc/sysconfig/tomact
#变量=值
export JAVA_HOME=/app/tools/jdk
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
exportCLASSPATH=.$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$JAVA_HOME/lib/tools.jar
[root@web03 ~]#echo $PATH
/app/tools/jdk/bin:/jre/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
## $PATH在tomact中的enviromentfile识别不了,需要将$PATH变成/app/tools/jdk/bin:/jre/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
[root@web03 ~]#systemctl daemon-reload
[root@web03 ~]#systemctl enable tomact.service
Created symlink from /etc/systemd/system/multi-user.target.wants/tomact.service to /usr/lib/systemd/system/tomact.service.
3)运行代码
- 开发人员书写的java代码:java源代码,无法直接部署tomact中
- 需要对源代码进行编译:生成war包,jar包
- 通过maven,Gradle把java源代码,编译生成war包,或jar包
案例:部署war包案例,运行memtest.war包案例,放在webapps目录,然后访问即可
如何编译java源代码:
通过maven,Gradle把java源代码,编译生成war包或jar包.
[root@web03 ~]#ll -h memtest.war
-rw-r--r-- 1 root root 643 8月 6 2024 memtest.war
[root@web03 ~]#ll -h memtest.war
-rw-r--r-- 1 root root 643 8月 6 2020 memtest.war
[root@web03 ~]#
[root@web03 ~]#mv memtest.war /app/tools/tomact/webapps/
[root@web03 ~]#ll /app/tools/tomact/webapps/
总用量 8
drwxr-x--- 15 root root 4096 7月 24 21:34 docs
drwxr-x--- 7 root root 99 7月 24 21:34 examples
drwxr-x--- 6 root root 79 7月 24 21:34 host-manager
drwxr-x--- 6 root root 114 7月 24 21:34 manager
-rw-r--r-- 1 root root 643 8月 6 2020 memtest.war
drwxr-x--- 3 root root 223 7月 24 21:34 ROOT
[root@web03 ~]#tree -F /app/tools/tomact/work/
/app/tools/tomact/work/
└── Catalina/
└── localhost/
├── docs/
├── examples/
├── host-manager/
├── manager/
└── ROOT/
7 directories, 0 files
- 访问浏览器
- 10.0.0.9/memtest/meminfo.jsp网站
案例:jar-包案例,运行指定的jar包
启动程序
nginxWebUI-3.4.0.jar
java -jar -Dfile.encoding=UTF-8 nginxWebUI-3.4.0.jar
--server.port=8848 --roject.home=/root/
Linux: nohup java -jar -Dfile.encoding=UTF-8
/home/nginxWebUI/nginxWebUI.jar --server.port=8080 -
-project.home=/home/nginxWebUI/ > /dev/null &参数说明(都是非必填)
[root@web03 ~]#mkdir -p /app/jar/ngxweb/
[root@web03 ~]#cd /app/jar/ngxweb/
[root@web03 /app/jar/ngxweb]#mv ~/nginxWebUI-master.jar .
[root@web03 /app/jar/ngxweb]#ll
总用量 3932
-rw-r--r-- 1 root root 4023346 5月 16 2022 nginxWebUI-master.jar
[root@web03 /app/jar/ngxweb]#java -jar nginxWebUI-master.jar -Dfile.encoding=UTF-8
出现 at/exception 等这种词就表示有错误:
默认是8080,tomact端口也是8080,端口冲突!!!
[root@web03 /app/jar/ngxweb]#java -jar nginxWebUI-master.jar -Dfile.encoding=UTF-8 --server.port=8888-project.home=/home/nginxWebUI/ > /dev/null &参数说明(都是非必填)
--server.port占用端口,默认以8080端口启动
--project.home项目配置文件目录,存放数据库文件,证书文件,日志等,默认为
/home/nginxWebUI/
注意Linux命令最后加一个&号,表示项目后台运行
显示这一种图表示成功:
运行了这个服务发现页面一直加载,默认在前台显示,未来我们可以开窗口进行测试或者
linux: java -jar -Dfile.encoding=UTF-8 /home/nginxWebUI/nginxWebUI.jar --server.port=8080 --project.home=/home/nginxWebUI/ >/dev/null
- 浏览器访问10.0.0.9:8888/adminPage/login
-
tomact管理端
- tomcat管理端,web页面管理与查看tomcat信息的功能.
- 对tomcat进行调优的时候.
- 未来优化的时候需要关闭.
conf/tomact-users.xml
-
开启管理端功能
1. 修改配置文件tomcat-users.xml
2. 修改代码(安全措施,只能127访问) -
修改配置文件
[root@web03 ~]# vim /app/tools/tomact/conf/tomact-users.xml
<?xml version="1.0" encoding="UTF-8"?>
<tomcat-users xmlns="http://tomcat.apache.org/xml"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://tomcat.apache.org/xml tomcat-users.xsd"
version="1.0">
<role rolename="manager-gui"/>
<role rolename="admin-gui"/>
<user username="wulin" password="1" roles="manager-gui,admin-gui"/>
</tomcat-users>
[root@web03 ~]#
- 只能127访问
[root@web03 ~]# curl -u wulin:1 http://127.0.0.1:8080/manager/status
- 修改代码
[root@web03 ~]#cd /app/tools/tomcat/webapps/
[root@web03 ~]#sed -i 's#127#\\d+#g'./host-manager/META-INF/context.xml ./host-manager/WEB-INF/manager.xml ./manager/META-INF/context.xml
[root@web03 ~]#systemctl restart tomcat
访问10.0.0.9:8080/mananger/status:
tomact配置文件
- server.xml
#8005端口
2 <Server port="8005"shutdown="SHUTDOWN">
8005 shutdown端口,连接这个端口输入shutdown字符,就可以关闭Tomcat.
#配置 管理端认证功能
<GlobalNamingResources>
<Resource name="UserDatabase" auth="Container"
type="org.apache.catalina.UserDatabase"
description="User database that can be
updated and saved"
factory="org.apache.catalina.users.MemoryUserDataba
seFactory"
pathname="conf/tomcat-users.xml" />
</GlobalNamingResources>
#8080处理用户的http请求的.
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
#这里的8443是用于处理https请求.
#engine部分,指定默认的虚拟主机.
<Engine name="Catalina" defaultHost="localhost">
defaultHost="localhost"指定localhost作为默认的虚拟主机.
#Host部分,虚拟主机的配置部分.
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true">
<Valve
className="org.apache.catalina.valves.AccessLogValve
"directory="logs"
prefix="localhost_access_log"
suffix=".txt"
pattern="%h %l %u %t "%r"%s %b" />
</Host>
Host部分
name="域名"
- 配置文件小结
端口:8080,8443,8090(从8.5隐藏开始与apache连接)
Host部分含义
规范tomact访问日志格式
" quot;表示双引号.
pattern="%h %l %u %t "%r" %s %b "%
{Referer}i" "%{User-Agent}i" "%
{X-Forwarded-For}i"" />
[root@web03 /app/tools/tomact]# vim conf/server.xml
[root@web03 /app/tools/tomact]# systemctl restart tomact
[root@web03 /app/tools/tomact]#ll localhost_access_log.2023-03-21.txt
-rw-r----- 1 root root 8104 jun 16:08 localhost_access_log 2023-02-21.txt
1.请求与8080端口连接
2.域名与Host部分的Name进行匹配,
a)匹配成功则使用对应的虚拟主机.
b)匹配失败则使用Engine部分defaultHost指定的默认的虚拟主机进行处理.
tomcat可以处理静态与动态请求.
处理静态请求的效率较低,擅长动态.
案例03: Tomcat部署zrlog应用
https://www.zrlog.com/
- 代码war
[root@web03 ~]#ll zrlog-2.2.1-efbe9f9-release.war
-rw-r--r-- 1 root root 11243048 7月 24 12:00 zrlog-2.2.1-efbe9f9-release.war
[root@web03 ~]#rz -E
rz waiting to receive.
[root@web03 ~]#ll zrlog-2.2.1-efbe9f9-release.war
-rw-r--r-- 1 root root 11243048 7月 24 12:00 zrlog-2.2.1-efbe9f9-release.war
[root@web03 ~]#mv zrlog-2.2.1-efbe9f9-release.war zrlog.war
[root@web03 ~]#ll zrlog.war
-rw-r--r-- 1 root root 11243048 7月 24 12:00 zrlog.war
[root@web03 ~]#mv zrlog.war /app/tools/tomact/webapps/:
[root@web03 ~]#ll /app/tools/tomact/webapps/
总用量 10988
drwxr-x--- 15 root root 4096 7月 24 21:34 docs
drwxr-x--- 7 root root 99 7月 24 21:34 examples
drwxr-x--- 6 root root 79 7月 24 21:34 host-manager
drwxr-x--- 6 root root 114 7月 24 21:34 manager
-rw-r--r-- 1 root root 643 8月 6 2020 memtest.war
drwxr-x--- 3 root root 223 7月 24 21:34 ROOT
-rw-r--r-- 1 root root 11243048 7月 24 12:00 zrlog.war
会自动解压,自动解压的过程:
- 创建数据库,用户.:
[root@web03 ~]#cd /app/tools/tomact/logs/
[root@web03 /app/tools/tomact/logs]#less catalina.out
- 做本地解析
10.0.0.9 zrlog.wulinlinux.cn
访问浏览器:http://10.0.0.9 zrlog.wulinlinux.cn:8080/zrlog/
安装界面:
[root@db01 ~]#mysql -uroot -p123
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 2
Server version: 5.5.68-MariaDB MariaDB Server
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| wordpress |
| wulin |
+--------------------+
5 rows in set (0.00 sec)
MariaDB [(none)]> select user,host from mysql.user;
+------------+------------+
| user | host |
+------------+------------+
| root | 127.0.0.1 |
| phpmyadmin | 172.16.1.% |
| wulin | 172.16.1.% |
| root | ::1 |
| root | localhost |
| wulin | localhost |
+------------+------------+
6 rows in set (0.00 sec)
MariaDB [(none)]> create database zrlog;
Query OK, 1 row affected (0.00 sec)
MariaDB [(none)]> grant all on zrlog.* to 'zrlog'@'172.16.1.%' identified by '123';
Query OK, 0 rows affected (0.01 sec)
MariaDB [(none)]> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| wordpress |
| wulin |
| zrlog |
+--------------------+
6 rows in set (0.00 sec)
- 访问浏览器页面,网站打不开
打不开原因
#前台页面
http://zrlog.wulinlinux.cn:8080/zrlog/
#后台页面 404
http://zrlog.wulinlinux.cn:8080/admin/login
- Tomcat
监控https证书是否过期
常用web中间件:
Tomcat,Jetty jvm,jre,jdk含义与关系.
部署 tomcat(jdk,tomcat) tomcat核心目录和文件bin下面命令
,
[logs下面日志
catalina.out,conf/server.xml,webapps/xxxx.war
常用java部署方式并会部署war包jar包熟悉Tomcat配置文件,8005,8080,8009
连接apache\(使用)
部署zrlog