云计算运维 · 第二阶段 · Tomcat

学习b记 · 第二阶段

十二、Tomcat

  Tomcat

  Tomcat和Nginx类似,都是WEB服务器软件 只不过Tomcat是基于JAVA开发的WEB服务,主要解析JAVA代码
  Nginx仅支持静态资源解析,而Tomcat支持解析Java开发的WEB应用,还支持解析静态资源(效率不高)
  Nginx适合做前端负载均衡,Tomcat适合做后端应用服务处理
  通常情况企业会使用Nginx+Tomcat结合,Nginx处理静态资源,Tomcat处理动态资源

安装Tomcat

1、下载
    链接:https://pan.baidu.com/s/1ApY7tX704IDB1UL0b_j6mA?pwd=kxxw 
    提取码:kxxw
    #这里面此次要使用的四个包
2、安装
    [root@web01 ~]#mkdir /soft
    [root@web01 ~]#rpm -ivh jdk-8u341-linux-x64.rpm
    [root@web01 ~]#tar xf  apache-tomcat-9.0.39.tar.gz  -C /soft/
    [root@web01 ~]#ln -s /soft/apache-tomcat-9.0.39/ /soft/tomcat
    [root@web01 ~]# /soft/tomcat/bin/startup.sh     # 启动
    [root@web01 ~]# /soft/tomcat/bin/shutdown.sh	# 停止
   
    # 8080 对外提供服务的端口
    # 8005 关闭Tomcat端口
    [root@web01 ~]# netstat -lntp |grep java
    tcp6    0    0 127.0.0.1:8005      :::*           LISTEN    6867/java       
    tcp6    0    0 :::8080            :::*           LISTEN    6867/java
    
3、配置systemctl启动
    cat >/usr/lib/systemd/system/tomcat.service<<'EOF'
    [Unit]
    Description=Apache Tomcat Server
    After=network.target remote-fs.target nss-lookup.target

    [Service]
    Type=forking
    ExecStart=/soft/tomcat/bin/startup.sh
    ExecStop=/soft/tomcat/bin/shutdown.sh
    ExecRestart=/soft/tomcat/bin/shutdown.sh  && sleep2  && /soft/tomcat/bin/startup.sh

    [Install]
    WantedBy=multi-user.target
    EOF

4、设置开机启动
    [root@web03 ~]# systemctl daemon-reload
    [root@web03 ~]#systemctl enable  tomcat
    Created symlink from /etc/systemd/system/multi-user.target.wants/tomcat.service to /usr/lib/systemd/system/tomcat.service.
配置文件

    tomcat软件目录结构:
    bin		      ---主要包含启动和关闭tomcat的脚本(启停java脚本依赖jar包文件)
    conf		    ---tomcat配置文件的目录(站点配置:server.xml)
    lib		      ---tomcat运行时需要加载的jar包
    logs		    ---tomcat日志存放位置
    temp		    ---tomcat临时存放文件路径
    webapps		  ---tomcat默认站点目录
    work		    ---tomcat运行时产生的缓存文件
1、配置虚拟主机
    cat   tomcat/conf/server.xml
    ...

    <Host name="diy.qxl.com"#域名  appBase="/code/tomcat/zrlog"#运行主目录,这里面可以直接运行war包移动进去自动解析成ROOT目录
        unpackWARs="true" autoDeploy="true">#这俩没讲
        <Context docBase="/code/tt" path="/tt" reloadable="true" />#这个相当于alias别名,访问/tt指向/code/tt
    <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"#这一部分是日志配置 
           prefix="zrlog_access_log" suffix=".txt"
           pattern="%h %l %u %t &quot;%r&quot; %s %b" />
    </Host>
Tomcat自带的管理页面
	管理功能
	监控功能
	#这两个功能想要使用需要配置一下参数
1、所有的管理页面,都将权限赋予给了角色,而角色的名称是固定的:   manager-gui  admin-gui
2、需要添加一个用户,将用户捆绑至对应的角色,这样用户就可以访问到对应的页面

    vim /soft/tomcat/conf/tomcat-users.xml
    ...
    <role rolename="manager-gui"/>
    <role rolename="admin-gui"/>
    <user username="tomcat" password="123456" roles="manager-gui,admin-gui"/>
    </tomcat-users>
