Ctenos7安装mysql-8.1.0/tomcat-9.0.80/LNMT部署
目录
一、实验拓扑
二、部署mysql
三、部署Tomcat
四、配置NGINX
五、 配置NGINX的双机热备提高可用性
一、实验拓扑

二、部署mysql
官网下载地址https://dev.mysql.com/downloads/mysql/
1、移除mariadb,安装所需应用
mysql-8.1.0 社区版 安装说明官网下载地址https://dev.mysql.com/downloads/mysql/1、yum remove mariadb
2、yum -y install liaio net-tools
3、解压安装包,进入安装包执行以下命令
yum install -y perl-Module-Install.noarch
yum install perl-Test-*.noarch -y
rpm -ivh mysql-community-common-8.1.0-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-plugins-8.1.0-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-8.1.0-1.el7.x86_64.rpm
yum install -y perl-Module-Install.noarch
rpm -ivh mysql-community-common-8.1.0-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-plugins-8.1.0-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-8.1.0-1.el7.x86_64.rpm
yum install perl-Test-*.noarch -y
rpm -ivh mysql-community-libs-8.1.0-1.el7.x86_64.rpm
yum remove mariadb-libs.x86_64 -y
rpm -ivh mysql-community-libs-8.1.0-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-compat-8.1.0-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-8.1.0-1.el7.x86_64.rpm
rpm -ivh mysql-community-debuginfo-8.1.0-1.el7.x86_64.rpm
rpm -ivh mysql-community-embedded-compat-8.1.0-1.el7.x86_64.rpm
rpm -ivh mysql-community-icu-data-files-8.1.0-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-8.1.0-1.el7.x86_64.rpm rpm -ivh mysql-community-server-debug-8.1.0-1.el7.x86_64.rpm
rpm -ivh mysql-community-devel-8.1.0-1.el7.x86_64.rpm
yum install -y openssl
rpm -ivh mysql-community-devel-8.1.0-1.el7.x86_64.rpm
yum install -y openssl*
rpm -ivh mysql-community-devel-8.1.0-1.el7.x86_64.rpm
rpm -ivh mysql-community-test-8.1.0-1.el7.x86_64.rpm
yum install -y perl*
rpm -ivh mysql-community-test-8.1.0-1.el7.x86_64.rpm
4、启动MYSQL
systemctl start mysqld
5、查看临时密码
cat /var/log/mysqld.log | grep password
6、登录MYSQL
mysql -u root -p
7、修改密码
alter user 'root'@'localhost' identified by '123456.Com';
flush privileges
创建库jx
create database jx;
8、远程登录用户创建
create user 'hy'@'%' identified by '123456.Com';
grant all privileges on 库名.表明 to 'hy'@'%' with grant options;
flush privileges;
9、命令行操作mysql
mysql -u root -p -e " show databases;"
2、同理在192.168.115.136上安装mysql并验证远程登录账户
mysql -u hy -p'123456.Com' -h 192.168.115.131 -P 3306 -e "show databases;"

三、部署Tomcat
在192.168.115.136/192.168.115.140部署tomcat
java环境Java SE | Oracle Technology Network | Oracle
Tomcat Apache Tomcat® - Welcome!
Java环境部署
1、which Java 查看Java的路径Java -version 查看Java版本如果版本达不到我们的安装要求就使用rm -rf 配合which java 删除现有版本2、直接使用rpm -ivh jdk-20_linux-x64_bin.rpm 安装即可安装完成后查看which JavaJava -versionTomcat部署
Tomcat下载地址 https://tomcat.apache.org/
1、解压tar -xf apache-tomcat-9.0.80.tar.gzmv apache-tomcat-9.0.80 /usr/local/tomcat
2、建立软联建启动命令 ln -s /usr/local/tomcat/bin/startup.sh /usr/bin/catup停止命令 ln -s /usr/local/tomcat/bin/shutdown.sh /usr/bin/catdown
启动 catup
访问测试,ok

