安装云眼Agent

云眼About 3 min

安装云眼Agent

如何在 Linux/macOS、Windows、Docker 和 Kubernetes 上安装 云眼 Agent。

从源代码运行Agent (Linux/macOS)

要从源代码开发和编译云眼Agent,请执行以下操作:

  1. 安装 Golangopen in new window 变体 1.20+。
  2. 在本地克隆云眼Agent存储库open in new window
  3. 从存储库目录中,打开一个终端并启动云眼Agent:

Shell

make setup

然后

Shell

make run

这将在前台使用默认配置启动云眼Agent。

从源代码运行Agent (Windows)

可以使用帮助程序脚本open in new window来安装必备组件(Golang 和 Git)并在 Windows 环境中编译Agent:

  1. 在本地克隆云眼Agent存储库open in new window
  2. 从存储库目录中,打开 Powershell 终端并运行:

PowerShell

Set-ExecutionPolicy -ExecutionPolicy Unrestricted -Scope CurrentUser .\scripts\build.ps1 .\bin\eyeofcloud.exe

通过 Docker 在本地运行Agent

如果安装了 Dockeropen in new window,则可以将 云眼 Agent 作为容器启动:

  1. 拉取 Docker 镜像:

Shell

docker pull eyeofcloud/agent

默认情况下,这将拉取“最新”标签。还可以通过将变体作为标记提供给 docker 命令来指定特定变体的Agent:

Shell

docker pull eyeofcloud/agent:X.Y.Z

  1. 使用以下命令运行 docker 容器:

Shell

docker run -p 8080:8080 --env EYEOFCLOUD_LOG_PRETTY=true --env EYEOFCLOUD_SERVER_HOST=0.0.0.0 --env EYEOFCLOUD_SERVER_ALLOWEDHOSTS=127.0.0.1 eyeofcloud/agent

这将在前台启动Agent,并向主机公开容器 API 端口 8080。

  1. (可选)可以通过将环境变量传递给上述命令来更改配置,而无需创建 config.yaml 文件。有关更多选项,请参阅配置云眼Agent

码头工人变体控制:

发布新版本时,会将两个映像推送到 Docker 中心open in new window。他们的标签区分了他们:

  • :最新(与 :X.Y.Z 相同)
  • :高山(同:X.Y.Z-高山)

最新和高山的区别在于,最新的是建造的,而阿尔卑斯山是。 FROM scratch``FROM alpine

在 Kubernetes 集群中运行Agent

如果将 Kubernetesopen in new window 作为基础架构的一部分运行并安装了open in new window Helm,可以使用我们的 Helm 图表open in new window轻松地在集群中托管 云眼 Agent:

  1. 从 云眼 的存储库中添加 Helm 图表: eyeofcloud-agent

Shell

helm repo add eyeofcloud-agent https://eyeofcloud.github.io/eyeofcloud-agent-helm

输出应为:

Shell

"eyeofcloud-agent" has been added to your repositories

  1. 然后,安装云眼Agent图表,为部署指定一个名称,如下所示: my-agent

Shell

helm install my-agent eyeofcloud-agent/agent

输出应类似:

Shell

NAME: my-agent LAST DEPLOYED: Tue Jul 12 18:24:27 2022 NAMESPACE: default STATUS: deployed REVISION: 1 NOTES: *** Configuration Summary *** Name Override: [no name override; using generated name] Full Name Override: [no full name override; using generated full name] Image Used: eyeofcloud/agent:latest Service Account: [account name will be generated] Replica Count: 1 Auto-Scaling: [auto-scaling is disabled] Node Selector: [no node selectors applied] Node Affinity: [no node affinity applied] Node Tolerations: [no node tolerations applied] Pod Annotations Applied: [no annotations applied] Pod Security Context: [no pod security context applied] Container Security Context: [no container security context applied] Network Service: Type: ClusterIP Ports: api: 8080 [internal] <== 8080 [external] webhook: 8085 [internal] <== 8085 [external] admin: 8088 [internal] <== 8088 [external] Network Ingress: Run the following in a *nix terminal to access the running ClusterIP service IP address export CLUSTER_IP=$(kubectl get svc --namespace default my-agent -o jsonpath='{.spec.clusterIP}') echo http://$CLUSTER_IP:8080 Resources: [no resources declarations applied] Logging: Level set to DEBUG with friendly formatting ON. SDK Key WILL be included in logs. Environment Variables: [no environment variables applied] Secrets:

  1. (可选)可以通过使用自定义 YAML 文件修改 来更改图表中的默认值,也可以在直接在命令中标记时单独更改。有关更多选项,请参阅 GitHub 自述文件中的修改值open in new window--values``--set``helm install
Last update:
Contributors: “zhangweixue”