利用paramiko和psutil遠端監控

2022-09-16 16:06:11 字數 1695 閱讀 6594

在需要監控的伺服器上:

a.安裝openssh

b.安裝python3

c.安裝psutil (pip3 install psutil)

d.確保本地與遠端機器的22埠的連通

例如下面的**主要監控cpu、記憶體和硬碟的資訊:

monitor.py

#

!/bin/env python3

import

json

import

psutil as pu

result ={}

mem =pu.virtual_memory()

result[

"記憶體使用率

"] = "

%.2f%%

"%mem.percent

result[

"cpu使用率

"] = "

%.2f%%

"%pu.cpu_percent(interval = 2)

for id in

pu.disk_partitions():

if id.opts != '

cdrom':

disk_name = id.device.split(':'

)[0]

disk_info =pu.disk_usage(id.device)

disk_pct = "

%.2f%%

"%disk_info.percent

result[

"硬碟%s使用率

"%disk_name] =disk_pct

data =json.dumps(result)

print(data)

#

pip3 install paramiko

#pip3 install pandas

**

#

coding:utf-8

import

paramiko

import

json

import

pandas as pd

#建立ssh物件

ssh =paramiko.sshclient()

#允許連線不在know_hosts檔案中的主機

ssh.set_missing_host_key_policy(paramiko.autoaddpolicy())

#連線伺服器

ssh.connect(hostname='

192.168.37.100

', port=22, username='

root

', password='

123456')

#執行命令

stdin, stdout, stderr = ssh.exec_command('

/usr/local/python3/bin/python3 /root/monitor.py')

#獲取命令結果

result =stdout.read()

data =json.loads(result)

result_df = pd.series(data).to_frame('

監控資訊')

print

(result_df)

#關閉連線

ssh.close()

監控資訊

python利用paramiko執行伺服器命令

話不多說直接上 封裝連線 staticmethod defconnect ip,server user,server port,server path 連線伺服器 param return ssh paramiko.sshclient private key paramiko.rsakey.from...

python利用paramiko執行伺服器命令

話不多說直接上 封裝連線 staticmethod defconnect ip,server user,server port,server path 連線伺服器 param return ssh paramiko.sshclient private key paramiko.rsakey.from...

js 利用 和 賦值

對於需要返回boolean型別數值的地方,比如if判斷,邏輯運算子,js物件會預設轉換為boolean型別資料。null,undefined,0,返回false,其他返回true。同時,對於 與 又有這樣的特性 var a b c b預設值 c預設值 a取值true true btrue false...