当前位置: 首页 > news >正文

手机网站 教程云建站app

手机网站 教程,云建站app,怎样做站长建网站,买号链接部署tomcat单机多实例 在Tomcat中部署单机多实例是一种常见的做法#xff0c;它允许您在同一台服务器上运行多个独立的Tomcat实例#xff0c;每个实例都有自己的配置、日志和应用程序。 安装jdk环境 首先配置java环境 [roottomcat ~]# tar xf jdk-8u211-linux-x64.tar.gz…部署tomcat单机多实例 在Tomcat中部署单机多实例是一种常见的做法它允许您在同一台服务器上运行多个独立的Tomcat实例每个实例都有自己的配置、日志和应用程序。 安装jdk环境 首先配置java环境 [roottomcat ~]# tar xf jdk-8u211-linux-x64.tar.gz -C /usr/local改名设置环境变量 [roottomcat ~]# cd /usr/local [roottomcat local]# mv jdk1.8.0_211/ java [roottomcat local]# vim /etc/profile.d/java.shJAVA_HOME/usr/local/java PATH$PATH:$JAVA_HOME/bin重载环境变量 [roottomcat local]# source /etc/profile.d/java.sh 查看jdk是否安装成功 [roottomcat local]# java -version java version 1.8.0_211 Java(TM) SE Runtime Environment (build 1.8.0_211-b12) Java HotSpot(TM) 64-Bit Server VM (build 25.211-b12, mixed mode) 安装tomcat 解压 [roottomcat ~]# tar xf apache-tomcat-8.5.92.tar.gz -C /usr/local进入 [roottomcat ~]# cd /usr/local 改名 [roottomcat local]# mv apache-tomcat-8.5.92 tomcat复制 [roottomcat local]# cp -r tomcat tomcat-2 [roottomcat local]# cp -r tomcat tomcat-3 配置文件 tomcat 修改配置文件 tomcat [roottomcat local]# vim ./tomcat/conf/server.xml tomcat-2 [roottomcat local]# vim ./tomcat-2/conf/server.xml tomcat-3 [roottomcat local]# vim ./tomcat-3/conf/server.xml 启动tomcat [roottomcat local]# ./tomcat/bin/startup.sh Using CATALINA_BASE: /usr/local/tomcat Using CATALINA_HOME: /usr/local/tomcat Using CATALINA_TMPDIR: /usr/local/tomcat/temp Using JRE_HOME: /usr/local/java Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar Using CATALINA_OPTS: Tomcat started.[roottomcat local]# ./tomcat-2/bin/startup.sh Using CATALINA_BASE: /usr/local/tomcat-2 Using CATALINA_HOME: /usr/local/tomcat-2 Using CATALINA_TMPDIR: /usr/local/tomcat-2/temp Using JRE_HOME: /usr/local/java Using CLASSPATH: /usr/local/tomcat-2/bin/bootstrap.jar:/usr/local/tomcat-2/bin/tomcat-juli.jar Using CATALINA_OPTS: Tomcat started.[roottomcat local]# ./tomcat-3/bin/startup.sh Using CATALINA_BASE: /usr/local/tomcat-3 Using CATALINA_HOME: /usr/local/tomcat-3 Using CATALINA_TMPDIR: /usr/local/tomcat-3/temp Using JRE_HOME: /usr/local/java Using CLASSPATH: /usr/local/tomcat-3/bin/bootstrap.jar:/usr/local/tomcat-3/bin/tomcat-juli.jar Using CATALINA_OPTS: Tomcat started.查看端口 [roottomcat local]# ss -nplt State Recv-Q Send-Q Local Address:Port Peer Address:Port LISTEN 0 128 *:22 *:* users:((sshd,pid920,fd3)) LISTEN 0 100 127.0.0.1:25 *:* users:((master,pid1148,fd13)) LISTEN 0 1 [::ffff:127.0.0.1]:8005 [::]:* users:((java,pid1902,fd61)) LISTEN 0 1 [::ffff:127.0.0.1]:8006 [::]:* users:((java,pid2043,fd61)) LISTEN 0 1 [::ffff:127.0.0.1]:8007 [::]:* users:((java,pid2095,fd61)) LISTEN 0 80 [::]:3306 [::]:* users:((mysqld,pid1004,fd29)) LISTEN 0 100 [::]:8080 [::]:* users:((java,pid1902,fd52)) LISTEN 0 100 [::]:8081 [::]:* users:((java,pid2043,fd52)) LISTEN 0 100 [::]:8082 [::]:* users:((java,pid2095,fd52)) LISTEN 0 128 访问实例 keepalivedmysql互为主从的高可用 IP110.36.192.223 安装msyql IP210.36.192.222 安装mysql 首先做IP1为主IP2为从 IP1的操作 IP1的操作 [rootIP1 ~]# mkdir /var/log/mysql [rootIP1 ~]# chown -R mysql.mysql /var/log/mysqlvim /etc/my.cnf ### log-bin/var/log/mysql/mysql-bin #启用二进制文件日志记录 server-id1 ### 重启mysql # systemctl restart mysqld登录数据库 创建主从登录的用户 mysql grant replication slave on *.* to zc% identified by Qianfeng123;刷新 mysql flush privileges; Query OK, 0 rows affected (0.00 sec)查看二进制日志 mysql show master status; ------------------------------------------------------------------------------- | File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set | ------------------------------------------------------------------------------- | mysql-bin.000001 | 587 | | | | ------------------------------------------------------------------------------- 1 row in set (0.00 sec) IP2的操作 [rootIP2 ~]# mkdir /var/log/mysql [rootIP2 ~]# chown -R mysql.mysql /var/log/mysqlvim /etc/my.cnf ### server-id2重启msyql # systemctl restart mysqld 登录数据库 mysql CHANGE MASTER TO- MASTER_HOST10.36.192.223,- MASTER_USERzc,- MASTER_PASSWORDQianfeng123,- MASTER_PORT3306,- MASTER_LOG_FILEmysql-bin.000001,- MASTER_LOG_POS587,- MASTER_CONNECT_RETRY10; Query OK, 0 rows affected, 2 warnings (0.01 sec)mysql flush privileges; Query OK, 0 rows affected (0.00 sec)启动主从查看主从状态 mysql start slave; Query OK, 0 rows affected (0.00 sec)mysql show slave status\G; *************************** 1. row ***************************Slave_IO_State: Waiting for master to send eventMaster_Host: 10.36.192.223Master_User: zcMaster_Port: 3306Connect_Retry: 10Master_Log_File: mysql-bin.000001Read_Master_Log_Pos: 587Relay_Log_File: slave-relay-bin.000002Relay_Log_Pos: 320Relay_Master_Log_File: mysql-bin.000001Slave_IO_Running: YesSlave_SQL_Running: Yes做IP2为主IP1为从 IP2的操作 vim /etc/my.cnf ### 添加第二行 [mysqld] log-bin/var/log/mysql/mysql-bin #启用二进制文件日志记录重启mysql # systemctl restart mysqld登录数据库创建主从登录的用户 mysql grant replication slave on *.* to zxd% identified by Qianfeng123; Query OK, 0 rows affected, 1 warning (0.00 sec)mysql flush privileges; Query OK, 0 rows affected (0.00 sec)查看二进制日志坐标 mysql show master status; ------------------------------------------------------------------------------- | File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set | ------------------------------------------------------------------------------- | mysql-bin.000001 | 154 | | | | ------------------------------------------------------------------------------- 1 row in set (0.00 sec) IP1的操作 mysql CHANGE MASTER TO- MASTER_HOST10.36.192.222,- MASTER_USERzxd,- MASTER_PASSWORDQianfeng123,- MASTER_PORT3306,- MASTER_LOG_FILEmysql-bin.000001,- MASTER_LOG_POS154,- MASTER_CONNECT_RETRY10; Query OK, 0 rows affected, 2 warnings (0.01 sec)刷新 mysql flush privileges; Query OK, 0 rows affected (0.00 sec)启动主从 mysql start slave; Query OK, 0 rows affected (0.00 sec)查看主从状态 mysql show slave status\G; *************************** 1. row ***************************Slave_IO_State: Waiting for master to send eventMaster_Host: 10.36.192.222Master_User: zxdMaster_Port: 3306Connect_Retry: 10Master_Log_File: mysql-bin.000001Read_Master_Log_Pos: 154Relay_Log_File: master-relay-bin.000002Relay_Log_Pos: 320Relay_Master_Log_File: mysql-bin.000001Slave_IO_Running: YesSlave_SQL_Running: Yes互为主从成功配置 在IP1的数据库创库IP2也可以看到 IP1 mysql create database zhangxiaodong; Query OK, 1 row affected (0.00 sec)mysql show databases; -------------------- | Database | -------------------- | information_schema | | mysql | | performance_schema | | sys | | zhangxiaodong | -------------------- 5 rows in set (0.00 sec)IP2 mysql show databases; -------------------- | Database | -------------------- | information_schema | | mysql | | performance_schema | | sys | | zhangxiaodong | -------------------- 5 rows in set (0.00 sec)安装keepalived IP1 IP2都操作 # yum -y install keepalived编写当某一台的MySQL停掉以后就自动停掉那台机器的keepalived服务的脚本 cd /etc/keepalived [rootIP1 keepalived]# cat keepalived_check_mysql.sh #!/bin/bash /usr/bin/mysql -uroot -pQianfeng123 -e show status /dev/null if [ $? -ne 0 ] ;then # service keepalived stopsystemctl stop keepalived ficd /etc/keepalived [rootIP2 keepalived]# cat keepalived_check_mysql.sh #!/bin/bash /usr/bin/mysql -uroot -pQianfeng123 -e show status /dev/null if [ $? -ne 0 ] ;then # service keepalived stopsystemctl stop keepalived fi给脚本执行权限 chmod ax keepalived_check_mysql.sh 在keepalived的配置文件中引用脚本 IP1 [rootIP1 keepalived]# cat keepalived.conf ! Configuration File for keepalivedglobal_defs {router_id directory1 } vrrp_script check_run {script /etc/keepalived/keepalived_check_mysql.shinterval 5 }vrrp_instance VI_1 {state MASTERinterface ens33virtual_router_id 66priority 100advert_int 1authentication {auth_type PASSauth_pass 1111}virtual_ipaddress {10.36.192.233/24}track_script {check_run} } IP2 [rootIP2 keepalived]# cat keepalived.conf ! Configuration File for keepalivedglobal_defs {router_id directory2 } vrrp_script check_run {script /etc/keepalived/keepalived_check_mysql.shinterval 5 }vrrp_instance VI_1 {state BACKUPnopreemptinterface ens33virtual_router_id 66priority 50advert_int 1authentication {auth_type PASSauth_pass 1111}virtual_ipaddress {10.36.192.233/24}track_script {#check_runcheck_run} }启动keepqlived #systemctl start keepalived[rootIP1 keepalived]# ip a 1: lo: LOOPBACK,UP,LOWER_UP mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00inet 127.0.0.1/8 scope host lovalid_lft forever preferred_lft foreverinet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: ens33: BROADCAST,MULTICAST,UP,LOWER_UP mtu 1500 qdisc pfifo_fast state UP group default qlen 1000link/ether 00:0c:29:99:b8:b4 brd ff:ff:ff:ff:ff:ffinet 10.36.192.223/24 brd 10.36.192.255 scope global noprefixroute dynamic ens33valid_lft 255232sec preferred_lft 255232secinet 10.36.192.233/24 scope global secondary ens33valid_lft forever preferred_lft forever此时的虚拟IP为10.36.192.233在IP1上但由于互为主从因此查到数据相同 在那俩台数据库都创建可以允许远程登录数据库的用户 IP1 mysql grant all on *.* to malong% identified by Qianfeng123!; Query OK, 0 rows affected, 1 warning (0.00 sec)IP2 mysql grant all on *.* to malong% identified by Qianfeng123!; Query OK, 0 rows affected, 1 warning (0.00 sec)准备另一台机器做测试实验 [rootmysql ~]# mysql -umalong -pQianfeng123! -h10.36.192.233 mysql: [Warning] Using a password on the command line interface can be insecure. Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 15 Server version: 5.7.42-log MySQL Community Server (GPL)Copyright (c) 2000, 2023, Oracle and/or its affiliates.Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners.Type help; or \h for help. Type \c to clear the current input statement.mysql show databases; -------------------- | Database | -------------------- | information_schema | | mysql | | performance_schema | | sys | | zhangxiaodong | -------------------- 5 rows in set (0.00 sec)经过测试发现当IP1的数据库停掉以后keepalived也会停掉此时虚拟IP会飘向IP2的机器上但是由于俩台数据库是互为主从因此测试机器登上去查看到的数据是相同的.这样可以保证数据库的高可用. MySQLkeepalived高可用 实验机器IPmaster干净机器10.36.192.223        slave 干净机器10.36.192.222测试已有MySQL10.36.192.199 俩台服务器都安装mysqlkeepalived并修改mysql初始密码 [rootmaster ~]# yum install -y mysql-server keepalived[rootmaster ~]# systemctl restart mysqld[rootmaster ~]# grep password /var/log/mysqld.log2023-11-02T07:46:28.937422Z 1 [Note] A temporary password is generated for rootlocalhost: fB#sVi1UyRW;[rootmaster ~]# mysqladmin -uroot -pfB#sVi1UyRW; password Qianfeng123 [rootslave ~]# yum install -y mysql-server keepalived[rootslave ~]# systemctl restart mysqld[rootslave ~]# grep password /var/log/mysqld.log2023-11-02T07:46:28.937422Z 1 [Note] A temporary password is generated for rootlocalhost: ?HuogtQ9tn;[rootslave ~]# mysqladmin -uroot -p?HuogtQ9tn password Qianfeng123 登录俩台数据库创建允许远程登录的用户 [rootmaster ~]# mysql -uroot -pQianfeng123 mysql: [Warning] Using a password on the command line interface can be insecure. Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 5 ...mysql grant all on *.* to malong% identified by Qianfeng123!; Query OK, 0 rows affected, 1 warning (0.00 sec)mysql \q Bye[rootslave ~]# mysql -uroot -pQianfeng123 mysql: [Warning] Using a password on the command line interface can be insecure. Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 5 ...mysql grant all on *.* to malong% identified by Qianfeng123!; Query OK, 0 rows affected, 1 warning (0.00 sec)mysql \q Bye 在master的数据库创建一个库 create database dbtest master配置keepalived [rootmaster ~]# vim /etc/keepalived/keepalived.conf ! Configuration File for keepalivedglobal_defs {router_id directory1 } vrrp_instance VI_1 {state MASTERinterface ens33virtual_router_id 66priority 100advert_int 1authentication {auth_type PASSauth_pass 1111}virtual_ipaddress {10.36.192.233/24 ###虚拟的IP} } slave配置keepalived [rootslave ~]# vim /etc/keepalived/keepalived.conf ! Configuration File for keepalived global_defs {router_id directory2 } vrrp_instance VI_1 {state BACKUPnopreemptinterface ens33virtual_router_id 66priority 50advert_int 1authentication {auth_type PASSauth_pass 1111}virtual_ipaddress {10.36.192.233/24} } 配置数据库检查脚本 [rootmaster keepalived]# cat keepalived_check_mysql.sh #!/bin/bash /usr/bin/mysql -uroot -pQianfeng123 -e show status /dev/null if [ $? -ne 0 ] ;then # service keepalived stopsystemctl stop keepalived fi[rootslave keepalived]# cat keepalived_check_mysql.sh #!/bin/bash /usr/bin/mysql -uroot -pQianfeng123 -e show status /dev/null if [ $? -ne 0 ] ;then # service keepalived stopsystemctl stop keepalived fi记得给脚本执行权限 chmod ax keepalived_check_mysql.sh 在配置文件中引用脚本 [rootmaster keepalived]# cat keepalived.conf ! Configuration File for keepalivedglobal_defs {router_id directory1 } vrrp_script check_run {script /etc/keepalived/keepalived_check_mysql.shinterval 5 }vrrp_instance VI_1 {state MASTERinterface ens33virtual_router_id 66priority 100advert_int 1authentication {auth_type PASSauth_pass 1111}virtual_ipaddress {10.36.192.233/24}track_script {check_run} }[rootslave keepalived]# cat keepalived.conf ! Configuration File for keepalivedglobal_defs {router_id directory2 } vrrp_script check_run {script /etc/keepalived/keepalived_check_mysql.shinterval 5 }vrrp_instance VI_1 {state BACKUPnopreemptinterface ens33virtual_router_id 66priority 50advert_int 1authentication {auth_type PASSauth_pass 1111}virtual_ipaddress {10.36.192.233/24}track_script {#check_runcheck_run} }启动keepalived systemctl start keepalived 在master端查看到虚拟IP [rootmaster ~]# ip a 1: lo: LOOPBACK,UP,LOWER_UP mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00inet 127.0.0.1/8 scope host lovalid_lft forever preferred_lft foreverinet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: ens33: BROADCAST,MULTICAST,UP,LOWER_UP mtu 1500 qdisc pfifo_fast state UP group default qlen 1000link/ether 00:0c:29:99:b8:b4 brd ff:ff:ff:ff:ff:ffinet 10.36.192.223/24 brd 10.36.192.255 scope global noprefixroute dynamic ens33valid_lft 250228sec preferred_lft 250228secinet 10.36.192.233/24 scope global secondary ens33valid_lft forever preferred_lft forever在测试机器测试 [rootmysql ~]# mysql -umalong -pQianfeng123! -h10.36.192.233 mysql: [Warning] Using a password on the command line interface can be insecure. Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 635 Server version: 5.7.42 MySQL Community Server (GPL)Copyright (c) 2000, 2023, Oracle and/or its affiliates.Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners.Type help; or \h for help. Type \c to clear the current input statement.mysql show databases; -------------------- | Database | -------------------- | information_schema | | dbtest | | mysql | | performance_schema | | sys | -------------------- 5 rows in set (0.00 sec)此时查看的是master端的数据库 停掉master端的msyql [rootmaster ~]# systemctl stop mysqld[rootmaster ~]# systemctl status keepalived ● keepalived.service - LVS and VRRP High Availability MonitorLoaded: loaded (/usr/lib/systemd/system/keepalived.service; disabled; vendor preset: disabled)Active: inactive (dead)此时的虚拟ip在slave端 [rootslave ~]# ip a 1: lo: LOOPBACK,UP,LOWER_UP mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00inet 127.0.0.1/8 scope host lovalid_lft forever preferred_lft foreverinet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: ens33: BROADCAST,MULTICAST,UP,LOWER_UP mtu 1500 qdisc pfifo_fast state UP group default qlen 1000link/ether 00:0c:29:9f:83:60 brd ff:ff:ff:ff:ff:ffinet 10.36.192.222/24 brd 10.36.192.255 scope global noprefixroute dynamic ens33valid_lft 258272sec preferred_lft 258272secinet 10.36.192.233/24 scope global secondary ens33valid_lft forever preferred_lft forever 使用测试机子登录远程MySQL [rootmysql ~]# mysql -umalong -pQianfeng123! -h10.36.192.233 -P 3306 mysql: [Warning] Using a password on the command line interface can be insecure. Welcome to the MySQL monitor. Commands end with ; or \g. ... Type help; or \h for help. Type \c to clear the current input statement.mysql show databases; -------------------- | Database | -------------------- | information_schema | | mysql | | performance_schema | | sys | -------------------- 4 rows in set (0.01 sec)此时查看到的是slave机器的数据库 此时先启动master端的数据库与keepalived顺序不能乱 [rootmaster ~]# systemctl start mysqld [rootmaster ~]# systemctl start keepalived查看此时的虚拟IP 在master端上 [rootmaster ~]# ip a 1: lo: LOOPBACK,UP,LOWER_UP mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00inet 127.0.0.1/8 scope host lovalid_lft forever preferred_lft foreverinet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: ens33: BROADCAST,MULTICAST,UP,LOWER_UP mtu 1500 qdisc pfifo_fast state UP group default qlen 1000link/ether 00:0c:29:99:b8:b4 brd ff:ff:ff:ff:ff:ffinet 10.36.192.223/24 brd 10.36.192.255 scope global noprefixroute dynamic ens33valid_lft 257980sec preferred_lft 257980secinet 10.36.192.233/24 scope global secondary ens33valid_lft forever preferred_lft forever测试机查看到数据库此时是master端的数据库 [rootmysql ~]# mysql -umalong -pQianfeng123! -h10.36.192.233 -P 3306 mysql: [Warning] Using a password on the command line interface can be insecure. Welcome to the MySQL monitor. Commands end with ; or \g. ... mysql show databases; -------------------- | Database | -------------------- | information_schema | | dbtest | | mysql | | performance_schema | | sys | -------------------- 5 rows in set (0.01 sec)也就是当masterslave端的MySQL与keepalived同时开启时虚拟IP会在master端此时测试机远程登录的MySQL也是master端的 当master端的MySQL与keepalived停掉后虚拟IP会飘向slave端此时测试机远程登录的MySQL是slave端的。
http://www.pierceye.com/news/43744/