四、配置NGINX
192.168.115.141/192.168.115.142安装NGINX配置动静分离,负载均衡
1、安装
yum -y install epel-release.noarch
yum -y install nginx
2、配置
vim /etc/nginx/nginx.conf
##在http字段插入
upstream tomcat {server 192.168.115.136:8080;server 192.168.115.140:8080;}
##在server字段插入
location ~ \.jsp$ { ####这里是jspproxy_pass http://tomcat;proxy_set_header Host $host;}location / {root /usr/share/nginx/html;index index.html;}
###保存退出重启服务
3、测试
分别访问192.168.115.141/192.168.115.142
静态页面

动态页面


五、 配置NGINX的双机热备提高可用性
yum -y install keepalived
vim /etc/keepalived/keepalived.conf
#######################配置####################################
############################################################
! Configuration File for keepalivedglobal_defs {notification_email {acassen@firewall.locfailover@firewall.locsysadmin@firewall.loc}notification_email_from Alexandre.Cassen@firewall.locsmtp_server 192.168.200.1smtp_connect_timeout 30router_id LVS_DEVEL ###从的编号要改动一下 LVS_DEVEL1vrrp_skip_check_adv_addr#vrrp_strictvrrp_garp_interval 0vrrp_gna_interval 0
}vrrp_instance VI_1 {state MASTER ###从改为BACKUPinterface ens33 ###网卡名virtual_router_id 51priority 100 ###从的优先级要比主低advert_int 1authentication {auth_type PASSauth_pass 1111}virtual_ipaddress {192.168.115.200 ###VIP用来访问的虚拟IP}
}
virtual_server 192.168.115.200 8080 { ###vip对应的真是IP 在下面delay_loop 6lb_algo rr persistence_timeout 50protocol TCPreal_server 192.168.115.136 8080 { ###这是Tomcat服务器的IPweight 1HTTP_GET {url { path /testurl/test.jsp}
url { path /testurl2/test.jsp}url { path /testurl3/test.jsp}connect_timeout 3nb_get_retry 3delay_before_retry 3}}real_server 192.168.115.140 8080 { ###这是Tomcat服务器的IPweight 1HTTP_GET {url { path /testurl/test.jsp}url { path /testurl2/test.jsp
}connect_timeout 3nb_get_retry 3delay_before_retry 3}}
}
启动keepalived
systemctl start keepalived.service
看看主调器的IP
现在模拟主机宕机用备调度器访问VIP192.168.115.200
先查看备的IP,keepalived生效
静态页面
动态页面

