安装 APO-server
APO 分为两部分:
- APO-server: APO 服务侧组件
- APO-one-agent: APO 用户侧组件,用于采集Kubernetes集群或者虚机环境下被监控业务以及集群、主机信息。
本文档包含使用 Helm Chart 在 Kubernetes 集群上安装和运行 APO-server 的说明。
注意: 不建议用本文档的安装方式将 APO-server 与 APO-one-agnet 安装在同一 Kubernetes 集群中,会产生不必要的资源浪费;如果想要将 APO-server 与 APO-one-agent 部署在同一 Kubernetes 集群中,请参考快速开始文档
准备工作
- 需求至少 4核8G 的硬件资源,磁盘资源根据您的监控规模而定,最小不低于50G。
- 要使用 Helm 安装 APO,请确保已完成以下操作:
- 在计算机上安装 Kubernetes 服务器。有关安装 Kubernetes 的信息,请参阅官方文档安装 Kubernetes。也可参考简化安装方式Sealos 部署 Kubernetes集群(需8核16G)。
- 安装 Helm 的最新稳定版本。有关安装 Helm 的信息,请参阅安装 Helm。
- 网络防火墙配置: 参照《附录1:网络端口列表》说明开放端口
- 如果您使用云服务商提供的K8s集群:建议参照《生产环境部署建议》,将APO的ClickHouse与VictoriaMetrics进行托管处理或者使用非持久化配置;详情
设置 APO Helm 仓库
要设置 APO Helm 存储库,以便在计算机上下载正确的 APO Helm charts,请完成以下步骤:
使用下方命令添加 apo
Helm 仓库
helm repo add apo https://apo-charts.oss-cn-hangzhou.aliyuncs.com
helm repo update apo
配置 APO 组件
创建文件apo-values.yaml
,并根据您的需求进行定义,并在部署阶段挂载配置。
# APO-server 配置
# 持久化配置,推荐打开,默认为false
# 如果为持久化配置则需要根据PVC为组件创建PV
altinity-clickhouse-operator:
clickhouse:
persistence:
enabled: true
victoria-metrics-single:
server:
persistentVolume:
enabled: true
apo-backend:
persistence:
enabled: true
部署 APO Helm charts
运行以下命令,在指定命名空间中部署 APO 。
helm install apo apo/apo -n apo --create-namespace \
-f apo-values.yaml
验证
见到类似输出既代表安装成功
NAME: apo
LAST DEPLOYED: Fri Aug 9 15:48:42 2024
NAMESPACE: apo
STATUS: deployed
REVISION: 1
NOTES:
==================================================
___ ___ ___
/\ \ /\ \ /\ \
/::\ \ /::\ \ /::\ \
/:/\:\ \ /:/\:\ \ /:/\:\ \
/::\~\:\ \ /::\~\:\ \ /:/ \:\ \
/:/\:\ \:\__\ /:/\:\ \:\__\ /:/__/ \:\__\
\/__\:\/:/ / \/__\:\/:/ / \:\ \ /:/ /
\::/ / \::/ / \:\ /:/ /
/:/ / \/__/ \:\/:/ /
/:/ / \::/ /
\/__/ \/__/
Official Website: https://apo.kindlingx.com/
APO Frontend: http://<NodeIP>:31364
Grafana: http://<NodeIP>:31364/#/system-dashboard
==================================================
输入下方命令检查pod是否启动成功
kubectl get po -n apo
遇到问题:可以参考《常见问题》进一步排查,或者联系我们
访问 APO
您可以通过以下方式访问 APO,其中 NodeIP
为集群中任意一个节点的 IP 地址。
- APO 向导式可观测性平台地址:
http://<NodeIP>:31364
- Grafana 地址:
http://<NodeIP>:31364/#/system-dashboard
下一步:监控服务器和应用
请参阅文档安装 APO-one-agent
以监控服务器和应用:
- 监控 Kubernetes 集群中的服务器和应用: 使用 Helm Chart 在 Kubernetes 上安装和运行
APO-one-agent
。 - 监控传统服务器和应用: 支持监控直接启动的服务和采用 Docker 启动的服务。
- 生产环境部署建议: 用于生产环境的部署 APO 时的一些建议部署配置
更新与卸载
更新 APO Helm charts 配置
如果您的 APO 配置有更新,则在更新完apo-values.yaml
文件后使用下方命令进行更新
helm upgrade apo apo/apo -n apo \
-f apo-values.yaml
卸载 APO Helm charts
kubectl delete clickhouseinstallation apo -napo
helm uninstall apo -n apo
kubectl delete ns apo
更多配置
本文档提供的为 APO 部署的基础配置,如果您要进行更多配置更改,请从 APO Helm Charts 库中下载values.yaml
文件:
helm show values apo/apo > values.yaml
附录
附录1 网络端口列表
- APO-server 需要将以下端口暴露给桌面浏览器用于访问,均可通过部署配置更改:
组件名 | 开放端口 | 说明 |
---|---|---|
apo-front | 31364 | APO 向导式观测平台前端 |
- APO-server 需要将以下端口暴露给 APO-one-agent 节点用于收集数据,均可通过部署配置更改:
组件名 | 开放端口 | 说明 |
---|---|---|
apo-collector | 30044 | 用于接收链路回溯采样数据 |
apo-vector | 30310 | 用于接收并处理日志数据 |
apo-otel-collector-gateway | 30317 | 用于接收可观测性数据,OTLP gRPC 协议 |
apo-otel-collector-gateway | 30319 | 用于接收 K8s 集群数据,OTLP gRPC 协议 |
apo-backend | 31363 | 用于提供查询 API 服务 |
附录2 部署 APO 社区版
默认情况下,APO 会安装企业版,相比于社区版,企业版提供更多数据分析能力,区别请查阅版本区别。
当前APO的企业版本功能正在免费公测中🔥!!!
如果需要也可以使用社区版本,要部署社区版本请在 Helm 仓库中搜索APPVERSON
带ce
结尾的 charts
版本号.
helm search repo apo -l
并在 Helm 安装的时候携带该版本参数
# 例如
helm install apo apo/apo -n apo --create-namespace \
--set apo-one-agent.enabled=true \
--version x.x.xxx