CronHub 的安装部署

本文涉及的产品
云数据库 Redis 版,社区版 2GB
推荐场景:
搭建游戏排行榜
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介:

一、基础环境

IP10.29.181.32

# mkdir -p /opt/software/tools

# ls /opt/software/tools

apache-ant-1.9.9-bin.tar.bz2   jdk-8u51-linux-x64.tar.gz

apache-tomcat-8.0.24.tar.gz   master.zip

 

二、安装MYSQL

(1)可以使用yum进行安装

# yum -y install mysql-server

# yum -y install php-mysql

(2)可以使用自己编写的源码安装脚本进行安装

# cd /opt/software/tools

# unzip mysql-install.zip

# cd mysql-install

# vim mysql_install.sh

wKiom1jrTK6zhXIOAAAiAnm2EAw794.png-wh_50

更改package_dir为你存放脚本的正确路径

# sh mysql_install.sh

# . /etc/profile

# vim /etc/my.cnf

更改:

innodb_buffer_pool_size = 2G

 

# /etc/init.d/mysqld start启动

# chkconfig mysqld on设置开机自启

# mysqladmin -u root password '1qaz@WSX?'设置登录mysql的用户密码

# mysql -uroot -p登录验证

> select user,host,password from mysql.user;

> delete from mysql.user where user='';删除匿名用户

> grant all privileges on cronhub_manage_system.* to 'cronhub'@'%' identified by '1qaz@WSX?';授权用户可以连接cronhub使用的库

 

建库建表

# cd /opt/software/tools

# unzip master.zip

# mv CronHub-master/ /usr/local/

# cd /usr/local/CronHub-master/WebRoot/download

# mysql -uroot -p < cronhub_manage_system.sql

# mysql -uroot -p

> show databases;--> cronhub_manage_system

> use cronhub_manage_system

> show tables;查看库中生成的表,并清空这些表

 

 

三、安装JDK

# cd /opt/software/tools/

# tar zxvf jdk-8u51-linux-x64.tar.gz

# mkdir /usr/local/java

# mv jdk1.8.0_51/ /usr/local/java/

# vim /etc/profile

添加如下内容:

#set JDK enviroment

JAVA_HOME=/usr/local/java/jdk1.8.0_51

JAVA_BIN=/usr/local/java/jdk1.8.0_51/bin

PATH=$PATH:$JAVA_BIN

CLASSPATH=$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

export JAVA_HOME JAVA_BIN PATH CLASSPATH

 

# . /etc/profile

# java -version验证

java version "1.8.0_51"

 

四、修改JAVA WEB中央服务器配置文件,打包

(1)安装ant

# cd /opt/software/tools/

# tar xvf apache-ant-1.9.9-bin.tar.bz2 -C /usr/local/

# vim /etc/profile

添加如下内容:

#set Ant enviroment

export ANT_HOME=/usr/local/apache-ant-1.9.9

export PATH=$PATH:$ANT_HOME/bin

# .  /etc/profile

(2)修改配置文件

# cd /usr/local/CronHub-master/ant

# vim 192.168.101.9.properties

包含application.propertieslog4j.properties两个文件的内容。需要更改为自己的数据库,安装路径等信息。内容如下:

 

db.jdbcurl=jdbc\:mysql\://10.29.181.32\:3306/cronhub_manage_system?useUnicode\=true&characterEncoding\=UTF-8

db.username=cronhub

db.password=1qaz@WSX?

undoReportHttpUrl=http\://10.29.181.32\:8085/record_undo/report.action

serverRootUrl=http\://10.29.181.32\:8085

alertFromUserMail=monitor@66rpg.com

alertFromPassword=YjImayomdhk55nQq

alertHostMail=smtp.exmail.qq.com

alertDestMail={"3004947672@qq.com"\:""}

 

########################log4j

log4j.rootLogger=info, stdout

log4j.appender.stdout=org.apache.log4j.ConsoleAppender

