跳到主要内容

K8s 方式安装 light-agent

本文档将指导您在 Kubernetes 集群中安装和配置 light-agent。

操作环境说明

本文档涉及两个不同的操作环境:

  1. Lighthouse 平台所在服务器:用于执行镜像推送操作
  2. Kubernetes 管理节点:用于执行所有 Kubernetes 相关操作(如创建 Secret、部署应用等)

请确保在正确的环境中执行相应的命令。

系统要求

Kubernetes 版本要求
  • Kubernetes 1.16 及以上版本
  • 支持 Helm 3.x(如果使用 Helm 安装)
资源要求
  • 每个节点至少 512MB 可用内存
  • 每个节点至少 1GB 可用磁盘空间
网络要求
  • Kubernetes 节点能够访问 Lighthouse 平台
  • 需要确保容器运行时(如 Docker)能够访问指定的镜像仓库
  • 防火墙需开放相关端口(默认 80)

前置条件

  1. 确保已具备以下条件:
    • 有效的 Kubernetes 集群访问权限
    • kubectl 命令行工具
    • 可用的容器镜像仓库
  2. 准备所需信息:
    • Lighthouse 平台访问地址
    • 镜像仓库访问凭证
    • Kubernetes 集群管理员权限

安装步骤

1. 推送镜像到镜像仓库

环境说明

以下操作需要在 Lighthouse 平台所在服务器 上执行。

私有仓库配置

如果使用私有仓库,需要在 Lighthouse 平台所在服务器 上配置 Docker:

  1. 编辑 /etc/docker/daemon.json 文件:
{
"insecure-registries": ["<registry_url>"]
}
  1. 重启 Docker 服务:
systemctl restart docker

在 Lighthouse 平台所在机器上执行:

cd /opt/lighthouse/downloads
REGISTRY_REPO=<your_registry_url> ./pusher.sh -- -u <username> -p <password>
参数说明
  • <your_registry_url>: 镜像仓库地址(需包含项目名称,如 192.168.2.99/light-agent)
  • -u <username>: 镜像仓库用户名(可选)
  • -p <password>: 镜像仓库密码(可选)

2. 配置镜像仓库访问凭证

环境说明

以下操作需要在 Kubernetes 管理节点 上执行,请确保已配置好 kubectl 访问权限。

  1. 创建 Docker 配置密钥:
kubectl create secret docker-registry dockerconfig-secret \
--docker-email=<email> \
--docker-username=<username> \
--docker-password=<password> \
--docker-server=<registry_url>
参数说明
  • <email>: 镜像仓库关联的邮箱地址
  • <username>: 镜像仓库用户名
  • <password>: 镜像仓库密码
  • <registry_url>: 镜像仓库地址(不需要项目名称,如 192.168.2.99)
  1. 获取密钥内容:
kubectl get secret dockerconfig-secret -o jsonpath='{.data.*}'

3. 部署 light-agent

环境说明

以下操作需要在 Kubernetes 管理节点 上执行。

  1. 获取部署模板:
curl -O http://<Lighthouse IP>/downloads/k8s/light-agent-template.yaml
  1. 生成部署配置:
COLLECTOR_SERVER_IP=<Lighthouse IP> \
REGISTRY_REPO=<your_registry_url> \
REGISTRY_CRED=<registry_cred_str> \
envsubst '${REGISTRY_REPO} ${COLLECTOR_SERVER_IP} ${REGISTRY_CRED}' \
<light-agent-template.yaml >light-agent.yaml
参数说明
  • COLLECTOR_SERVER_IP: Lighthouse 平台 IP 地址
  • REGISTRY_REPO: 完整的镜像仓库地址(含项目名称)
  • REGISTRY_CRED: 上一步获取的 Docker 配置密钥
  1. 执行部署:
kubectl apply -f light-agent.yaml

验证部署

环境说明

以下操作需要在 Kubernetes 管理节点 上执行。

使用以下命令监控部署状态:

watch -n 1 kubectl get all -n light-agent
检查要点
  • 确保所有 Pod 状态为 Running
  • 检查 Pod 日志是否有错误信息
  • 验证与 Lighthouse 平台的连接状态

常见问题排查

环境说明

以下操作都需要在 Kubernetes 管理节点 上执行。可以使用以下命令查看详细信息:

# 查看 Pod 状态
kubectl get pods -n light-agent

# 查看 Pod 日志
kubectl logs -n light-agent <pod-name>

# 查看 Pod 详细信息
kubectl describe pod -n light-agent <pod-name>
  1. 镜像拉取失败

    • 检查镜像仓库配置是否正确
    • 验证 Docker 配置密钥是否正确配置
    • 确认网络连接是否正常
  2. Pod 启动失败

    • 检查资源配额是否充足
    • 查看 Pod 详细状态和事件
    • 检查节点状态和调度情况
  3. 数据采集异常

    • 确认 Lighthouse 平台地址配置是否正确
    • 检查网络策略和防火墙设置
    • 查看 Pod 日志中的错误信息

卸载说明

环境说明

以下操作需要在 Kubernetes 管理节点 上执行。

执行以下命令卸载 light-agent:

kubectl delete -f light-agent.yaml
注意事项
  • 卸载前请确保已备份重要数据
  • 卸载操作不可逆,请谨慎执行
  • 建议在维护窗口期进行操作

技术支持

如果您在安装或使用过程中遇到问题:

  1. 收集以下信息:
    • Kubernetes 集群版本和状态
    • light-agent Pod 日志
    • 相关错误信息和事件日志
  2. 联系技术支持团队获取帮助