Cloudinsight Agent 在 4.7.0 版本,将 Agent 名称从 oneapm-ci-agent 更换至 cloudinsight-agent。若您在使用过程中,出现无法正常工作的情况,请加入售后群:433349863
X

开始使用 Cloudinsight

开始使用 Cloudinsight 分为几步:

  1. 安装 Cloudinsight Agent
  2. 修改 Agent 配置文件
  3. 查看操作系统指标
  4. 配置 Cloudinsight 监控服务
  5. 查看监控服务数据

I.安装 Cloudinsight Agent

在 Cloudinsight 产品界面「设置 -> 添加平台」中会显示安装 Agent 指令,我们以 Debian 为例:

需要注意的事项:

  1. CI_LICENSE_KEY 后面接的是您私有的 License Key,在您注册成功后自动生成,故请勿从他处复制或私自修改。
  2. 若您的系统需要管理员权限,请在指令最前方加上 sudo 执行,并输入管理员密码。

常见的错误提示

在探针安装过程中,常见的几种错误类型(点击以下链接查看解决办法):

若您的错误类型不属于以上任何一种,您可以:

  1. 查看 Agent 安装常见错误 • 文档
  2. 进行手动安装
  3. 提交工单给 Cloudinsight 技术支持人员

手动安装

1.下载 Cloudinsight Agent 文件

$ sudo apt-get autoremove
$ sudo apt-get autoclean
$ wget http://apt.oneapm.com/pool/main/cloudinsight-agent_x.x.0-1_amd64.deb  (可以自行查看当前版本,其中amd64/i386分别对应64位/32位系统)

注:请不要复制中文的解释字符:(可以自行查看当前版本)

2.安装 Cloudinsight Agent

$ dpkg -i cloudinsight-agent_x.x.0-1_amd64.deb  (修改版本号)

注:请不要复制中文的解释字符:(修改版本号)

3.配置 License Key

$ cd /etc/cloudinsight-agent/
$ cp cloudinsight-agent.conf.example   cloudinsight-agent.conf  
$ vi cloudinsight-agent.conf  (修改成自己的 license_key)

注:请不要复制中文的解释字符:(修改成自己的 license_key)

4.重启 Cloudinsight Agent

$ /etc/init.d/cloudinsight-agent restart

II.修改 Agent 配置文件

在使用 Cloudinsight 前,需要先了解 Agent 的目录结构,方便日后 Agent 错误排查,以及了解采集的数据。

$ /etc/cloudinsight-agent : tree .
.
├── checks.d
├── conf.d
│   ├── activemq_58.yaml.example
...
│   ├── tomcat.yaml.example
│   ├── win32_event_log.yaml.example
│   ├── wmi_check.yaml.example
│   └── zookeeper.yaml.example
├── cloudinsight-agent.conf
├── cloudinsight-agent.conf.example
└── supervisor.conf

2 directories, 49 files

Agent 安装在 /etc/init.d/cloudinsight-agent 路径,而配置文件的路径都在 /etc/cloudinsight-agent

所以所有的探针执行操作,都需要将路径定位至 /etc/init.d/cloudinsight-agent 路径,如 Agent 启动命令:

$ /etc/init.d/cloudinsight-agent start

而修改配置文件,都在 /etc/cloudinsight-agent 路径下,如修改 Agent 中的 Hostname,需要:

$ vi /etc/cloudinsight-agent/cloudinsight-agent.conf

配置文件类型

Agent 配置文件分为以下 3 类:

  1. cloudinsight-agent.conf Agent 配置文件
  2. conf.d/XXXXX.yaml 您需要监控的服务的配置文件
  3. supervisor.conf supervisor 配置文件

注:Cloudinsight Agent 是通过 supervisor 进行进程管理,此处无需了解该配置。

第一次修改 Agent 配置文件

第一次打开 Agent 配置文件,建议阅读配置文件注释项,来了解配置项的含义。常用的配置项有:

  • license_key 您唯一识别号 License Key
  • hostname 给您主机起个名称,来区别其他主机上传的数据
  • tags 主机标签信息,用来标识该主机的一些属性信息,更为方便地管理主机
  • collector_log_file Agent 模块 collector 的日志文件路径,相同的还有 forwareder 和 statsd
  • ci-url 数据发送的目标服务器地址,默认为 Cloudinsight 后端地址
  • listen_port Agent 监听端口号,默认为 10010

问题排查相关指令

一般来说,Agent 在安装后会默认启动。如上文所示,常见问题可以通过:Agent 安装常见错误 • 文档 进行排查。