依旧正常访问,经过简单的测试后我们可以在Tomcat上部署应用了
相关文章:
Ctenos7安装mysql-8.1.0/tomcat-9.0.80/LNMT部署
目录 一、实验拓扑 二、部署mysql 三、部署Tomcat 四、配置NGINX 五、 配置NGINX的双机热备提高可用性 一、实验拓扑 二、部署mysql 官网下载地址https://dev.mysql.com/downloads/mysql/ 1、移除mariadb,安装所需应用 mysql-8.1.0 社区版 安装说明官网下载地址…...
input时间表单默认样式修改(input[type=“date“])
一、时间选择的种类: HTML代码: <input type"date" value"2018-11-15" />选择日期: 选择时间: <input type"time" value"22:52" />在这里插入图片描述 选择星期: <…...
首页搜索框传递参数,并在搜索页面中的搜索框中进行显示,搜索框绑定回车键进行搜索
实现搜索条件和搜索内容固定,以及回车键搜索跳转 1.写出搜索条件和搜索框 <form class"parent"><select id"searchSelect" style"border: 1px solid #325da7;border-right: none;" value"resource"><opt…...
【Vue3+Ts】项目启动准备和配置项目代码规范和css样式的重置
项目启动准备 创建项目( 使用Vite 构建工具创建项目模板)目录介绍插件安装创建别名编译说明项目配置配置icon和标题配置项目别名配置ts.config.json检测vscode的插件是否配置 配置项目代码规范集成editorconfig配置prettier工具库ESLint检测配置 CSS样式…...
Java【手撕双指针】LeetCode 15. “三数之和“, 图文详解思路分析 + 代码
文章目录 前言一、三数之和1, 题目2, 思路分析3, 代码 前言 各位读者好, 我是小陈, 这是我的个人主页, 希望我的专栏能够帮助到你: 📕 JavaSE基础: 基础语法, 类和对象, 封装继承多态, 接口, 综合小练习图书管理系统等 📗 Java数据结构: 顺序表, 链表, 堆…...
Flutter:自定义组件的上下左右弹出层
背景 最近要使用Flutter实现一个下拉菜单,需求就是,在当前组件下点击,其下方弹出一个菜单选项,如下图所示: 实现起来,貌似没什么障碍,在Flutter中本身就提供了弹出层PopupMenuButton组件和show…...
C++处理终端程序中断或意外退出的情况
目录 背景和需求解决方法关于信号类型 背景和需求 Linux环境中,有一个可执行程序,假设该程序的运行生命周期需要调用下面四个函数: int connect(); int start();int end(); int disconnect();如果用户在程序运行期间,手动CTRLC或…...
分布式锁:业务锁和定时任务锁
一:业务锁 在代码业务逻辑加锁,防止不同业务操作相同业务表导致数据错乱,设置锁进行等待。这里锁使用的是ReentrantLock。详细的介绍可以参考: https://blog.csdn.net/jerry11112/article/details/112375167 Slf4j public class…...
路由器的简单概述(详细理解+实例精讲)
系列文章目录 华为数通学习(4) 目录 系列文章目录 华为数通学习(4) 前言 一,网段间通信 二,路由器的基本特点 三,路由信息介绍 四,路由表 五,路由表的来源有哪些…...
Mapper.xml文件解析
Mapper.xml文件解析 简单解读 最近在做一个分布式项目,看到xml文件原先只是上网CV,还是要搞清楚吧! 下面是一个Mybatis的SQL映射文件的配置 <?xml version"1.0" encoding"UTF-8"?> <!DOCTYPE mapper PUBLIC…...
ES 7.6 - JAVA应用基础操作篇
ES 7.6 - JAVA应用基础操作篇 环境准备依赖配置 实体类准备使用说明索引/映射操作创建索引和映射索引和映射相关查询删除索引 文档操作插入数据更新数据删除数据批量操作 文档查询根据ID查询根据字段精准查询根据字段分词查询控制返回字段范围查询组合查询排序分页高亮搜索聚合…...
com.squareup.okhttp3:okhttp 组件安全漏洞及健康度分析
组件简介 维护者square组织许可证类型Apache License 2.0首次发布2016 年 1 月 2 日最新发布时间2023 年 4 月 23 日GitHub Star44403GitHub Fork9197依赖包5,582依赖存储库77,217 com.squareup.okhttp3:okhttp 一个开源的 HTTP 客户端库,可以用于 Android 和 Jav…...
【Unity的HDRP渲染管线下用Steam VR串流结合使用遇到的各种问题_SteamVR 插件和Pico串流助手】
用Steam串流VR 背景:1.项目准备:相关文档和社区资源需要下载的工具2.梳理工程渲染设置和场景烘培正确:几个概念的一些说明:1. SteamVR:2. SteamVR插件:3. OpenVR和OpenXR:4. XRI:5. Pico串流助手:6. "Mock Runtime"选项含义SteamVR插件导入配置好SteamVR Came…...
Unity——音乐、音效
在游戏运行的过程中,音效的播放时机与游戏当前内容密切相关,而且随着场景的变化、剧情的推进,背景音乐也需要适时切换,所以恰当地控制音乐和音效的播放非常重要。音乐和音效的播放、停止、切换和音量变化等,都需要由脚…...
Ubuntu 23.10 将首次推出基于 Flutter 的新 Ubuntu 商店
导读Ubuntu 正在升级其软件商店以提供顺滑的体验! 随着不断发展,Canonical 似乎全力以赴,将基于 Flutter 的元素整合到 Ubuntu 中。 在前段时间 Ubuntu 23.04 发布后,我们见到了基于 Flutter 的安装程序 ,现在&#x…...
linux scatterlist阅读三
sg_copy_buffer 函数定义: /*** sg_copy_buffer - Copy data between a linear buffer and an SG list* sgl: The SG list* nents: Number of SG entries* buf: Where to copy from* buflen: The number of bytes to copy* skip: Number of bytes to sk…...
2023新,centos7安装mysql8.0.25
2023新,centos7安装mysql8.0.25 目录 2023新,centos7安装mysql8.0.251、下载rpm文件2、安装3、配置my.cnf4、启动查看重启服务5、登入mysql并修改密码6、修改可以远程登录 1、下载rpm文件 进入到你想要的文件地址下 wget https://repo.mysql.com//mysq…...
Data Rescue Professional for Mac:专业的数据恢复工具
在数字化时代,我们的生活和工作离不开电脑和存储设备。但是,意外情况时常发生,例如误删除文件、格式化硬盘、病毒攻击等,这些都可能导致重要的数据丢失。面对数据丢失,我们迫切需要一款可靠的数据恢复工具。今天&#…...
新手小白想要做好跨境电商独立站,需要考虑哪些要素?
对于不少中小卖家而言,利用独立站出海已然成为下一个跨境热潮。但是采用独立站模式做出海生意前,卖家需要考虑哪些要素? 产品选择 对于国内的卖家来说,依托于国内强大的供应链优势,只要能把握住消费者心态࿰…...
Consul原理介绍
官方文档:https://www.consul.io/docs Raft动画演示:http://thesecretlivesofdata.com/raft/ 注册中心对比 Consul特点 服务发现、健康检查、Key/Value存储、安全服务通信(TLS证书)、多数据中心 架构 角色 数据中心 数据中心内…...
OpenClaw浏览器自动化:ollama-QwQ-32B驱动的研究资料收集系统
OpenClaw浏览器自动化:ollama-QwQ-32B驱动的研究资料收集系统 1. 为什么需要自动化研究资料收集 作为一名经常需要查阅大量文献的技术写作者,我长期被资料收集的效率问题困扰。传统工作流程中,我需要手动在Google Scholar、arXiv、知乎等平…...
OpenClaw硬件选购指南:百川2-13B-4bits量化版在不同GPU上的表现
OpenClaw硬件选购指南:百川2-13B-4bits量化版在不同GPU上的表现 1. 为什么需要关注硬件配置 去年冬天,当我第一次尝试在本地部署OpenClaw对接百川2-13B模型时,我的旧显卡GTX 1660 Ti直接崩溃了。那次经历让我深刻认识到——选择合适的硬件对…...
DSP28335串口调试:从printf重定向到稳定数据输出的实战解析
1. 为什么需要printf重定向? 在DSP28335开发过程中,printf函数是我们最常用的调试工具之一。想象一下,当你需要实时查看算法运行状态、变量数值或者系统日志时,如果每次都要停下来用调试器查看,那效率得多低啊…...
部署开源的Minecraft服务器智能运维管理系统 Minecraft-Rcon-Manage 自存简易教程
项目地址:Minecraft-Rcon-Manage 前言 笔者最近寻找一款能实现Minecraft服务器RCON远程访问的工具,找到了这个目前正在持续更新、功能丰富的开源项目Minecraft-Rcon-Manage,但实际部署过程中发现作者提供的教程博客无法正常访问,…...
PHP 的异步编程 该怎么选择
一切的起点:synchronized 的舒适区 刚开始写代码时,思维往往停留在"单机"模式。遇到需要控制并发的地方,直觉反应就是加个 synchronized 关键字。 1. 曾经写过的代码 // 简单的库存扣减 public synchronized void deductStock(Stri…...
如何选择可靠的第三方软件测试机构,构建全生命周期的软件安全防线
在数字化转型的浪潮中,软件已成为企业运营的核心。然而,伴随其重要性一同增长的,是日益严峻的安全威胁。传统软件开发流程中,安全测试往往被置于交付前的独立环节,这种“事后补丁”的模式导致安全漏洞发现晚、修复成本…...
通用GUI编程技术——Win32 原生编程实战(十八)——GDI 设备上下文(HDC)完全指南
通用GUI编程技术——Win32 原生编程实战(十八)——GDI 设备上下文(HDC)完全指南 前面一系列文章我们聊了对话框、控件、资源这些内容,我们的窗口已经能够显示各种控件了。但你可能已经发现了一个问题:我们所…...
PLCopen运动控制功能块实战:从单轴控制到多轴联动的5个经典案例解析
PLCopen运动控制功能块实战:从单轴控制到多轴联动的5个经典案例解析 在工业自动化领域,精确的运动控制是实现高效生产的关键。无论是简单的传送带定位,还是复杂的多轴协同作业,PLCopen规范提供的标准化功能块都能为工程师提供强大…...
探索分子世界的三维画笔:PyMOL开源版如何让你成为分子艺术家?
探索分子世界的三维画笔:PyMOL开源版如何让你成为分子艺术家? 【免费下载链接】pymol-open-source Open-source foundation of the user-sponsored PyMOL molecular visualization system. 项目地址: https://gitcode.com/gh_mirrors/py/pymol-open-so…...
Avalonia跨平台开发踩坑记:我的第一个带最小化/关闭按钮的MVVM应用
Avalonia跨平台开发实战:从零构建MVVM窗口控制应用 第一次接触Avalonia时,我被它"一次编写,多平台运行"的承诺所吸引。作为一个长期使用WPF的开发者,跨平台桌面应用开发一直是个痛点。但当我真正开始用Avalonia实现一个…...
