Apache SkyWalking 展示应用文档
1. 目录结构及介绍
Apache SkyWalking Showcase 应用是一个演示型项目,用于直观展示SkyWalking监控和追踪功能。以下是该仓库的基本目录结构概述:
.
├── README.md # 主要的说明文档,包含了部署指南和其他重要信息。
├── Makefile # 包含了自定义构建规则,支持一键部署到Kubernetes等高级操作。
├── <microservice-folders> # 微服务子目录,每个可能代表一个独立的服务组件。
│ ├── service-a # 示例:代表一个名为service-a的微服务,通常包括源代码和服务配置。
│ │ └── src/main...
│ └── ...
├── k8s # Kubernetes配置文件夹,包含部署、服务、配置映射等相关yaml文件。
└── ...
- README.md 文件提供了详细的项目介绍和快速部署步骤。
- Makefile 定义了一系列命令以自动化部署过程,如本地或Kubernetes环境中的部署。
- Microservice Folders 包含各微服务的源码和配置,展示了如何集成SkyWalking Agent。
- k8s 文件夹存储Kubernetes相关的部署配置,用于在集群中部署应用。
2. 项目的启动文件介绍
本项目采用Makefile来简化启动流程,特别是对于Kubernetes环境。主要的启动命令是:
make deploy kubernetes
这条命令执行以下操作:
- 部署SkyWalking组件,包括OAP服务器(On-Analyzing-Platform)以集群模式(2个节点)运行。
- 部署SkyWalking UI以及带有SkyWalking代理的微服务。
- 部署没有SkyWalking代理但由Istio管理的微服务。
- 设置2个Pod模拟虚拟机,并将指标导出至SkyWalking,同时启用Kubernetes集群监控和SkyWalking自身的可观测性。
对于本地开发环境,比如使用KinD,可能需要等待镜像下载完成,这可能超过10分钟,取决于网络状况。
3. 项目的配置文件介绍
配置主要分布在几个地方:
- Makefile 中定义了可以被覆盖的变量,用于定制化部署,例如调整服务数量、环境变量等。
- 微服务内部配置 如
application.properties
或特定框架的配置文件,用于设定SkyWalking Agent的连接参数、服务实例的元数据等。 - Kubernetes配置(k8s/) 包含
.yaml
文件,这些文件定义了微服务、部署(Deployment)、服务(Service)等Kubernetes资源的配置,间接影响项目启动的行为和环境。
请注意,实际配置文件的具体路径和名称可能会根据微服务的不同而变化,且配置内容需要遵循SkyWalking和相关技术栈的指导文档进行适当设置。在进行项目部署和配置修改时,确保查阅最新的官方文档以获得精确指导。