log4j.appender.stdout.layout=org.apache.log4j.PatternLayout

log4j.appender.stdout.layout.ConversionPattern=[%d{yyyy-MM-dd HH\:mm\:ss}] %p\t| %m%n

 

log4j.logger.Validate=info, validate

log4j.appender.validate=org.apache.log4j.DailyRollingFileAppender  

log4j.appender.validate.File=/usr/local/dispatch_system_tomcat/logs/dispatch_sys/service.log

log4j.appender.validate.DatePattern='.'yyyy-MM-dd'.bak'

log4j.appender.validate.layout=org.apache.log4j.PatternLayout

log4j.appender.validate.layout.ConversionPattern=[%d{yyyy-MM-dd HH\:mm\:ss}] %p\t| %m%n

 

log4j.logger.Error=error, err

log4j.appender.err=org.apache.log4j.DailyRollingFileAppender  

log4j.appender.err.File=/usr/local/dispatch_system_tomcat/logs/dispatch_sys/error.log

log4j.appender.err.DatePattern='.'yyyy-MM-dd'.bak'

log4j.appender.err.layout=org.apache.log4j.PatternLayout

log4j.appender.err.layout.ConversionPattern=[%d{yyyy-MM-dd HH\:mm\:ss}] %p\t| %m%n

 

log4j.logger.DaemonError=error, daemonError

log4j.appender.daemonError=org.apache.log4j.DailyRollingFileAppender  

log4j.appender.daemonError.File=/usr/local/dispatch_system_tomcat/logs/dispatch_sys/daemonError.log

log4j.appender.daemonError.DatePattern='.'yyyy-MM-dd'.bak'

log4j.appender.daemonError.layout=org.apache.log4j.PatternLayout

log4j.appender.daemonError.layout.ConversionPattern=[%d{yyyy-MM-dd HH\:mm\:ss}] %p\t| %m%n

 

log4j.logger.RecordUndoLogger=info, recordUndoLogger

log4j.appender.recordUndoLogger=org.apache.log4j.DailyRollingFileAppender  

log4j.appender.recordUndoLogger.File=/usr/local/dispatch_system_tomcat/logs/dispatch_sys/recordUndoLogger.log

log4j.appender.recordUndoLogger.DatePattern='.'yyyy-MM-dd'.bak'

log4j.appender.recordUndoLogger.layout=org.apache.log4j.PatternLayout

log4j.appender.recordUndoLogger.layout.ConversionPattern=[%d{yyyy-MM-dd HH\:mm\:ss}] %p\t| %m%n

 

log4j.logger.RecordDoneLogger=info, recordDoneLogger

log4j.appender.recordDoneLogger=org.apache.log4j.DailyRollingFileAppender  

log4j.appender.recordDoneLogger.File=/usr/local/dispatch_system_tomcat/logs/dispatch_sys/recordDoneLogger.log

log4j.appender.recordDoneLogger.DatePattern='.'yyyy-MM-dd'.bak'

log4j.appender.recordDoneLogger.layout=org.apache.log4j.PatternLayout

log4j.appender.recordDoneLogger.layout.ConversionPattern=[%d{yyyy-MM-dd HH\:mm\:ss}] %p\t| %m%n

 

log4j.logger.RecordDoneError=info, recordDoneError

log4j.appender.recordDoneError=org.apache.log4j.DailyRollingFileAppender  

log4j.appender.recordDoneError.File=/usr/local/dispatch_system_tomcat/logs/dispatch_sys/recordDoneError.log

log4j.appender.recordDoneError.DatePattern='.'yyyy-MM-dd'.bak'

log4j.appender.recordDoneError.layout=org.apache.log4j.PatternLayout

 

 

(3)运行build.xml进行打包

# cd /usr/local/CronHub-master/ant

# ant -f build.xml

# ls /usr/local/CronHub-master/war/CronhubManageSystem_101.9.war

 