但是当您修改了 Agent 配置文件后,需要以下几种常用之类来帮助您更好地使用 Cloudinsight。

1.重启 Agent

$ /etc/init.d/cloudinsight-agent restart

类似的指令还有:

$ /etc/init.d/cloudinsight-agent restart
$ /etc/init.d/cloudinsight-agent stop

2.快速查看 Agent 状态

$ /etc/init.d/cloudinsight-agent status

3.查看 Agent 基本信息

$ /etc/init.d/cloudinsight-agent info

info 执行结果,您会看到:

  1. 系统时钟信息
  2. Agent 采集的数据统计信息
  3. Agent 3 个模块:Forwareder, Collector 和 OneStatsd 的运行状态

若出现异常情况会在 info 执行结果中标明。

4.打包日志文件提供给技术支持人员

$ /etc/init.d/cloudinsight-agent flare

若 Cloudinsight 文档不能解决您的问题,可以通过提交工单给 Cloudinsight 技术支持人员,来帮助您解决问题。

但是技术人员需要查看您的日志文件,此时可以通过 flare 对日志文件进行打包。


III.查看操作系统指标

成功安装 Agent 后,打开 Cloudinsight 产品页,就会看到安装成功的主机的操作系统相关指标。

图 1

您可以在以下三个地方查看操作系统相关指标:

  • 平台 • 快速查看(如图 1)
  • 系统概览仪表盘(如图 2):点击平台名称进入
  • 平台仪表盘(如图 3):点击导航仪表盘进入

图 2

图 3

若您对操作系统指标的含义、采集单位不是很熟悉,建议阅读:system 数据指标解释 • 文档


IV.配置 Cloudinsight 监控服务

至此,Cloudinsight Agent 安装成功。若您需要给探针添加数据库监控,如 MySQL, MongoDB 监控;或者 Tomcat 监控,HAProxy 监控。首先需要了解如何在 Agent 中配置这些服务。

Agent 采集 MySQL, Tomcat 这些平台服务的数据指标,依赖于服务自身提供的数据对外接口。如 MySQL 需要配置 Agent 授权,提供数据给 Agent 并由 Agent 发送至 Cloudinsight 后端;而 Tomcat 依赖于 JMX 来提供数据。

Cloudinsight Agent 采集平台服务数据的原理,分为以下 3 种:

若想要全面了解 Cloudinsight Agent 如何采集数据,并且灵活配置平台服务监控,建议阅读以上文章。

再次我们以 MySQL 和 Tomcat 为例,为大家介绍如何配置平台服务监控。

MySQL 监控

1.给 Cloudinsight 创建一个名为 oneapm 的角色

$ sudo mysql -e "CREATE USER 'oneapm'@'localhost' IDENTIFIED BY 'YourPassword';"

至此,我们为 MySQL 配置了一个名为 oneapm 的角色,并且密码为 YourPassword

2.为该角色赋予 performance_scheme 权限

$ sudo mysql -e "GRANT PROCESS, REPLICATION CLIENT ON *.* TO 'oneapm'@'localhost' WITH MAX_USER_CONNECTIONS 5;"
$ sudo mysql -e "GRANT SELECT ON performance_schema.* TO 'oneapm'@'localhost';"

此处,oneapm@localhost 中地址可以修改为您实际环境中的地址;最大连接数默认为 5

3.确认权限是否创建成功

$ mysql -u oneapm --password=YourPassword -e "SHOW /*!50000 ENGINE*/ INNODB STATUS" | \
grep Uptime && echo -e "\033[0;32mMySQL user - OK\033[0m" || \
echo -e "\033[0;31mCannot connect to MySQL\033[0m"
mysql -u oneapm --password=YourPassword -e "show slave status" && \
echo -e "\033[0;32mMySQL grant - OK\033[0m" || \
echo -e "\033[0;31mMissing REPLICATION CLIENT grant\033[0m"

注:若您修改了密码和地址,请将其中的相关字段替换为您修改后的字符。

若出现相关成功提示,则代表授权已经配置成功。至此,您已经为 MySQL 增加了一个可以访问 MySQL 相关性能数据的角色 oneapm

我们还需要修改 Agent 中 mysql.yaml 文件来开启 MySQL 监控。

4.配置 mysql.yaml

将路径定位至 /etc/cloudinsight-agent/conf.d

$ cd /etc/cloudinsight-agent/conf.d

该目录下存储着 Cloudinsight 支持所有的平台服务监控的配置文件的示例文件,后缀为 *.yaml.example

若您不熟悉 yaml 语法,建议直接从示例文件中创建副本开启监控。

$ cp mysql.yaml.example mysql.yaml

