• rtop – 通过SSH监控远程主机


    rtop 是一个简单的、无代理的远程服务器监控工具,可通过 SSH 运行。它不需要在远程机器上安装任何代理软件。

    它的工作原理是建立一个 SSH 会话,并在远程服务器上运行命令来收集系统信息,例如 CPU、磁盘、内存、网络。它每隔几秒钟就会刷新一次信息,就像 top 命令一样。

    系统环境

    Centos8

    安装golang

    检查一下系统是否安装golang:

    [root@server1 ~]# rpm -qa|grep golang
    

    发现没有安装,下面使用yum list golang命令查看一下远程仓库里面是否有改安装包:

    [root@server1 ~]# yum list golang
    Repository AppStream is listed more than once in the configuration
    Repository extras is listed more than once in the configuration
    Repository PowerTools is listed more than once in the configuration
    Repository centosplus is listed more than once in the configuration
    Available Packages
    golang.x86_64                               1.14.12-1.module_el8.3.0+605+410c5674                               AppStream
    

    rtop – 通过SSH监控远程主机rtop – 通过SSH监控远程主机
    发现在AppStream源中有golang安装包,下面开始安装吧:

    [root@server1 ~]# yum -y install golang
    

    为了使用 Go 语言,请在用户主目录下创建一个工作空间。Go 语言会将所有文件保存在这里:

    [root@server1 ~]# mkdir -p ~/go_proj/bin
    

    设置 GOPATH 和 GOBIN 环境变量。GOPATH 是项目工作区,将下面两行内容添加到~/.bashrc配置文件中:

    [root@server1 ~]# vim ~/.bashrc 
    
    export GOPATH=$HOME/go_proj
    export GOBIN=$GOPATH/bin
    

    rtop – 通过SSH监控远程主机rtop – 通过SSH监控远程主机

    安装rtop

    运行go get命令来构建rtop。rtop二进制文件自动保存在$GOPATH/bin下。运行go get之前,确保系统安装了git工具:

    [root@server1 ~]# yum -y install git
    [root@server1 ~]# go get github.com/rapidloop/rtop
    package git:/github.com/rapidloop/rtop: git:/github.com/rapidloop/rtop: invalid import path: malformed import path "git:/github.com/rapidloop/rtop": invalid char ':'
    [root@server1 ~]# go get github.com/rapidloop/rtop
    package golang.org/x/crypto/ssh: unrecognized import path "golang.org/x/crypto/ssh": https fetch: Get "https://golang.org/x/crypto/ssh?go-get=1": dial tcp 216.239.37.1:443: connect: connection refused
    package golang.org/x/crypto/ssh/agent: unrecognized import path "golang.org/x/crypto/ssh/agent": https fetch: Get "https://golang.org/x/crypto/ssh/agent?go-get=1": dial tcp 216.239.37.1:443: connect: connection refused
    package golang.org/x/crypto/ssh/terminal: unrecognized import path "golang.org/x/crypto/ssh/terminal": https fetch: Get "https://golang.org/x/crypto/ssh/terminal?go-get=1": dial tcp 216.239.37.1:443: connect: connection refused
    

    运行go get之后,发现不能下载依赖包。
    rtop – 通过SSH监控远程主机rtop – 通过SSH监控远程主机
    按照下面操作,创建目录,并手动git下载相关依赖:

    [root@server1 ~]# mkdir -p $GOPATH/src/golang.org/x/
    [root@server1 x]# git clone https://github.com/golang/crypto.git
    [root@server1 x]# git clone https://github.com/golang/term.git
    [root@server1 x]# git clone https://github.com/golang/sys.git
    

    rtop – 通过SSH监控远程主机rtop – 通过SSH监控远程主机
    下面再次运行go get就可以了:

    [root@server1 x]# go get github.com/rapidloop/rtop
    

    下面可以看到rtop可以正常运行了。
    rtop – 通过SSH监控远程主机rtop – 通过SSH监控远程主机

    如何使用rtop

    rtop 二进制文件存在于 $GOPATH/bin 中,因此只需运行 $GOBIN/rtop就可以。只需添加远程主机信息,然后使用 rtop 命令进行监控。刷新间隔默认为5秒钟。

    [root@server1 ~]# $GOBIN/rtop root@192.168.43.131
    

    rtop – 通过SSH监控远程主机rtop – 通过SSH监控远程主机
    手动设置刷新间隔以更好地监控。这里设置了2秒刷新间隔。

    [root@server1 ~]# $GOBIN/rtop root@192.168.43.131 2
    

    rtop – 通过SSH监控远程主机rtop – 通过SSH监控远程主机
    rtop – 通过SSH监控远程主机rtop – 通过SSH监控远程主机

    总结

    ]rtop 是一个简单的、无代理的远程服务器监控工具,可通过 SSH 运行。它不需要在远程机器上安装任何代理软件。

  • 相关阅读:
    nodejs基础文档
    vue_项目心得
    常见的布局方式
    前端 + node + ajax mysql 实现数据的提交
    node创建包
    node学习站
    血一般的教训,请慎用Insert Into Select
    继杭州购房宝典后,Github上的这个程序员买房实用指南火了!
    MySQL入门到精通:MySQL 删除数据库
    C语言中的 int** 是什么?这要从int* 和int 说起...
  • 原文地址:https://www.cnblogs.com/linuxprobe/p/15826288.html
Copyright © 2020-2023  润新知