环境准备:
JDK jdk1.8.0_121
zookeeper zookeeper-3.4.9
hbase hbase-1.2.4-bin
tomcat apache-tomcat-8.5.14.zip
Pinpoint Collector pinpoint-collector-1.6.2.war
Pinpoint Web pinpoint-web-1.6.2.war
Pinpoint Agent pinpoint-agent-1.6.2.tar.gz
JDK下载与安装
从oracle官网下载、安装jdk-1.8.0
$ cd /data/pin $ wget http://files.saas.hand-china.com/hitoa/1.0.0/jdk-8u121-linux-x64.tar.gz $ tar -xzvf jdk-8u121-linux-x64.tar.gz
配置
在/etc/profile文件配置环境变量
export JAVA_HOME=/data/u01/jdk1.8.0_121 export JRE_HOME=$JAVA_HOME/jre export PATH=$JAVA_HOME/bin:$PATH export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
使配置生效:
$ source /etc/profile
验证JAVA:
java -version
Zookeeper 下载与安装
安装HBase之前需要先安装Zookeeper,执行如下命令,下载zookeeper并解压:
$ cd /data/pin $ sudo wget http://files.saas.hand-china.com/hitoa/1.0.0/zookeeper-3.4.9.tar.gz $ sudo tar -xzvf zookeeper-3.4.9.tar.gz
配置
$ sudo vim /data/pin/zookeeper-3.4.9/conf/zoo.cfg #新增配置 tickTime=20000 initLimit=10 syncLimit=5 dataDir=/data/pin/zookeeper-3.4.9/data clientPort=2181 MaxSessionTimeout=200000
启动Zookeeper
$ cd /data/pin/zookeeper-3.4.9/bin
$ ./zkServer.sh start
ps:Zookeeper启动成功后,默认端口号2181
HBase下载与安装
执行如下命令,下载安装包并解压:
$ cd /data/pin $ sudo curl -OL http://files.saas.hand-china.com/hitoa/1.0.0/hbase-1.2.4-bin.tar.gz $ tar -xzvf hbase-1.2.4-bin.tar.gz
配置
(1) 修改环境变量
$ sudo vim /etc/profile
在/etc/profile文件末尾追加以下内容:
export HBASE_HOME=/data/pin/hbase-1.2.4
使配置生效:
$ source /etc/profile
(2) 配置HBase配置文件
修改hbase-site.xml
$ sudo vim /data/pin/hbase-1.2.4/conf/hbase-site.xml
hbase-site.xml中新增如下配置
<configuration> <property> <name>hbase.rootdir</name> <value>file:/apm/hbase-1.2.4/data</value> </property> <property> <name>hbase.cluster.distributed</name> <value>true</value> </property> <property> <name>hbase.regionserver.handler.count</name> <value>20</value> </property> <property> <name>hbase.zookeeper.quorum</name> <value>localhost</value> </property> <property> <name>hbase.zookeeper.property.clientPort</name> <value>2181</value> </property> <property> <name>zookeeper.session.timeout</name> <value>200000</value> </property> <property> <name>hbase.master.info.port</name> <value>16010</value> </property> </configuration>
HBase支持HDFS存储,但是需要安装Hadoop等组件,这里为了方便,暂时先不使用HDFS。另外,生产环境建议搭HBase集群,这里暂时只搭HBase单节点。
修改hbase-env.sh文件:
$ sudo vim /data/pin/hbase-1.2.4/conf/hbase-env.sh
使得HBase不使用内置Zookeeper,而使用前面安装好的外置Zookeeper。
export HBASE_MANAGES_ZK=false
启动HBase
$ cd /data/pin/hbase-1.2.4/bin
$ ./start-hbase.sh
可以看到HBase日志文件位于 /data/bin/hbase-1.2.4/logs ,可以查看HBase启动日志
另外
HBase启动成功以后,可以通过浏览器访问 http://ip:16010 查看HBase有关信息
注:端口号为前面 hbase-site.xml文件中配置的端口号
如果发现成功启动了HBase,但是却无法在浏览器中访问 http://ip:16010,可以去检查防火墙状态,关闭防火墙,然后再次尝试访问
$service iptables status
关闭防火墙:
$service iptables stop
初始Pinpoint表结构
初始HBase表结构
Pinpoint采用HBase作为底层存储,需要先在HBase中初始化表结构。
首先确保HBase是正常启动状态,然后:
$ cd /data/pin $ wget http://files.saas.hand-china.com/hitoa/1.0.0/pinpoint-hbase-create.hbase $ ./hbase-1.2.4/bin/hbase shell ./pinpoint-hbase-create.hbase
初始化成功以后,会在HBase中创建16张表。
安装mysql
下载MySQL5.6版本
rpm -ivh http://dev.mysql.com/get/mysql-community-release-el6-5.noarch.rpm yum -y install mysql-server yum list installed | grep mysql
修改mysql配置文件/etc/my.cnf,在[mysqld]中添加innodb_file_per_table=1
[root@localhost /]# vim /etc/my.cnf innodb_file_per_table=1 [root@localhost /]# /etc/init.d/mysqld start
登陆数据库
[root@localhost /]# mysql #创建zabbix库,指定字符集 mysql> CREATE DATABASE admin CHARACTER SET utf8 COLLATE utf8_bin; Query OK, 1 row affected (0.06 sec) #创建zabbix用户密码:zabbix 授权拥有访问zabbix库的所有权限 mysql> GRANT ALL PRIVILEGES ON admin.* TO admin@localhost IDENTIFIED BY 'admin'; Query OK, 0 rows affected (0.02 sec)
#查看数据库是否创建成功
mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | admin | +--------------------+ 4 rows in set (0.03 sec)
安装部署pinpoint-collector
解压tomcat到指定位置,用于部署pinpoin-collector
cd /home/pp_res/ tar -zxvf apache-tomcat-8.0.53.tar.gz mv apache-tomcat-8.0.53/ /data/service/pp-col
修改pp-col的Tomcat配置,修改端口,避免与待会儿还要部署的pp-web端口冲突。
cd /data/service/pp-col/conf/ sed -i 's/port="8005"/port="18005"/g' server.xml sed -i 's/port="8080"/port="18080"/g' server.xml sed -i 's/port="8443"/port="18443"/g' server.xml sed -i 's/port="8009"/port="18009"/g' server.xml sed -i 's/redirectPort="8443"/redirectPort="18443"/g' server.xml
注意:如果没有unzip命令,可以 "yum -y install unzip" 命令下载安装unzip命令
cd /home/pp_res/ rm -rf /data/service/pp-col/webapps/* unzip pinpoint-collector-1.7.3.war -d /data/service/pp-col/webapps/ROOT
启动Tomcat
cd /data/service/pp-col/bin/
./startup.sh
安装部署pinpoint-web
再次解压Tomcat,将Tomcat重命名移动到指定位置,这个tomcat用于部署pp-web
cd /home/pp_res/ tar -zxvf apache-tomcat-8.0.53.tar.gz mv apache-tomcat-8.0.53/ /data/service/pp-web
同样的,可以修改一下端口号,采用下面的命令行或者Xftp打开文件修改皆可
cd /data/service/pp-web/conf/ sed -i 's/port="8005"/port="28005"/g' server.xml sed -i 's/port="8080"/port="28080"/g' server.xml sed -i 's/port="8443"/port="28443"/g' server.xml sed -i 's/port="8009"/port="28009"/g' server.xml sed -i 's/redirectPort="8443"/redirectPort="28443"/g' server.xml
部署pinpoint-collector.war包
cd /home/pp_res/ rm -rf /data/service/pp-web/webapps/* unzip pinpoint-web-1.7.3.war -d /data/service/pp-web/webapps/ROOT
说明:
- hbase.properties 配置我们pp-web从哪个数据源获取采集数据,这里我们只指定Hbase的zookeeper地址。
- jdbc.properties pp-web连接自身Mysql数据库的连接认证配置。
- sql目录 pp-web本身有些数据需要存放在MySQL数据库中,这里需要初始化一下表结构。
- pinpoint-web.properties 这里pp-web集群的配置文件,如果你需要pp-web集群的话。
- applicationContext-* .xml 这些文件在后续的调优工作中会用到。
- log4j.xml 日志相关配置
在下一步启动Tomcat之前,建议先阅读本文最后“问题”中的同一个虚拟机中启动两个Tomcat的配置问题,修改相关配置后才能使得两个Tomcat同时运行。
启动Tomcat
cd /data/service/pp-web/bin/
./startup.sh
同样的,可以打开catalina.out文件来查看启动是否完成、启动过程是否出现错误等。
pp-web启动完成后,我们可以去浏览器中进行访问。输入地址http://ip:28080 进入PinPoint的Web页面
安装Pinpoint Agent
下载与安装
$ cd /data/pin $ mkdir pinpoint-agent-1.6.2 $ cd pinpoint-agent-1.6.2/ $ cp /data/pin/pinpoint-agent-1.6.2.tar.gz . $ tar -xzvf pinpoint-agent-1.6.2.tar.gz
$ vim /data/pin/pinpoint-agent-1.6.2/pinpoint.config
profiler.jvm.vendor.name=Oracle profiler.sampling.rate=1#另外,默认的采样率(Sampling Rate)是5%,为了使采集数据更完整,暂时设置为100%
部署App
CATALINA_OPTS="$CATALINA_OPTS -javaagent:/data/pin/pinpoint-agent-1.6.2/pinpoint-bootstrap-1.6.2.jar" CATALINA_OPTS="$CATALINA_OPTS -Dpinpoint.applicationName=dev-web" CATALINA_OPTS="$CATALINA_OPTS -Dpinpoint.agentId=dev-web-01"
$ cd /data/dev_tomcat/apache-tomcat-8.5.37/bin/ $ ./shutdown.sh $ ./startup.sh