五、部署war包到tomcat,启动

(1)安装tomcat

# cd /opt/software/tools/

# tar zxvf apache-tomcat-8.0.24.tar.gz -C /usr/local/

# cd /usr/local/

# mv apache-tomcat-8.0.24/ dispatch_system_tomcat

 

(2)部署tomcat及启动

一定将之前打好的war包放入webapp/ROOT/

# rm -rf /usr/local/dispatch_system_tomcat/webapps/ROOT/*

# cp /usr/local/CronHub-master/war/CronhubManageSystem_101.9.war \

 /usr/local/dispatch_system_tomcat/webapps/ROOT/

# cd /usr/local/dispatch_system_tomcat/webapps/ROOT/

# jar -xvf CronhubManageSystem_101.9.war解压war

# vim /usr/local/dispatch_system_tomcat/conf/server.xml

更改启动端口80808085

<Connector port="8085" protocol="HTTP/1.1"

# cd /usr/local/dispatch_system_tomcat/bin/

# sh startup.sh启动tomcat

# ps -ef | grep tomcat检测是否启动

# lsof -i :8085

 

(3)访问测试

在浏览器中输入CronHub-01机器的外网ip及应用端口

http://101.37.21.22:8085/

wKiom1jrTQHQumGlAACP1qix1fA326.png-wh_50 

(4)更改页面logo

# cd /usr/local/dispatch_system_tomcat/webapps/ROOT/

# vim index.html

更改如下内容:

......

#top-logo {

        height: 50px;

        line-height: 50px;

        float: left;

        text-align: center;

        width: 279px; /*修改为logo图片width*/

        background: url() no-repeat; /*在这里添加logo图片路径*/

}

<td id="td-top">

                        <div id="top-logo"><big><font color=blue>橙光游戏 * CronHub时间调度系统</font></big></div>

<div id="top-right" style="margin-right:20em;display:none">

                                <div><big><font color=green>运维部</font></big></div>

                         </div>

......

 

在浏览器中输入CronHub-01机器的外网ip及应用端口

http://101.37.21.22:8085/

 

wKioL1jrTQ2TWmkLAACZq0gFxYE293.png-wh_50 

 

六、安装daemon

拷贝daemon端安装脚本/usr/local/CronHub-master/WebRoot/download下的

install_start.sh。默认情况下这个脚本只支持安装centos客户端,经过更改可

以支持ubuntu客户端

 

# cp install_start.sh /home/scripts/拷贝到/home/scripts/

对于除本机外的客户端(10.26.200.227)可以使用如下命令进行:

ansible分发cronhub客户端程序

# ansible 10.26.200.227 -m copy -a 'src=/home/scripts/install_start.sh dest=/home/scripts/install_start.sh mode=644 owner=root'

# ansible 10.26.200.227 -m shell -a "bash /home/scripts/install_start.sh -d /usr/local/daemon -s 2017 -i 10.29.181.32 -p 8085"

 

注释:

# bash /home/scripts/install_start.sh -d /usr/local/daemon -s 2017 -i 10.29.181.32 -p 8085

-d 安装daemon客户端的路径

-s 本地启动的端口,用于与服务的通信

-i 服务端的ip地址

-p 服务端的端口,用于下载安装包

 

# ps -ef | grep jsvc

执行完脚本就会启动,启动后在控制台上查看进程会发现2jsvc进程

安装daemon脚本会对centos加入chkconfiglinux系统启动项;对ununtu

会在/etc/rc.local中添加开机启动项。

七、配置、添加计划任务

(1)增加daemon执行器

wKiom1jrTRvyg7xuAAEw7stu6bY793.png-wh_50 

 

查看状态

wKioL1jrTSex7onXAACWSaSLuiQ099.png-wh_50 

 

(2)添加新任务

wKioL1jrTTOSMOSrAACnmNRXHdA527.png-wh_50 

添加任务的具体内容:

