1. 程式人生 > >CMDB資產采集

CMDB資產采集

cmdb 資產采集

Paramiko

import paramiko

private_key = paramiko.RSAKey.from_private_key_file(‘/home/auto/.ssh/id_rsa‘)

# 創建SSH對象

ssh = paramiko.SSHClient()


# 允許連接不在know_hosts文件中的主機

ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())


# 連接服務器

ssh.connect(hostname=‘peng‘, port=22, username=‘peng‘, key=private_key)

# 執行命令

stdin, stdout, stderr = ssh.exec_command(‘df‘)


# 獲取命令結果

result = stdout.read()

# 關閉連接

ssh.close()


SaltStack

1. 安裝和配置

master:

"""

1. 安裝salt-master

yum install salt-master

2. 修改配置文件:/etc/salt/master

interface: 0.0.0.0 # 表示Master的IP

3. 啟動

service salt-master start

"""


minion:

"""

1. 安裝salt-minion

yum install salt-minion


2. 修改配置文件 /etc/salt/minion

master: 192.168.1.100 # master的地址

master:

- 192.168.1.4

- 192.168.1.5

random_master: True


id: peng # 客戶端在salt-master中顯示的唯一ID

3. 啟動

service salt-minion start

"""


2. 授權

master:

"""

salt-key -L # 查看已授權和未授權的slave

salt-key -a salve_id # 接受指定id的salve

salt-key -r salve_id # 拒絕指定id的salve

salt-key -d salve_id # 刪除指定id的salve

"""


3. 執行命令

在master服務器上對salve進行遠程操作:
1)基於shell命令

salt ‘peng‘ cmd.run ‘ifconfig‘

2)基於salt API的方式

import salt.client

local = salt.client.LocalClient()

result = local.cmd(‘peng‘, ‘cmd.run‘, [‘ifconfig‘])


本文出自 “一點點” 博客,請務必保留此出處http://pengai.blog.51cto.com/6326789/1977740

CMDB資產采集