您好,登录后才能下订单哦!
密码登录
登录注册
点击 登录注册 即表示同意《亿速云用户服务条款》
# Linux下如何使用Glances
## 一、Glances简介
### 1.1 什么是Glances
Glances是一个基于Python开发的跨平台系统监控工具,采用C/S架构设计,能够通过 curses(文本用户界面)或 Web界面提供实时的系统性能监控。其名称源自"GLobal ANd CES",意为全局监控与简洁展示。
### 1.2 核心特性
- **多维度监控**:CPU、内存、磁盘、网络、进程等
- **跨平台支持**:Linux/Unix/Windows/macOS
- **多种展示模式**:终端界面/Web界面/RESTful API
- **低资源消耗**:Python编写,运行效率高
- **插件系统**:支持扩展监控项
- **告警功能**:可配置阈值告警
### 1.3 同类工具对比
| 工具名称 | 语言 | 界面类型 | 特色功能 |
|------------|---------|----------------|------------------------|
| Glances | Python | TUI/Web/API | 全功能、可扩展 |
| htop | C | TUI | 交互式进程管理 |
| nmon | C | TUI | IBM开发,专业性能监控 |
| Netdata | C | Web | 实时可视化仪表盘 |
## 二、安装与配置
### 2.1 基础安装方法
#### Ubuntu/Debian系统
```bash
sudo apt update
sudo apt install glances
sudo yum install epel-release
sudo yum install glances
pip3 install glances[all]
# 支持Web界面
pip3 install bottle
# 支持GPU监控(需要nvidia-ml)
pip3 install nvidia-ml-py3
# 支持Docker监控
pip3 install docker
默认配置文件路径:/etc/glances/glances.conf
重要配置项示例:
[global]
refresh=2 # 刷新频率(秒)
theme=white # 界面主题
[CPU]
user_careful=50 # CPU警告阈值
[memory]
careful=70 # 内存警告阈值
glances # 默认启动
glances -t 3 # 设置3秒刷新间隔
glances --disable-plugin docker # 禁用特定插件
快捷键 | 功能描述 |
---|---|
q | 退出程序 |
c | 按CPU%排序进程 |
m | 按内存%排序进程 |
d | 显示/隐藏磁盘IO信息 |
n | 显示/隐藏网络信息 |
f | 显示/隐藏文件系统信息 |
w | 删除警告日志 |
CPU [||| 24.1%] # 总使用率
user: 18.2% # 用户空间占用
system: 5.7% # 内核空间占用
iowait: 0.2% # IO等待占比
load: 1.23 2.01 1.89 # 1/5/15分钟负载
MEM [|||||55.3%] 3.2/5.8GB
SWAP [|10.1%] 0.2/2.0GB
buffers: 234MB cached: 1.2GB
glances -s -B 0.0.0.0 # 监听所有接口
glances -c @server_ip # 密码认证
# 生成加密密码
glances --password
# 使用SSL加密
glances -s --ssl -C /path/to/cert.pem
glances -w # 启动Web服务
# 浏览器访问 http://<IP>:61208
高级Web配置:
[webserver]
port = 61208
bind = 0.0.0.0
auth = True # 启用认证
password = $6$salt$hash # SHA-256加密密码
curl http://localhost:61208/api/3/mem/free
API返回示例:
{
"free": 1234567890,
"unit": "byte"
}
示例插件模板:
#!/usr/bin/env python
from glances.plugins.glances_plugin import GlancesPlugin
class ExamplePlugin(GlancesPlugin):
"""示例插件模板"""
def __init__(self, args=None):
super(ExamplePlugin, self).__init__(args=args)
def update(self):
return {"example": 123}
安装自定义插件:
cp example.py /usr/local/lib/python3.8/site-packages/glances/plugins/
[alert]
crit=90 # 严重阈值
warn=70 # 警告阈值
repeat=60 # 告警重复间隔(秒)
glances --export prometheus
Prometheus配置示例:
scrape_configs:
- job_name: 'glances'
static_configs:
- targets: ['glances-server:61208']
glances --export csv --export-csv-file /var/log/glances.csv
glances --export influxdb
# 限制监控项目
glances --disable-plugin sensors,irq
# 调整采集频率
glances -t 5 # 5秒刷新
Docker运行示例:
docker run --pid host -v /var/run/docker.sock:/var/run/docker.sock:ro -p 61208:61208 -d glances/glances
解决方案:
pip3 install --upgrade psutil
glances --debug
检查步骤:
netstat -tulnp | grep 61208
sudo ufw allow 61208/tcp
graph TD
A[Glances Server] -->|收集数据| B[InfluxDB]
B --> C[Grafana]
C --> D{告警判断}
D -->|邮件通知| E[管理员]
D -->|SMS通知| F[运维手机]
# 监控特定进程
glances --process-name python
# 生成性能报告
glances --export html --export-html-file report.html
本文档最后更新于:2023年10月
Glances当前稳定版本:3.3.1
测试环境:Ubuntu 22.04 LTS / Python 3.10 “`
这篇文章共计约3200字,采用Markdown格式编写,包含: 1. 多级标题结构 2. 代码块示例 3. 表格对比 4. 流程图示意 5. 配置示例 6. 版本兼容性说明 7. 安全建议 8. 故障排查指南
可根据实际需要调整各部分内容的详细程度或增加具体案例。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。