在公网IP为x.x.x.x,安装CentOS8或Alibaba Cloud Linux 3.2104 LTS 64位系统的服务器(服务端)上,先安装jdk8,然后安装数据库mariadb-10.5,最后进行server安装。
在需要监控的安装CentOS8或Alibaba Cloud Linux 3.2104 LTS 64位系统的服务器(客户端)上,不需要安装jdk8和数据库,只进行agent安装。
服务端只部署一个,有多少台主机需要监控就部署多少个客户端。
server和agent需要保持相同的版本。
第一步,下载server-jre-8u202-linux-x64.tar.gz安装包。
登录网址:https://www.oracle.com/java/technologies/javase/javase8-archive-downloads.html下载server-jre-8u202-linux-x64.tar.gz安装包,然后使用WinSCP将安装包上传到/usr/local/src文件夹中。也可以使用wget命令下载。
命令:cd /usr/local/src
wget https://www.oracle.com/java/technologies/javase/javase8-archive-downloads.html/jre-8u202-linux-x64.tar.gz
第二步,解压server-jre-8u202-linux-x64.tar.gz安装包。
命令:cd /usr/local/src
tar -zxvf server-jre-8u202-linux-x64.tar.gz -C /usr/local
第三步,配置环境变量。
配置/etc/profile文件,在文件添加下面的代码:
export JAVA_HOME=/usr/local/jdk1.8.0_202
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib:$JRE_HOME/lib/rt.jar:$JRE_HOME/lib/ext:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
第四步,测试jdk8是否配置成功。
# 刷新profile文件
命令:source /etc/profile
# 查看jdk版本
命令:java -version
如果结果显示“java version "1.8.0_202"”,则说明jre配置成功。
linux系统版本:CentOS8 64位
安装源文件版本:mariadb-10.5
第一步,安装前,检测系统是否自带安装MySQL。
命令:rpm -qa | grep mysql
若结果显示类似“mysql-libs-5.1.52-1.el6_0.1.x86_64”,则可以选择进行卸载。
# 普通删除模式
rpm -e mysql-libs-5.1.52-1.el6_0.1.x86_64
# 如果使用普通删除模式命令删除时,提示有依赖的其它文件,则用强力删除模式命令对其进行强力删除
rpm -e --nodeps mysql-libs-5.1.52-1.el6_0.1.x86_64
第二步,检查否存在mariadb数据库。
命令:rpm -qa | grep mariadb
若结果显示类似“mariadb-libs-5.5.56-2.el7.x86_64”,则可以选择进行卸载。
命令:rpm -e --nodeps mariadb-libs-5.5.56-2.el7.x86_64
第一步,安装MariaDB。
命令:sudo yum install mariadb-server mariadb
第二步,启动数据库并设置为开机自启动。
命令:sudo systemctl start mariadb
sudo systemctl enable mariadb
第三步,初始化数据库根管理员账号root。
命令:mysqladmin -u root password "123456"
第四步,测试登录数据库。
命令:mysql -u root -p123456
若结果显示“MariaDB [(none)]> ”,则说明数据库登录成功了。
第五步,数据库安装设置,重置数据库root账号密码,执行该命令前必须开启mysql服务。
命令:mysql_secure_installation
若结果显示“Enter current password for root (enter for none):”,
则输入当前root账号密码,刚安装默认为空,直接回车即可。
“Set root password? [Y/n]”,输入y回车。
“New password:”,输入密码。
“Re-enter new password:”,重复输入密码。
“Remove anonymous users? [Y/n]”,输入y回车。
“Disallow root login remotely? [Y/n]”,输入y回车。
“Remove test database and access to it? [Y/n]”,输入y回车。
“Reload privilege tables now? [Y/n]”,输入y回车。
第六步,登陆测试,执行登录命令并输入密码。
命令:mysql -uroot -p
输入登录密码“123456”,进入MariaDB shell状态。
第七步,添加远程访问权限。
命令:mysql -uroot -p123456
MariaDB [(none)]> use mysql;
MariaDB [(none)]> grant all privileges on *.* to root@'%' identified by '123456';
MariaDB [(none)]> flush privileges;
第一步,下载wgcloud-v3.4.1.tar.gz安装包。
登录网址:下载安装包 - WGCLOUD,下载“Linux平台”的wgcloud-v3.4.1.tar.gz,然后使用WinSCP将安装包上传到服务端的/usr/local/src文件夹中。
第二步,解压wgcloud-v3.4.1.tar.gz安装包。
命令:cd /usr/local/src
tar -zxvf wgcloud-v3.4.1.tar.gz -C /usr/local
server需要用数据库来存贮监控数据
第一步,创建数据库,名称为wgcloud,字符集设置为utf8即可。
命令:mysql -u root -p123456
MariaDB [(none)]> create database wgcloud character set utf8 collate utf8_general_ci;
MariaDB [(none)]> create user wgcloud@localhost identified by 'wgcloud123';
MariaDB [(none)]> grant all privileges on wgcloud.* to wgcloud@localhost;
MariaDB [(none)]> flush privileges;
第二步,在wgcloud数据库,导入或运行/usr/local/wgcloud-v3.4.1文件夹中的wgcloud-MySQL.sql文件。
使用Navicat客户端工具导入wgcloud-MySQL.sql文件;使用SQL命令运行wgcloud-MySQL.sql文件。
命令:mysql -u root -p123456
MariaDB [(none)]> use wgcloud;
MariaDB [(none)]> source /usr/local/wgcloud-v3.4.1/wgcloud-MySQL.sql;
第一步,配置/usr/local/wgcloud-v3.4.1/server/config中的application.yml。
进入文件夹/usr/local/wgcloud-v3.4.1/server/config,编辑application.yml。
把文件中的“jdbc:mysql://localhost:3306/wgcloud”改为“jdbc:mysql://x.x.x.x:3306/wgcloud”。
把文件中的“accountPwd: 111111”改为“accountPwd: wgcloud123”。
注意:application.yml文件中,每个配置项冒号后必须紧跟一个英文空格。若server主机的防火墙或安全组在运行,需开启这2个端口:9999(sever web页面访问)、9998(web ssh端口,不用web ssh可不开启)
第二步,配置/usr/local/wgcloud-v3.4.1/agent/config中的application.properties。
进入文件夹/usr/local/wgcloud-v3.4.1/agent/config,编辑application.properties。
# 将localhost:9999替换为server主机IP和web端口
把文件中的“serverUrl=http://localhost:9999”改为“serverUrl=http://x.x.x.x:9999”。
# 添加server主机内网IP
把文件中的“bindIp=”改为“bindIp=x1.x1.x1.x1”。
注意:properties类型文件中的等号后面不需要保留空格。agent主动单向给server上报采集数据,agent主机不需要开启任何端口,因为server不会访问agent。
第三步,server启动。
命令:cd /usr/local/wgcloud-v3.4.1/server
./start.sh
# server启动完成大概需要10秒,10秒后再启动agent
命令:cd /usr/local/wgcloud-v3.4.1/agent
./start.sh
第四步,访问登录页面。
启动完成后,通过http://x.x.x.x:9999/wgcloud访问登录页面,输入登陆账号:admin,密码:wgcloud123。
第一步,下载agent-linux-amd64-v3.4.1.tar.gz安装包。
登录网址:https://www.wgstart.com/help/docs15.html,下载“amd64或x86_64 (Linux)”的agent-linux-amd64-v3.4.1.tar.gz,然后使用WinSCP将安装包上传到客户端的/usr/local/src文件夹中。
第二步,解压agent-linux-amd64-v3.4.1.tar.gz安装包。
命令:cd /usr/local/src
tar -zxvf agent-linux-amd64-v3.4.1.tar.gz -C /usr/local
第一步,配置/usr/local/agent-linux-amd64-v3.4.1/config中的application.properties。
进入文件夹/usr/local/agent-linux-amd64-v3.4.1/config,编辑application.properties。
# 将localhost:9999替换为server主机IP和web端口
把文件中的“serverUrl=http://localhost:9999”改为“serverUrl=http://x.x.x.x:9999”。
# 添加agent主机内网IP
把文件中的“bindIp=”改为“bindIp=y1.y1.y1.y1”。
注意:properties类型文件中的等号后面不需要保留空格。agent主动单向给server上报采集数据,agent主机不需要开启任何端口,因为server不会访问agent。
第二步,配置文件修改后,需重启agent服务器使配置文件生效。
命令:init 6
第三步,agent启动。
命令:cd /usr/local/agent-linux-amd64-v3.4.1
./start.sh
第四步,访问登录页面。
启动完成后,通过http://x.x.x.x:9999/wgcloud访问登录页面,输入登陆账号:admin,密码:wgcloud123。
点击“资源管理—主机管理”,可以看到下面显示的画面:
在Linux系统中需要使用vim编辑器来新建启动脚本。
第一步,在/etc/rc.d/init.d新建启动脚本startAgent.sh。
命令:vim /etc/rc.d/init.d/startAgent.sh
将下面的代码复制到新建的/etc/rc.d/init.d/startAgent.sh中:
#!/bin/bash
#chkconfig: 35 20 80
#description: wgcloud agent
/usr/bin/echo $(/usr/bin/date +%F_%T) >> /tmp/agent.log
/usr/local/agent-linux-amd64-v3.4.1/start.sh
注意:/usr/local/agent-linux-amd64-v3.4.1/start.sh改为agent实际部署路径。
第二步,给/etc/rc.d/init.d/startAgent.sh加可执行权限。
命令:chmod +x /etc/rc.d/init.d/startAgent.sh
第三步,添加脚本到chkconfig,开机自启动。
命令:cd /etc/rc.d/init.d
chkconfig --add startAgent.sh
chkconfig startAgent.sh on
第四步,设置server服务器开机启动的操作和设置agent服务器开机启动的操作一致,只需要把/etc/rc.d/init.d/startAgent.sh中的启动脚本换成server服务器的start.sh即可。
注意:如果server服务器不能开机启动成功,且没有在server/log下输出启动日志,那么可能是JDK环境变量未准备好,这时候可以把server/start.sh中的java改为JDK绝对路径。
配置nginx中的访问WGCLOUD页面URL,就可以通过域名或IP直接访问WGCLOUD页面了,不用再加后面的/wgcloud。
注意:把localhost改为实际server主机IP
配置nginx完成后,nginx所示的代码如下:
server {
listen 80;
server_name x.x.x.x;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
proxy_pass http://x.x.x.x:9999/wgcloud/login/toLogin;
proxy_cookie_path /wgcloud/ /;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_intercept_errors on;
}
location /wgcloud/ {
proxy_pass http://x.x.x.x:9999/wgcloud/;
proxy_cookie_path /wgcloud/ /;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
#error_page 404 /404.html;
# redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}