diff --git a/README.md b/README.md index b81f15e441e650e215511441f314d2a7eb20eec0..65dd57d7983588b9d536d5990bac984bbcb62657 100644 --- a/README.md +++ b/README.md @@ -226,7 +226,7 @@ Gala提供了集成式部署工具[Gala-Deploy-Tools](./deploy)以便用户快 -### 离线部署 +### 离线部署 gala组件的运行依赖各个中间件,因此建议按照如下顺序(中间件->gala-gopher/gala-ops->grafana)进行安装部署。 @@ -371,7 +371,7 @@ sh deploy.sh grafana -P -p #### 获取部署脚本 @@ -758,13 +758,112 @@ gala-ops支持使用Grafana图形界面用来帮助客户更好的理解性能Pr # 常见问题 -1. 生产环境采集的数据无法送至管理面? -2. 如何新增数据采集范围? -3. 如何新增应用场景? -4. 支持哪些OS -5. 支持哪些内核版本 -6. 支持的软件版本范围 -7. 全栈热点分析调用栈为什么不能准确显示函数名? +1. 系统如何快捷部署? + + 社区提供两类快捷部署方式,1)[在线部署](#deployment-2);2)[离线部署](#deployment-1);前者要求用户安装环境可以访问openEuler社区;后者可以要求用户下载软件后,将其拷贝至安装环境; + +2. gala-gopher支持哪些OS版本? + + - openEuler 22.03 SP1及其之后的LTS版本是正式推荐客户使用的版本; + - openEuler 22.03 SP1之前的LTS版本也将获得openEuler社区技术支撑,但社区不推荐客户使用; + - openEuler 系列的商用OS(比如麒麟V10)也将获得openEuler社区技术支撑,但是商用OS厂商暂未对gala-gopher提供商用维保; + - 非openEuler系列的OS(比如SUSE 12,CentOS等)技术上可以安装、部署gala-gopher,但原则上获取不到社区技术支撑; + +3. gala-gopher的观测能力支持哪些内核版本? + + | 内核版本 | 观测能力范围 | + | -------- | ------------------------------------------------------------ | + | 4.12 | 在线性能火焰图、TCP、I/O、应用L7层流量、进程、DNS | + | 4.18 | 在线性能火焰图、TCP、I/O、应用L7层流量、进程、DNS、Redis(Server侧)时延性能、PG DB(Server侧)时延性能、openGauss(Server侧)时延性能 | + | 4.19 | 在线性能火焰图、TCP、I/O、应用L7层流量、进程、DNS、Redis(Server侧)时延性能、PG DB(Server侧)时延性能、openGauss(Server侧)时延性能 | + | 5.10 | 在线性能火焰图、TCP、I/O、应用L7层流量、进程、DNS、Redis(Server侧)时延性能、PG DB(Server侧)时延性能、openGauss(Server侧)时延性能 | + +4. gala-gopher是否支持跨内核版本兼容? + + - 在openEuler 22.03 SP1版本中,gala-gopher不支持跨内核版本兼容; + - 规划在openEuler 22.03 SP3版本中,gala-gopher将支持跨Release版本兼容;(即5.10内核版本范围内,不同release版本可以使用同一个gala-gopher组件); + - 规划在openEuler 23.03 SP1版本中,gala-gopher将在低内核版本(4.18/4.19)支持跨Release版本兼容性; + - 规划在24年,gala-gopher将支持跨内核大版本的兼容性(比如5.10/4.19两个内核版本可以使用相同的gala-gopher软件版本); + +5. gala-gopher是否支持容器场景? + + 支持containerd、docker、isula三种容器运行时;可以针对这三种容器运行时场景的容器实例监控。 + +6. gala-gopher是否支持K8S部署、监管? + + gala-gopher支持在K8S环境中以daemonset形式部署,相关的daemonset yaml、容器镜像Dockerfile、容器启动入口脚本请参考: + + https://gitee.com/openeuler/gala-gopher/blob/dev/k8s/daemonset.yaml.tmpl + https://gitee.com/openeuler/gala-gopher/blob/dev/build/Dockerfile_2003_sp1_x86_64 + https://gitee.com/openeuler/gala-gopher/blob/dev/build/Dockerfile_2003_sp1_aarch64 + https://gitee.com/openeuler/gala-gopher/blob/dev/build/entrypoint.sh + +7. 如何设置监控范围? + + 监控范围由gala-gopher组件控制, 它提供[REST接口](https://gitee.com/openeuler/gala-gopher/blob/dev/config/gala-gopher%E6%94%AF%E6%8C%81%E5%8A%A8%E6%80%81%E9%85%8D%E7%BD%AE%E6%8E%A5%E5%8F%A3%E8%AE%BE%E8%AE%A1_v0.3.md)设置监控范围,并支持运行过程中实时调整监控范围。它存在几个维度的设置方式: + + 1)设置采集的数据类型;(比如设定只采集TCP、I/O的数据) + + 2)设定采集特定数据类型的范围;(比如设定只采集TCP的丢包数据 或者 TCP rtt数据) + + 3)设定采集特定进程、容器实例的范围;(比如通过进程ID、进程名、容器ID、Pod ID 方式设置采集范围) + + ​ 三个维度可以组合使用,且可以在监控过程中实时修改设置; + + 缺省行为:如果不加以任何设置,gala-gopher将不采集任何数据。 + +7. gala-gopher底噪数据? + +9. gala系统需要多少资源? + + | 组件 | 部署位置 | 资源要求 | + | ----------------- | -------- | -------------------------------------------- | + | gala-gopher | 生产节点 | 0.2 core,100M内存(只开启TCP,I/O采集能力) | + | gala-spider | 管理节点 | | + | gala-anteater | 管理节点 | | + | prometheus | 管理节点 | | + | Grafana | 管理节点 | | + | kafka | 管理节点 | | + | elasticsearch | 管理节点 | | + | logstash | 管理节点 | | + | arangodb | 管理节点 | 约束:只支持X86架构 | + | pyroscope(可选) | 管理节点 | | + +10. gala-gopher是否支持openTelemetry统计? + + openTelemetry的统计可以有效降低运维平台的数据存储压力,所以gala-gopher采集的Metrics部分支持openTelemetry Pxx统计[1]。 + + [1]: 时延、吞吐量这两类数据支持; + +11. gala-gopher是否支持java语言? + + 支持针对java语言的应用的数据采集,包括三类数据 + + - java应用的运行堆栈(用于性能火焰图); + - jvm运行时状态数据(比如jvm堆内存、GCC资源等); + - jsse类库数据(用于L7层加密协议的观测); + +12. gala-gopher支持哪些应用L7层协议? + + - 协议范围:HTTP1.X、PostgreSQL、MySQL、Redis、Kafka、HTTP2.0、MongoDB、RocketMQ + - 加密协议:支持openSSL、GoSSL、JSSE等常见加密场景; + - 支持的语言:支持C/C++、Java、Go (TODO) + +13. gala是如何构建系统拓扑? + +14. gala是如何完成异常检测? + +15. gala是如何完成根因定位? + +16. gala系统依赖的中间件(Prometheus、ES、arangodb等)是否可以替换? + +17. 如何使用性能Profiling(火焰图)? + +18. 如何完成网络问题诊断? + +19. 如何完成I/O问题诊断? + +8. 如何完成死锁问题诊断? # 用户案例