Centos 7部署大众点评CAT(一)——单服务器部署
前一篇拙作上传的时间已经过去2个月了,中间并不是闲着。。。主要是忙着学习各种组件的安装,写了几篇安装心得存在硬盘里。
最近尝试了点评开源的CAT监控平台的安装,并且希望能够引入到工作中。在部署实践的过程中,参考了前辈和其他论坛上的大作,在成功的同时,也记录一下自己的足迹。
以下为安装部署的过程,希望也能够给其他朋友带来帮助:
系统和软件:
CAT GitHub网址:https://github.com/dianping/cat
Centos 7
jdk-8u131-linux-x64.gz
mysql57-community-release-e17-8
apache-maven-3.3.9
apache-tomcat-8.5.16.tar.gz:经测试多个版本的Tomcat均可用,包括Tomcat 9
cat-master.zip
简述安装过程:
(1)系统准备:安装git、jdk、maven、mysql、tomcat(可以不装)
(2)CAT部署:
1、Clone CAT:git clone https://github.com/dianping/cat.git
2、在CAT目录下,用maven构建项目:mvn clean install -DskipTests
3、配置CAT的环境:进入CAT目录,运行:mvn cat:install
注(需要对/data/appdatas/cat和/data/applogs/cat有读写权限)
4、运行CAT,进入cat-home目录,运行:mvn jetty:run
一、系统准备
1. Yum安装基础工具:
# yum install -y git wget unzip
# git --version
git version 1.8.3.
2. 安装JDK
先查看系统中是否存在openJDK,如果存在,将其删除:
rpm -qa | grep java 如果显示如下信息:
java-1.4.2-gcj-compat-1.4.2.0-40jpp.115
java-1.6.0-openjdk-1.6.0.0-1.7.b09.el5
卸载:
rpm -e --nodeps java-1.4.2-gcj-compat-1.4.2.0-40jpp.115
rpm -e --nodeps java-1.6.0-openjdk-1.6.0.0-1.7.b09.el5 还有一些其他的命令:
rpm -qa | grep gcj
rpm -qa | grep jdk
如果出现找不到openjdk source的话,那么还可以这样卸载
yum -y remove java java-1.4.2-gcj-compat-1.4.2.0-40jpp.115
yum -y remove java java-1.6.0-openjdk-1.6.0.0-1.7.b09.el5 <1># rpm -qa|grep jdk ← 查看jdk的信息或直接执行
或
# rpm -q jdk
或
# java -version <2># rpm -qa | grep gcj ← 确认gcj的版本号 <3># yum -y remove java-1.4.2-gcj-compat ← 卸载gcj
确保系统中没有OpenJDK后,下载JDK 1.8.0.tar.gz文件,上传到VM,再执行以下内容:
# mkdir /usr/local/jdk
# tar -xvf jdk-8u131-linux-x64.tar.gz -C /usr/local/jdk/
配置环境变量:
# vim /etc/profile 增加以下配置:
#java
export JAVA_HOME=/usr/local/jdk/jdk1.8.0_131
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
执行以下语句,使环境变量生效;避免重启系统:
# source /etc/profile
验证Java安装成功:
# java -version
java version "1.8.0_131"
Java(TM) SE Runtime Environment (build 1.8.0_131-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.131-b11, mixed mode)
3. 安装Maven
下载Maven,上传到VM,再执行以下内容:
# mkdir /usr/local/maven
# tar -xvf apache-maven-3.3.9-bin.tar.gz -C /usr/local/maven
配置maven环境变量
# vim /etc/profile 添加以下内容:
#Maven
export M2_HOME=/usr/local/maven/apache-maven-3.3.9
export M2=$M2_HOME/bin
export PATH=$PATH:$M2 # source /etc/profile
Maven验证:
# mvn -v
Apache Maven 3.3.9 (bb52d8502b132ec0a5a3f4c09453c07478323dc5; 2015-11-11T00:41:47+08:00)
Maven home: /usr/local/maven/apache-maven-3.3.9
Java version: 1.8.0_131, vendor: Oracle Corporation
Java home: /usr/local/jdk/jdk1.8.0_131/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "3.10.0-514.16.1.el7.x86_64", arch: "amd64", family: "unix"
4. 安装MySQL
Mysql数据库安装过程如下:
下载mysql的repo源(CentOS 7.2的yum源中默认没有mysql,要先下载mysql的repo源):
# wget http://repo.mysql.com/mysql57-community-release-el7-8.noarch.rpm
安装mysql57-community-release-el7-8.noarch.rpm包:
# rpm -ivh mysql57-community-release-el7-8.noarch.rpm --nodeps --force
安装这个包后,会获得两个mysql的yum repo源:
# cd /etc/yum.repos.d
# ls -l 确认存在下列两个repo源文件:
mysql-community.repo
mysql-community-source.repo
安装mysql:
# yum install -y mysql-server
设置mysql服务开机启动:
# systemctl enable mysqld
启动mysql服务:
# systemctl start mysqld
查看MySQL服务是否已启动:
# systemctl status mysqld
重置root密码:
MySQL5.7会在安装后为root用户生成一个随机密码,而不是像以往版本的空密码。 可以安全模式修改root登录密码或者用随机密码登录修改密码。
下面用随机密码方式:
MySQL为root用户生成的随机密码通过mysqld.log文件可以查找到:
# grep 'temporary password' /var/log/mysqld.log # mysql -u root -p
mysql> Enter password: (输入刚才查询到的随机密码)
修改root用户密码:(MySQL的密码策略比较复杂,过于简单的密码会被拒绝)。首先修改安全策略,避免密码被拒绝:
mysql> set global validate_password_policy=0;
mysql> set global validate_password_length=4;
重置用户密码:
mysql> alter user 'root'@'localhost' identified by 'root-1234';
完成后,保存退出:
mysql> flush privileges;
mysql> quit;
使用刚刚设置的新密码登录:
# mysql -u root -p
如果进行操作出现下面的提示:
You must reset your password using ALTER USER statement before executing this statement.
就再设置一遍密码:
mysql> set password = password('root-1234');
开放3306端口
允许使用用户名root密码root-1234从任何主机连接到mysql服务器。
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root-1234' WITH GRANT OPTION; mysql> FLUSH PRIVILEGES;
mysql> quit;
5. 安装Tomcat
在官网下载Tomcat 8.5,上传VM。
# mkdir /usr/local/tomcat
# tar -xvf apache-tomcat-8.5.16.tar.gz -C /usr/local/tomcat/ # cd /usr/local/tomcat/
# ln -sv apache-tomcat-8.5.16 tomcat8
二. 安装CAT
上面已经把所需要的环境准备好,现在来处理CAT。
注:可以直接从第11行(# git clone https://github.com/dianping/cat.git)开始操作,此操作会自动下载cat文件夹及里面的内容。
为了避免直接安装CAT报错,先操作下面的命令创建文件夹,并赋予读写权限。
# mkdir -p /data/appdatas/cat
# chmod 777 /data/appdatas/cat # mkdir -p /data/applogs/cat
# chmod 777 /data/applogs/cat
解压下载的cat-master.zip,开始安装:
# unzip cat-master.zip
# cp -r cat-master /opt/cat
# cd /opt/cat/
在CAT目录下,用maven构建项目:
# mvn clean install -DskipTests [INFO] Scanning for projects... [WARNING] [WARNING] Some problems were encountered while building the effective model for com.dianping.cat:cat-home:war:1.3.6 [WARNING] The expression ${version} is deprecated. Please use ${project.version} instead. [WARNING] ..............................略
如果mvn clean install -DskipTests不成功,使用下面命令将mvn-repo下的jar包复制到本机maven仓库,直到最后显示100%
# cd /opt/
# git clone https://github.com/dianping/cat.git Initialized empty Git repository in /cat/cat/.git/ remote: Counting objects: 153895, done. remote: Total 153895 (delta 0), reused 0 (delta 0), pack-reused 153895 Receiving objects: 100% (153895/153895), 77.30 MiB | 32 KiB/s, done. Resolving deltas: 100% (69288/69288), done.
再次用maven构建项目,提示100%,完成:
# cd cat # mvn clean install -DskipTests .............略 [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 01:07 h [INFO] Finished at: 2016-05-19T16:47:05+08:00 [INFO] Final Memory: 33M/173M [INFO] ------------------------------------------------------------------------
配置CAT的环境,填写数据库地址、用户名、密码;如果无须更改,直接按回车键:
# mvn cat:install Please input jdbc url:[jdbc:mysql://127.0.0.1:3306] Please input username:root Please input password:[]root-1234
最后,在cat-home下运行mvn jetty:run &:
# cd cat-home # pwd
/opt/cat/cat-home # mvn jetty:run &
在浏览器中输入:http://localhost:2281/cat,来访问CAT。
三. 下面是tomcat下运行cat的操作:
在/cat-home/target下有个cat-alpha-1.4.0.war,将此文件复制到Tomcat的webapps目录下,并重命名为cat.war
# cd target # pwd
/opt/cat/cat-home/target # cp cat-alpha-1.4.0.war /usr/local/tomcat/tomcat8/webapps/cat.war
进入tomcat的bin文件夹,启动tomcat:
# cd /usr/local/tomcat/tomcat8/bin # ./startup.sh
Using CATALINA_BASE: /usr/local/tomcat/tomcat8
Using CATALINA_HOME: /usr/local/tomcat/tomcat8
Using CATALINA_TMPDIR: /usr/local/tomcat/tomcat8/temp
Using JRE_HOME: /usr/local/jdk/jdk1.8.0_131/jre
Using CLASSPATH: /usr/local/tomcat/tomcat8/bin/bootstrap.jar:/usr/local/tomcat/tomcat8/bin/tomcat-juli.jar
Tomcat started.
在浏览器中输入:http://localhost:8080/cat,来访问CAT。
Centos 7部署大众点评CAT(一)——单服务器部署的更多相关文章
- Centos 7部署大众点评CAT(二)——双服务器部署
在单机上部署CAT,只是在做实验,在生产环境则不可能只用单台服务器监控多个应用. 下面简单介绍一下双服务器的部署,各位有更多硬件资源作为监控服务端的朋友,如果对CAT集群有兴趣,可以参看这篇拙作. 资 ...
- 大众点评cat实时监控简介及部署
简介 背景 CAT(Central Application Tracking)是由吴其敏(前大众点评首席架构师,现携程架构负责人)主导设计基于Java开发打造的实时应用监控平台,为大众点评网提供了全面 ...
- 大众点评CAT开源监控系统剖析
参考文档: 大众点评的实时监控系统分析(一) CAT_source_analyze 透过CAT,来看分布式实时监控系统的设计与实现 深度剖析开源分布式监控CAT [分布式监控CAT] Client端源 ...
- 【转】大众点评CAT开源监控系统剖析
https://www.cnblogs.com/yeahwell/p/cat.html 参考文档: 大众点评的实时监控系统分析(一) CAT_source_analyze 透过CAT,来看分布式实时监 ...
- 搭建大众点评CAT监控平台
CAT(Central Application Tracking)是基于Java开发的实时应用监控平台,包括实时应用监控,业务监控.关于CAT的具体介绍可移步到CAT官网进行查阅. 1. 环境清单 C ...
- 大众点评cat监控平台搭建
参考官方文档:https://github.com/dianping/cat/wiki/readme_server 1.数据库相关 (1)创建数据库cat,并执行以下sql创建相关表: CREATE ...
- 大众点评cat系统的搭建笔记
项目地址:https://github.com/dianping/cat 编译步骤: 这个项目比较另类,把编译需要的jar包,单独放在git分支mvn-repo里了,而且官方文档里给了一个错误的命令提 ...
- 一个tomcat下部署多个项目或一个服务器部署多个tomcat
最近需要把两个项目同时部署到服务器上,于是研究了一下,页借鉴了很多别人的方法,把过程记录下来,以儆效尤. 目录: 1,一个tomcat下同时部署两个项目(多个项目可以参考) 1.1项目都放在webap ...
- 深入详解美团点评CAT跨语言服务监控(一) CAT简介与部署
前言: CAT是一个实时和接近全量的监控系统,它侧重于对Java应用的监控,除了与点评RPC组件融合的很好之外,他将会能与Spring.MyBatis.Dubbo 等框架以及Log4j 等结合,支持P ...
随机推荐
- 一些java考过的测试题和自己制作模拟服务端和客户端
媒体 1,java环境变量: PATH: .;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin; CLASSPATH: .;%JAVA_HOME%\jre\lib\rt.jar ...
- 基于C#的接口自动化测试(一)
其实就是找个地方然后给关键的代码做个笔记什么的-- 字符串访问API接口,访问方法为POST: string url = URL; string RequestParam = Param; strin ...
- Bash环境配置文件
一.环境配置文件读取优先级 其中~/.bash_profile,~/.bash_login,~/.profile三个文件只有一个有效,查找优先级从左至右降低.bash会一直检查是否有~/.bashrc ...
- maven项目转成web项目没有生成WebContent目录
有时候建立maven项目转成web项目没有生成WebContent目录,此时把Dynamic web module 去掉勾选,然后ok,再点开项目的properties,再选中Dynamic web ...
- 关于EasyUI中的Tree
2017年6月21日,天气阴.心情比较沉重. 近期由于毕设的事情,三周不写代码了.这周测试提交了一些BUG,于是开始着手处理,还真的是熟能生巧,三周的功夫就感觉有点生疏.其中有一个BUG就是角色对应的 ...
- DataTables warning (table id = 'DataTables_Table_0');错误解决办法!
这个错误是table表格引起的,我是将条件语句和<td>标签做了调整后,消除的,个人认为是数据缺失引起的.
- V9发布内容时保留框架<iframe></iframe>
有些时候,发布文章内容的时候需要用到<iframe></iframe>框架站外内容最近在发布内容时就遇到这个问题,<iframe></iframe>给转 ...
- Windows下安装Python扩展模块提示Unable to find vcvarsall.bat的问题
本文内容 Unable to find vcvarsall.bat的问题描述 问题分析 总结 提示: 如果你只是想知道自己需要安装哪个版本的Visual Studio请直接查看本文最后一个小节的内容. ...
- select change事件给其它元素赋值,本select的value或tex
select change事件给其它元素赋值,本select的value或textonchange='$("#areaname").val($("option:selec ...
- BigDecimal四舍五入使用总结
//BigDecimal四舍五入double f1 = new BigDecimal(1).setScale(2,RoundingMode.HALF_UP).doubleValue();//转化成字符 ...