如何在 Windows 11 或 10 上通过 WSL 安装 Sensu Go 监控工具
liuian 2025-09-01 08:14 6 浏览
通过在 Windows 11 或 10 上使用 WSL(Windows 子系统 for Linux)安装 Sensu Go 监控工具,开始监控你的服务器系统和网络设备。
什么是 Sensu Go?
Sensu 是一个适用于云环境的开源基于代理的监控工具。它用 Ruby 编写,使用 RabbitMQ 进行消息传递,使用 Redis 进行数据存储。而 Sensu Go 是通过完全用 Go 语言重写原始版本开发的,以提供新功能并减少运维开销。
Sensu Go 是一个免费和付费的可观测性平台,支持服务器性能指标,并能够填补指标、日志和追踪之间监控相关性的差距。可以无缝集成现有的监控技术,如 Nagios、StatsD、Telegraf、Prometheus 等。
Sensu Go 有三个版本:免费版、专业版和企业版。免费版提供免费监控最多 100 个节点,而专业版每月每个节点收费 3 美元,最多支持 3000 个节点,适合中小企业。如果需要更多,企业版每个额外节点收费 5 美元,并提供其他商业功能。
Sensu Go 的组件包括 Sensu 后端(服务器组件)和安装在要监控的系统上的 Sensu 代理。这些可以是服务器、虚拟机或容器。除了这两个组件外,它还提供 Sensuctl,这是一个命令行工具,用于通过 Sensu 的 HTTP API 管理 Sensu Go。
在 Windows 10 或 11 上安装 Sensu Go 的步骤
要在 Windows 11 或 10 上开始使用 Sensu Go 监控工具,你的系统应有 10 GB 的空闲空间和 4GB 的 RAM。如果在生产环境中使用,则建议使用 8GB 的 RAM。
1. 在 Windows 11 或 10 上启用 WSL
这里我们使用 Windows 上的 Ubuntu 22.04 WSL 应用程序,你也可以使用 Debian 或 Ubuntu 20.04。如果你已经启用了 WSL 1 或 2 应用程序并且可以使用它,那么你可以跳到下一步。否则,首先安装它。
2. 在 Ubuntu 中添加 Sensu 仓库
下一步是在我们的 Ubuntu WSL 系统上添加仓库,该仓库将提供我们需要安装 Sensu 后端的软件包,因为默认系统仓库中没有 Sensu 后端。因此,在你的命令终端中运行以下命令。
sudo apt install curl
curl -s https://packagecloud.io/install/repositories/sensu/stable/script.deb.sh | sudo bash
3. 在 Windows 10 或 11 上安装 Sensu Go 后端
我们已经在 Ubuntu 22.04/20.04 系统上有了 Sesnu 仓库,现在我们可以使用系统的 APT 包管理器轻松安装后端。以下是需要遵循的命令:
sudo apt install sensu-go-backend
4. 启动 Sensu Go 后端服务
我们需要一个后端配置文件来启动 Sensu Go 服务,否则如果你尝试启动服务,将会出现错误。因此,首先,使用以下命令下载它:
sudo curl -L https://docs.sensu.io/sensu-go/latest/files/backend.yml -o /etc/sensu/backend.yml
sudo mkdir /var/run/sensu/
现在,启动服务:
sudo systemctl start sensu-backend
要检查服务状态,使用:
sudo systemctl status sensu-backend
5. 配置用户名和密码
一旦你确定 Sensu Go 后端正在无错误地运行,设置用户名和密码以访问此监控工具的基于 Web 的图形用户界面。为此,我们需要设置两个环境变量,并使用所需的凭据值来设置管理员用户和密码。设置环境变量后,使用 sensu-backend init 命令初始化它。
方法 1:
export SENSU_BACKEND_CLUSTER_ADMIN_USERNAME=yourusername
export SENSU_BACKEND_CLUSTER_ADMIN_PASSWORD=yourpassword
sensu-backend init
如果系统提示允许 Sensu 后端通过防火墙,请不要忘记点击 “允许访问” 按钮。
方法 2:
或者,用户可以使用以下命令以交互方式设置用户名和密码,而不是使用上述方法:
sensu-backend init --interactive
系统将提示你设置用户名和密码以及 API。但是,API 密钥是可选的 —— 按 Enter 键跳过它。
6. 访问 Web 界面
打开一个本地或远程系统浏览器,该浏览器可以访问你安装了 Sensu GO 监控解决方案的服务器的 IP 地址。
将你的浏览器指向以下格式的服务器 IP 和端口号:
http://server-ip-address:3000
7. 登录
使用你在本教程 步骤 5 中为 Sensu 设置的管理员凭据。之后点击 登录 按钮。
8. Sensu Go 监控仪表板
最后,Sensu Go 的仪表板出现了,你可以从这里获取通过 Sensu 代理设置监控的系统的指标概览。但是,为此,我们需要手动在我们想要监控的每个系统上安装代理。转到下一步了解如何操作。
9. 安装 Sensu Go 代理
假设你想使用 Sensu GO 监控某个远程系统,为此,首先我们需要确保该系统已安装 Sensu 代理。
对于 Ubuntu 或 Debian
curl -s https://packagecloud.io/install/repositories/sensu/stable/script.deb.sh | sudo bash
sudo apt-get install sensu-go-agent
对于 RHEL/CentOS/Rocky Linux/AlmaLinux/Oracle Linux
curl -s https://packagecloud.io/install/repositories/sensu/stable/script.rpm.sh | sudo bash
sudo yum install sensu-go-agent
对于 Windows
前往 Sensu 网站并下载代理可执行文件 —— 这里是链接
https://sensu.io/downloads
10. 如何在 Linux 上配置代理
假设你已经在 Linux 上安装了 Sensu Go 代理,例如 Ubuntu/Debian 或 RedHat(使用上一步骤)。现在,你希望对其进行配置,以便后端能够识别该系统并将其添加到监控列表中。
这里我们使用 Ubuntu/Debian,但其他 Linux 系统的方法也相同。
复制代理配置文件
sudo curl -L https://docs.sensu.io/sensu-go/latest/files/agent.yml -o /etc/sensu/agent.yml
编辑代理文件并添加 Sensu 后端服务器 URL。
sudo nano /etc/sensu/agent.yml
删除 #,如下图所示,从名称、命名空间、后端 URL 和 IP 地址中移除注释。之后,将地址 127.0.0.1 替换为你的 Sensu Go 后端服务器地址。
使用 Ctrl+O 保存文件,按 Enter 键,然后退出 —— Ctrl+X。
现在,重启代理以使更改生效。
sudo systemctl restart sensu-agent
11. 在 Windows 10 或 11 上开始监控
在你想要监控的系统上安装并配置 Sensu Go 代理后,刷新在 Windows 11 或 10 WSL Linux 应用程序上运行的 Sensu Go Web 界面,以在仪表板上查看添加的设备。你可以看到我们得到了两个实体:一个是后端,另一个是代理。
12. 如何安装 Sensuctl 命令工具
Sensuctl 是 Sensu 监控解决方案提供的一个工具,用于通过命令行管理其资源。它通过调用 Sensu 的底层 API 来创建、读取、更新和删除事件、实体和资源。Sensuctl 可用于 Linux、macOS 和 Windows。
以下是安装它在 Debian 或 Ubuntu 系统上的方法。
curl -s https://packagecloud.io/install/repositories/sensu/stable/script.deb.sh | sudo bash
sudo apt install sensu-go-cli
了解更多关于这个命令工具及其用法的信息,请访问 官方文档页面
13. 卸载后端和代理(可选)
如果你不再需要在 Windows WSL 系统上安装 Sensu Go 后端和代理,以下是卸载它们的命令。
sudo apt autoremove --purge sensu-go-backend
sudo apt autoremove --purge sensu-go-agent
相关推荐
- C语言学习从内存堆栈视角,给这段枚举代码做个 "内存透视"
-
从内存堆栈视角,给这段枚举代码做个"内存透视"#include<stdio.h>enumDAY{MON=1,TUE,WED,THU,FR...
- Python基础:枚举,都有哪些特点和使用场景呢?
-
在Python编程语言中,枚举(Enumeration)是一种特殊的类,用于为一组常量创建一个名称空间。枚举类在Python3.4中被引入,提供了一种更加直观和方便的方式来处理一组相关的常量。枚举类...
- Java枚举你真的会用吗_java枚举怎么使用
-
概述Java中枚举,大家在项目中经常使用吧,主要用来定义一些固定值,在一个有限的集合内,比如在表示一周的某一天,一年中的四季等。那你了解枚举的本质吗?了解枚举的一些常见用法吗?枚举介绍和使用枚举主要用...
- 反射、枚举以及Lambda表达式_反射getmethod
-
一、反射1.定义Java的反射(reflection)机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法(即使是私有的);对于任意一个对象,都能够调用它的任意方法和属性,那么,我们就...
- 一个高效使用cursor开发项目的方法,怎么让 AI 写的代码不跑题?
-
最近又用cursor做了一个小应用,番茄时钟,用来管理自己的时间,提高效率。然后使用cursor开发的过程中。有了一些新的感悟。找到了一条可以让Curosr不跑题的办法。生成一份详细的项目资...
- 前端铜九铁十面试必备八股文——工程化
-
常用的git命令gitclone:克隆远程仓库到本地。gitinit:在当前目录初始化一个新的Git仓库。gitadd:将文件添加到暂存区,准备提交。gitcommit-m"co...
- IntelliJ IDEA 2025.2 的主要更新亮点
-
以下是该版本的一些关键改进与功能更新:AI增强体验离线Java代码补全:AI助手现在支持在离线模式下进行Java代码块建议,并允许用户选择本地代码模型使用。AIAssistant新增...
- 一行命令,AI 直接写代码!OpenAI 正式发布 Codex CLI
-
【一句话速读】OpenAI把2021年的Codex品牌复活,推出全新CodexCLI——一个本地运行的轻量级编码代理。只需npmi-g@openai/codex,它就能在终端里帮...
- 如何使用高级TypeScript模式构建可扩展的QA框架
-
TypeScript自动化QA(7部分系列)TypeScript第一步:自动化QA实用路线图如何在TypeScript中使用数组和对象构建强大的QA自动化脚本如何掌握TypeScript基础...
- Bun JS工具包新增MySQL驱动和密钥管理功能
-
Bun团队发布了其JavaScript打包器和运行时的1.2.21版本,该工具使用Zig语言编写,新增了包括MySQL和SQLite内置驱动、YAML解析器以及用于工具和本地开发的密钥管理器等功能。新...
- 编码 10000 个小时后,开发者悟了:“不要急于发布!”
-
【CSDN编者按】在软件开发的道路上,时间是最好的老师。根据“一万小时定律”,要成为某个领域的专家,通常需要大约一万小时的刻意练习。本文作者身为一名程序员,也经历了一万小时的编程,最终悟出了一个道理...
- 一文说明,TypeScript 的装饰器_typescript logo
-
●装饰器(Decorators)●注意:装饰器目前是一项实验性特性,在未来的版本中可能会发生改变●装饰器一般使用在以下几个地方○类○类属性○类方法○类方法的参数○通过这些我们也能看得出来,...
- 前端小哥哥:如何使用typescript开发实战项目?
-
前言笔者上一篇文章:主要写了typescript的用法和核心知识点总结,这篇文章将通过一个实际的前端案例来教大家如何在项目中使用typescript.你将收获如何使用umi快速搭建一个基于React...
- 一篇文章搞懂TypeScript_typescript implements
-
TypeScript是JavaScript的超集,一方面给动态类型的js增加了类型校验,另一方面扩展了js的各种功能。原始数据类型字符串数值布尔nullundefinedSymbolBi...
- TypeScript的any和unknown,用错一个就是线上Bug
-
在TypeScript开发中,类型系统是我们抵御运行时错误的第一道防线。但两个特殊类型——any和unknown,却常常被误用,成为线上故障的隐形推手。本文通过真实案例解析,告诉你为什么unknown...
- 一周热门
-
-
【验证码逆向专栏】vaptcha 手势验证码逆向分析
-
Python实现人事自动打卡,再也不会被批评
-
Psutil + Flask + Pyecharts + Bootstrap 开发动态可视化系统监控
-
一个解决支持HTML/CSS/JS网页转PDF(高质量)的终极解决方案
-
再见Swagger UI 国人开源了一款超好用的 API 文档生成框架,真香
-
网页转成pdf文件的经验分享 网页转成pdf文件的经验分享怎么弄
-
C++ std::vector 简介
-
飞牛OS入门安装遇到问题,如何解决?
-
系统C盘清理:微信PC端文件清理,扩大C盘可用空间步骤
-
10款高性能NAS丨双十一必看,轻松搞定虚拟机、Docker、软路由
-
- 最近发表
- 标签列表
-
- python判断字典是否为空 (50)
- crontab每周一执行 (48)
- aes和des区别 (43)
- bash脚本和shell脚本的区别 (35)
- canvas库 (33)
- dataframe筛选满足条件的行 (35)
- gitlab日志 (33)
- lua xpcall (36)
- blob转json (33)
- python判断是否在列表中 (34)
- python html转pdf (36)
- 安装指定版本npm (37)
- idea搜索jar包内容 (33)
- css鼠标悬停出现隐藏的文字 (34)
- linux nacos启动命令 (33)
- gitlab 日志 (36)
- adb pull (37)
- python判断元素在不在列表里 (34)
- python 字典删除元素 (34)
- vscode切换git分支 (35)
- python bytes转16进制 (35)
- grep前后几行 (34)
- hashmap转list (35)
- c++ 字符串查找 (35)
- mysql刷新权限 (34)