CMDB

CMDB 是什么

资产管理系统, CMDB 是自动化运维体系的基石  有了资产管理系统,后面各种标准、流程都可以建立在 CMDB 基础之上,从而实现真正的标准化、自动化、智能化运维,节约运维成本的同时,也降低运维流程混乱带来的操作风险。

CMDB场景

1.代码需要上线   系统把代码提交给cmdb; cmdb在各个服务器上部署

2.监控服务器    

后台用Python去做, 收集一下服务的元信息(IP地址, 硬盘大小, 内存)

前台配合kibana

3.装机服务

服务的元信息 IP地址

4.年底统计

通过cmdb去各台服务器上找

 

开发CMDB的思路和大概做法:

- 使用Python代码执行linux的命令, 并且获取服务器上的对应信息

- 使用Http协议发送执行好的数据

CMDB 模式

agent模式

优点:速度快

缺点:每次都需要部署

场景 :适合实时传递数据的场景 比如把服务器CPU 什么的元信息同步给API 

服务器数量特别多的情况  (如果使用ssh 需要安排发起请求 后面才能拿到结果)

 

SSH模式

import paramiko
   
# 创建SSH对象
ssh = paramiko.SSHClient()
# 允许连接不在know_hosts文件中的主机
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
# 连接服务器
ssh.connect(hostname='c1.salt.com', port=22, username='root', password='123')
   
# 执行命令
stdin, stdout, stderr = ssh.exec_command('df')
# 获取命令结果
result = stdout.read()
   
# 关闭连接
ssh.close()

 

 

 

salt-stack

1. 安装salt-master
    yum install salt-master
2. 修改配置文件:/etc/salt/master
    interface: 0.0.0.0    # 表示Master的IP 
3. 启动
    service salt-master start
"""
slave端:
"""
1. 安装salt-minion
    yum install salt-minion
2. 修改配置文件 /etc/salt/minion
    master: 10.211.55.4           # master的地址
    或
    master:
        - 10.211.55.4
        - 10.211.55.5
    random_master: True
    id: c2.salt.com                    # 客户端在salt-master中显示的唯一ID
3. 启动
    service salt-minion start
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
#linux 命令行调用
salt 'c2.salt.com' cmd.run 'ifconfig'
#python调用
import
salt.client local = salt.client.LocalClient() result = local.cmd('c2.salt.com', 'cmd.run', ['ifconfig'])

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值