易陆发现互联网技术论坛

 找回密码
 开始注册
查看: 434|回复: 0
收起左侧

ansible-cmdb 获取数据

[复制链接]
发表于 2023-3-27 18:02:15 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?开始注册

x
ansible-cmdb 获取Ansible facts数据的输出,并将其转换为包含系统配置信息的静态HTML概述页面(及其他内容)。
  x) f% [" [- X* N
安装
: Y, S( y; v+ Y7 l/ h& G
yum -y install python-pip

3 P3 ?& c; ^: n  e8 b1 O. P! [- w
pip install ansible-cmdb
使用
生成所有主机得facts信息

' i; \! C+ X3 A" h! }- w! s
- O, d5 h$ R9 P- ?# v* x
ansible -m setup --tree out/ all
生成web页面

( R0 x' W- v3 j* H1 v5 R
. [; l% e+ M" i+ `5 o* r/ v
ansible-cmdb out/ > overview.html

9 j: m' K" G% x- Z2 e' D
9 t3 U2 l" `6 Z/ s
如果facts用了本地缓存,-f 指定缓存目录即可。

4 j, O3 C  l  V6 B9 ?5 Q5 {0 r. x* ^  p/ ]  N8 F6 q
ansible-cmdb -f /path/to/facts/dir > overview.html
以资产列表得形式统计出ansible主机信息。
# M: W$ I$ B' K; b. n; {
0 O0 Y$ j. S# H7 U! ]
# ansible-cmdb -t txt_table --columns name,os,ip,mem,cpus out/
Name       OS          IP              Mem  CPUs  
---------  ----------  --------------  ---  ----  
localhost  CentOS 7.6  192.168.77.130  1g   1  
输出csv格式的主机信息。

! m: C  h4 @' ?: e4 w8 j! q# O9 M! X7 J9 ?$ r
# ansible-cmdb -t csv out/            
"Name","OS","IP","Arch","Mem","MemFree","MemUsed","CPUs","Virt","Disk avail"
"localhost","CentOS 7.6","192.168.77.130","x86_64/x86_64","1g","0g","1g","1","VMware/guest","28.0g, 0.0g"
输出sql文件,导入数据到mysql或者SQLite。
0 w2 |$ Q0 o! _$ L7 q# R" S
; G0 R! M2 \: L' F" b: H
# ansible-cmdb -t sql out/
DROP TABLE IF EXISTS hosts;
CREATE TABLE hosts (
    name VARCHAR(255),
    fqdn VARCHAR(255),
    main_ip VARCHAR(15),
    os_name VARCHAR(80),
    os_version VARCHAR(40),
    system VARCHAR(40),
    kernel VARCHAR(40),
    arch_hardware VARCHAR(12),
    arch_userspace VARCHAR(12),
    virt_type VARCHAR(20),
    virt_role VARCHAR(20),
    cpu_type VARCHAR(60),
    vcpus INT,
    ram FLOAT,
    disk_total FLOAT,
    disk_free FLOAT
);

8 e& ]/ G, l. ?! A
    INSERT INTO hosts (
        name,
        fqdn,
        main_ip,
        os_name,
        os_version,
        system,
        kernel,
        arch_hardware,
        arch_userspace,
        virt_type,
        virt_role,
        cpu_type,
        vcpus,
        ram,
        disk_total,
        disk_free
    ) VALUES (
        "localhost",
        "a23-202-231-167.deploy.static.akamaitechnologies.com",
        "192.168.77.130",
        "CentOS",
        "7.6",
        "Linux",
        "5.1.11-1.el7.elrepo.x86_64",
        "x86_64",
        "x86_64",
        "VMware",
        "guest",
        "Intel(R) Core(TM) i3-4160 CPU @ 3.60GHz",
        1,
        0.9,
        29.8,
        27.4
    );
其他模板格式。
1 D6 q6 s& z( k' e6 u7 X

" g: t5 V6 b* q1 R$ e6 @
ansible-cmdb -t json out/
ansible-cmdb -t markdown out/
您需要登录后才可以回帖 登录 | 开始注册

本版积分规则

关闭

站长推荐上一条 /4 下一条

北京云银创陇科技有限公司以云计算运维,代码开发

QQ|返回首页|Archiver|小黑屋|易陆发现技术论坛 ( 蜀ICP备2026014127号-1 )点击这里给我发消息

GMT+8, 2026-4-8 21:37 , Processed in 0.038734 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

© 2012-2025 Discuz! Team.

快速回复 返回顶部 返回列表