netdata – Linux 实时监控工具

简介

之前介绍过数据中心基础设施数据库: netbox ,今天介绍的是 linux 的实时监控工具 netdata,亮点是可视化(全部都是图表)和实时,页面刷新间隔是 1s,非常迅速。[点击文章可以查看截图]。

安装

起码在 gtt 写博客的时候,仍然需要从源码安装,安装步骤非常简单,基本按照 github 上的 wiki 来做即可

gtt 使用的是 centos 所以执行这些命令:

$ yum install zlib-devel libuuid-devel libmnl-devel gcc make git autoconf autoconf-archive
查看详细

Linux 到底怎么看内存使用量

前言

说到内存使用率,直觉上似乎内存就像冰箱,塞了东西的地方是已用的,剩下就是空余的。但是在 Linux 中没有这么简单。

Free

查看内存使用情况一般用 free 命令,输出结果大多是这样的:

             total       used       free     shared    buffers     cached
Mem:         16066      15390        676          0        305       4208
-/+ buffers/cache:      10878       5190
Swap:         4095        108       3987

这和冰箱完全不一样。除了total used free 外,shared,buffers,cached 的含义都让新手十分困惑。

先看第一行的 6 个数字:

Total 很好理解,内存总量,如下图所示。… 查看详细

解决 ‘blocked for more than 120 seconds’

问题概要

内核版本: 2.6.32-573.el6.x86_64
发行版:centos-release-6-4.el6

在日志文件 /var/log/message 中发现:

Sep 26 13:01:57 localhost kernel: [<ffffffff811b1ba2>] ? alloc_fd+0x92/0x160
Sep 26 13:01:57 localhost kernel: [<ffffffff8118e867>] do_sys_open+0x67/0x130
Sep 26 13:01:57 localhost kernel: [<ffffffff8118e970>] sys_open+0x20/0x30
Sep 26 13:01:57 localhost kernel: [<ffffffff8100b0d2>] system_call_fastpath+0x16/0x1b
Sep 26 13:01:57 localhost kernel: INFO: task xxxxxx:22455 blocked for more than
查看详细

Linux 的多线程下载工具 Axel

Axel [‘æksl]

中文意思:(花样滑冰)前外一周半跳。
Axel jump

一个多线程,支持断点续传的下载工具,如果你嫌 wget 下载慢,可以试试它。

安装

ubuntu/debian

sudo apt-get install axel

centos/redhat,默认源里没有:

wget -c http://pkgs.repoforge.org/axel/axel-2.4-1.el6.rf.x86_64.rpm
rpm -ivh axel-2.4-1.el6.rf.x86_64.rpm

使用

axel  http://s.gaott.info/go1.7.1.linux-amd64.tar.gz
axel -n 2 http://s.gaott.info/go1.7.1.linux-amd64.tar.gz # 最多2个连接同时下载
查看详细

saltstack 常用命令

Minion 管理

列出所有接受和未接受的 key

salt-key -L

一次性接受所有的新 key

salt-key -A

接受一个 monion

salt-key -a minion

删除一个 minion

salt-key -d minion

查看 Minion 连接状态

所有在线 minion

salt-run manage.up

所有离线的 minion

salt-run manage.down

所有 minion

salt-run manage.status

查看运行的 job 信息

常用 module

主动 ping 所有 minion

salt "*" test.ping

查看某个软件的版本

salt "*" pkg.version "openssh-server"

安装软件

salt "*" pkg.install dstat

判断进程是否存在

salt "*" ps.grep
查看详细