Alan Hou的个人博客

Skywalking及Netdata安装及常见问题

安装Skywalking

SkyWalking是一个针对分布式系统的应用性能监控(Application PerformanceMonitor,APM)和可观测性分析平台(Observability Analysis Platform),可用于对程序进行监控,包含多种语言的 agent。 作为 Apache 顶级项目,同时创始人吴晟又是首位Apache 软件基金会中国董事,整个项目紧跟时代的步伐,保持不侵入代码且不影响应用性能的做法,一方面接入变得简单了,另一方面可扩展性也变强了。对于数据存储的支持也比较广泛,有默认的内存数据库 HB,关系型数据库MySQL, TiDB等,但从目前看,官方更为推荐的是 Elasticsearch。另外对 Service Mesh等云原生的支持方面也是非常好的。

Skywalking 拓扑图演示

 

Elasticsearch 添加密码:

常见问题

1、Could not rename log file ‘logs/gc.log’ to ‘logs/gc.log.11’ (Permission denied).

据网上说 docker compose 安装方式应添加

经测试7.x需该配置,直接按照官方文档操作即可,但这样需要建立多个容器,如果机器资源紧张就会有些问题。如果只部署单个容器,可不映射log 目录,将 data 目录进行持久化,持久化也可选择创建本地 volume的方式来进行映射。

安装 Skywalking

Skywalking 服务端设置认证SW_AUTHENTICATION,Agent 端配置连接认证SW_AGENT_AUTHENTICATION

注:位于同一台主机上的 docker 容器–link关联后可不对外开放端口即可实现连接,如上例中的 Elasticsearch,也可单独为这些容器创建一个网络:

源代码:https://archive.apache.org/dist/skywalking/8.5.0/

agent 位置:apache-skywalking-apm-bin/agent/skywalking-agent.jar,可以像下例中那样使用环境变量,也可以通过指定配置文件启动:Dskywalking_config=xxx/agent.config,配置文件的位置:apache-skywalking-apm-bin/agent/config/agent.config

Java 项目添加 Agent部署参考链接:https://skywalking.apache.org/zh/2020-04-19-skywalking-quick-start/

截取重要信息如下:

docker-maven-plugin 文档:https://dmp.fabric8.io/,使用 Docker 打包时如仅打包skywalking-agent.jar文件则仅在Instance 下出现数据,原因是未添加 plugins 文件,要添加 plugins 文件一种是将整个agent文件夹全量(可选择性地去除掉一些jar包,同时bootstrap-plugins和optional-plugins均为可选插件,需手动配置开启,可不进行拷贝)添加到容器内:

也可以通过将 agent 目录放到服务器指定目录,通过建立 volume 映射的方式包含skywalking-agent.jar及plugins

本地调试则可以直接通过 IDEA 配置相关参数环境变量

Netdata 安装

Netdata是一款配置简单,监控参数详尽且界面美观易用的监控工具。



可通过19999端口直接访问(默认无需账号登录,请设置 IP 访问限制或禁用端口),同时为管理多台主机,可在Netdata云端注册一个免费账号,配置  Namespace并添加主机(claim node),如通过 Docker 安装请选择 docker 命令。

默认所显示的名称并不友好

配置完成后需重启服务/容器,此时就会显示更为友好的名称了。有关数据存储的配置请见:

https://learn.netdata.cloud/docs/agent/database/engine/

 

 

退出移动版