相关文章:

  • 企业网站建设品牌临时域名用于网站调试
  • 网站开发项目答辩主持词域名网站负责人的责任
  • 四年级写一小段新闻seo兼职工资一般多少
  • 长沙做个网站多少钱娄底市建设网站
  • 电梯企业网站制作中山门户网站建设
  • 有没有什么排版的网站郑州安卓app开发
  • 企业网站模板建站费用电子商务网站建设风格
  • 网站首页html制作代码互联网技术论文
  • 自建网站工具网站的js效果代码
  • 深圳公司做网站百度百度一下你就知道主页
  • 贵州icp网站备案中心WordPress的黑色
  • wordpress 自己的html青岛百度seo排名
  • 制作网站用什么软件模板网页文档的默认扩展名为
  • 淘宝优惠券返利网站怎么做做好一个网站后
  • 要建设一个网站需要准备些什么app 门户网站
  • 卖网站链接广州网络引流公司
  • 建筑案例的网站有哪些方面wordpress图片更换
  • 遵义市营商环境建设局网站卸载ghost版wordpress
  • 响应式企业网站 下载互动网站欣赏
  • 有什么网站可以做外贸出口信息哪项不属于网站架构
  • 佛山伦教网站设计网站访问量咋做
  • 服务网点网站建设wordpress 准迁
  • 做网站编写代码著名的深圳网站建设
  • 网站建没有前景公众号编辑 wordpress
  • 卡姿兰网站建设策划书2018做分享网站
  • 建站网址不安全wordpress百度百科
  • 百度开网站需要多少钱百度认证有什么用
  • 丹东电信网站备案长沙信息网
  • 邯郸网站建设报价网站建设开发教程视频
  • 温州网站定制哪家好爱企查企业信息查询