或者阅读:YAML 格式须知 • 文档

然后打开 mysql.yaml文件。建议阅读配置项的注释,了解配置项的涵义。

常用的配置项有:

  • server:MySQL 服务地址
  • user:配置的角色名称
  • pass:配置的角色名称
  • tags:给该 MySQL 以及采集的数据加上标签信息

若您的 MySQL 存在特殊情况,如 sock 路径不在默认路径下,或者需要关闭一些 MySQL 指标,都可以在配置文件中进行配置。

5.确定 Agent 是否采集到 MySQL 相关数据

执行 Agent Info 指令来查看,Agent 是否开始采集 MySQL 相关指标的数据。

$ /etc/init.d/cloudinsight-agent info

若出现以下提示信息,则代表 Agent 已经成功采集 MySQL 数据。

Checks
======

[...]

mysql
-----
  - instance #0 [OK]
  - Collected 8 metrics & 0 events`

Tomcat 监控

1.开启 JMXRemote

监控 Tomcat 的第一步是要检查 JMXRemote 是否处于 enable 状态。若没有处于 enable 状态,您可以添加以下参数至 setenv.sh 文件:

set CATALINA_OPTS=-Dcom.sun.management.jmxremote
  -Dcom.sun.management.jmxremote.port=%my.jmx.port%
  -Dcom.sun.management.jmxremote.ssl=false
  -Dcom.sun.management.jmxremote.authenticate=false

或者查阅 Monitoring and Managing Tomcat • 官网文档

2.配置 tomcat.yaml

将路径定位至 /etc/cloudinsight-agent/conf.d

$ cd /etc/cloudinsight-agent/conf.d

该目录下存储着 Cloudinsight 支持所有的平台服务监控的配置文件的示例文件,后缀为 *.yaml.example

若您不熟悉 yaml 语法,建议直接从示例文件中创建副本开启监控。

$ cp tomcat.yaml.example tomcat.yaml

或者阅读:YAML 格式须知 • 文档

然后打开 tomcat.yaml文件。建议阅读配置项的注释,了解配置项的涵义。

常用的配置项有:

  • host:Tomcat 所在主机,默认为 localhost
  • port:JMX 远程连接端口
  • user:JMX 远程连接用户名
  • password:JMX 远程连接密码
  • name:Tomcat 实例名称,将在 Cloudinsight 平台生成对应的标签,如: instance:tomcat_instance
  • java_bin_path:探针找不到 Java 可执行路径时,需配置此项
  • java_options:Java JVM 对应项
  • trust_store_path:若 JMX 远程连接开启 SSL,需配置此项
  • trust_store_password:SSL 证书密码
  • tags:标签信息

由于 JMX 采集的指标特别多,而 Cloudinsight 认为只选取一些常用的指标,就可以满足大部分的用户场景。所以我们针对采集指标的数量,做了最大 350 条的限制。

至此,我们需要为您介绍 Agent 操作中的 jmx 指令。

$ sudo /etc/init.d/cloudinsight-agent jmx

如需要查看哪些指标因为数量限制未被 Agent 采集:

$ sudo /etc/init.d/cloudinsight-agent jmx list_limited_attributes

详细操作命令,以及如何自定义指标采集,请查阅:JMX 远程监控 • 文档

3.确定 Agent 是否采集到 Tomcat 相关数据

执行 Agent Info 指令来查看,Agent 是否开始采集 Tomcat 相关指标的数据。

$ /etc/init.d/cloudinsight-agent info

若出现以下提示信息,则代表 Agent 已经成功采集 MySQL 数据。

Checks
======

[...]

tomcat
------
  - instance #0 [OK]
  - Collected 8 metrics & 0 events

V.查看监控服务数据

成功配置平台服务监控后,您就可以在 Cloudinsight 界面中看到相关指标了。

您可以在平台列表中,点击 MySQL 平台服务,快速查看 MySQL 运行情况和相关指标,如图 4。

图 4

或者前往仪表盘页面,查看为您定制的平台服务仪表盘 • MySQL 概览,了解 MySQL 的关键指标。如图 5。

图 5

想要了解 MySQL 每个指标的含义和单位,来更好地创建自定义仪表盘。建议前往指标概览页面,查看 MySQL 相关指标的含义和采集单位。如图 6.

图 6


延伸阅读

至此所有的快速入门指南,已经完毕。您可以点击以下链接,更为深入地了解 Cloudinsight。


如果您对 Cloudinsight 感兴趣,可以选择试用我们的产品,只需要点击下面的按钮免费注册即可。


立即注册 Cloudinsight