3、由于项目默认允许127.0.0.1访问,所以配置好了角色和用户也无法正常访问:
	[root@web01 ROOT]# vim /soft/tomcat/webapps/host-manager/META-INF/context.xml
	[root@web01 ROOT]# vim /soft/tomcat/webapps/manager/META-INF/context.xml   
	#这俩个文件下面都改成这样ip改成d+
    <Valve className="org.apache.catalina.valves.RemoteAddrValve"
             allow="\d+\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />	
    #重启服务就可以了         
部署项目

1、添加虚拟主机
    </Host>
          <Host name="zrlog.qxl.com"  appBase="/zrlog"
                unpackWARs="true" autoDeploy="true">
            <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
                   prefix="zrlog_access_log" suffix=".txt"
                   pattern="%h %l %u %t &quot;%r&quot; %s %b" />
    </Host>
2、下包
    #上面不是共享了四个包,用那个zrlog的包
    #建个目录放里面就行
    [root@web01 zrlog]# mv /soft/zrlog-2.2.1-efbe9f9-release.war /zrlog/ROOT.war
3、数据库
    MariaDB [(none)]> create  database zrlog charset utf8;
    MariaDB [(none)]> grant all privileges on *.* to 'qxl'@'%' identified by '123456';
4、测试就完了
    systemctl start tomcat
#后面还有一个配置https和一个负载均衡集群,没什么意思不写了,不过会话保持不一样,这个加上
5、集群配置会话保持
    #这个环境是一个负载均衡两web节点,两个web上面都要加
    tomcat-cluster-redis-session-manager.zip#用这个包
    
    1)解压zip包   
    [root@web01 ~]# unzip tomcat-cluster-redis-session-manager.zip

    2)拷贝jars到tomcat的/lib目录中
    [root@web01 ~]# cp tomcat-cluster-redis-session-manager/lib/* /soft/tomcat/lib/

    3)拷贝conf下的redis.properties文件,到tomcat的conf文件
    [root@web01 ~]# cp tomcat-cluster-redis-session-manager/conf/redis-data-cache.properties /soft/tomcat/conf/

    4)将配置文件中连接redis地址修改为如下地址即可
    [root@web01 ~]# vim /soft/tomcat/conf/redis-data-cache.properties
    redis.hosts=172.16.1.51:6379

    5)添加如下两行至tomcat/conf/context.xml  (添加在</Context> 上一行 )
    [root@web01 ~]# vim /soft/tomcat/conf/context.xml
    <Valve className="tomcat.request.session.redis.SessionHandlerValve" />
    <Manager className="tomcat.request.session.redis.SessionManager" />
#就是把配置文件和jar包放到tomcat里面然后在该一点东西就完了,nginx的参考之前的文章,测试记得开启redis
  • 11
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Linux云计算运维是指在Linux系统中使用云计算技术进行运维管理的工作。Linux系统是一类操作系统,部署在服务器上,提供服务的机器。它具有开源和开放源代码的特点,能够最大化发挥硬件性能。Linux系统由内核和应用程序组成。内核的作用是驱动硬件正常工作,而应用程序则是在内核上运行的各种软件。 在Linux系统中,有多种发行版本可供选择,如红帽、麒麟和银河麒麟等。这些发行版本具有不同的特点和用途,用户可以根据自己的需求选择合适的版本。 对于公司希望在不同的云基础架构上运行各种工作负载的情况,可以采取多种策略来实现这一目标。例如,可以使用容器技术,将工作负载打包成容器,并在不同的云平台上部署和运行。另外,还可以利用自动化工具,如Ansible或Puppet,通过编写脚本来实现跨云平台的部署和管理。 在Linux系统中,可以使用命令来进行各种操作和管理。例如,可以使用命令来创建目录、生成文件名、以及查找和排序文件。通过调用命令的结果作为文件名称,可以实现一些灵活的操作和管理。 综上所述,Linux云计算运维是在Linux系统中利用云计算技术进行运维管理的工作。通过选择适合的发行版本、采用合适的策略和利用命令进行操作和管理,可以有效地进行云计算运维工作。<span class="em">1</span><span class="em">2</span><span class="em">3</span><span class="em">4</span>

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值