以下是添加 每天凌晨2点重启SVN程序的计划任务

wKiom1jrTT_jjtjHAADn1mC1mVk117.png-wh_50 

检测添加的计划任务

wKiom1jrTUrxgrIAAACzu8jxSLM421.png-wh_50 

(3)执行结果查询

wKioL1jrTVbDzBwSAAEaEQAckf0445.png-wh_50 

八、批量添加

(1)批量添加daemon执行器

# cd /home/scripts/CronHub

# vim info.txt

填入信息如下:

10.27.13.71feed-redis-slave-02

10.26.234.157passport-redis-slave

10.47.134.28rc-rcc-redis-slave-01

# python insert_info.py执行python脚本进行批量添加

(2)批量添加调度任务

# cd /home/scripts/CronHub

# vim list.conf

填入信息如下:

passport-redis-slave redis

chengguang-web-03 web

# python insert_cron.py执行python脚本进行批量添加



本文转自 周新宇1991 51CTO博客,原文链接:http://blog.51cto.com/zhouxinyu1991/1914607,如需转载请自行联系原作者


相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore &nbsp; &nbsp; ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库&nbsp;ECS 实例和一台目标数据库&nbsp;RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&amp;RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
相关文章
|
6月前
|
Kubernetes 网络协议 网络安全
K8s安装部署--超级详细(无坑,v1.23)
K8s安装部署--超级详细(无坑,v1.23 yum localinstall -y kernel-ml-6.4.10-1.el7.elrepo.x86_64.rpm
342 3
|
9月前
|
JavaScript Ubuntu jenkins
Jenkins详细安装配置部署
Jenkins是一款流行的开源持续集成/持续交付(CI/CD)工具,可以实现自动化构建、测试和部署软件。下面是Jenkins的详细安装、配置和部署过程。
849 0
|
5月前
|
弹性计算 关系型数据库 应用服务中间件
Wordpress 安装部署
简单几个步骤即可使用 ECS、RDS 进行 wordpress 安装,完成内容站点的部署。
111 0
|
机器学习/深度学习 Web App开发 文字识别
OCRmypdf安装部署深入详解
1、OCRmypdf简介 OCRmyPDF使用最好的可用开源OCR引擎Tesseract执行OCR。 OCRmyPDF是一个Python 3包,将OCR图层处理结果添加到PDF。 OCRmyPDF是功能最丰富且经过彻底测试的OCR PDF转换工具。 2、OCRmypdf支持的系统 1) macOS 2) Ubuntu 16.04 LTS 3)ArchLinux 4)Windows 此外,OCRmypdf提供了docker镜像,可以直接下载镜像、使用。
824 0
|
并行计算 数据可视化 Linux
FastDeploy 安装部署
FastDeploy 安装部署
1577 0
FastDeploy 安装部署
|
SQL 分布式计算 关系型数据库
安装部署 | 学习笔记
快速学习 安装部署
110 0
安装部署 | 学习笔记
|
Linux Docker 容器
安装部署应用
安装部署应用
73 0
|
域名解析 JSON 网络协议
freeipa安装部署
freeipa是linux的一个开源的安全解决方案,它提供账户管理和集中认证,类似于微软的AD(active directory)。
3499 0
|
关系型数据库 数据库 PostgreSQL
pgAgent安装部署
pgAgent是PostgreSQL的一个job引擎,可以执行数据库job任务。本文简述其安装步骤 一 安装cmake #检查是否安装 [root@bogon ~]# cmake --version cmake version 2.
2532 0
|
jenkins Java 测试技术
jenkins安装部署实战
Jenkins安装部署 1、首先下载Jenkins.war包,官网:https://jenkins.io/download/,这块用的比较老,为了和配管的版本一致。 2、部署好Jdk和Tomcat 3、去apache官网下载maven软件包,部署好maven 4、svn环境,可以参考之前的博客配置web访问svn仓库篇。
970 0