找回密码
 注册
查看: 558|回复: 3

ansible-cmdb使用方法 安装流程

[复制链接]

1

主题

0

回帖

12

积分

管理员

积分
12
QQ
发表于 2023-3-27 15:00:01 | 显示全部楼层 |阅读模式

Running from github source:

$ cd ansible-cmdb
+ Z4 Y1 `9 Q$ P. k" l) d$ export PYTHONPATH=lib0 w$ `6 Y+ `& G1 n" L9 M+ G" l$ K, K
$ src/ansible-cmdb examples/out > ~/cmdb.html, A/ A+ O( s- s! ?1 I2 o- ]) |

/ k3 R" d% q$ M; o$ src/ansible-cmdb -i examples/hosts examples/out > ~/cmdb.html6 L4 [7 w# M$ Y

" i# c/ J# g" C* k- U# h3 s) J& e$ src/ansible-cmdb -p local_js=1 -i examples/hosts examples/out > ~/cmdb.html
- W% t& w2 ~( h  }7 o, [/ k8 [$ v& k# Y  q" @2 c+ o4 a

; O- D  ]4 `5 H* S/ b" X

Installing from github source:

$ cd ansible-cmdb$ sudo python ./setup.py install$ ansible-cmdb ansible-cmdb/examples/out > ~/cmdb.html$ ansible-cmdb -i ansible-cmdb/examples/hosts ansible-cmdb/examples/out > ~/cmdb.html$ ansible-cmdb -p local_js=1 -i ansible-cmdb/examples/hosts ansible-cmdb/examples/out > ~/cmdb.html$ sudo pip uninstall mako$ sudo pip uninstall pyyaml$ sudo pip uninstall ansible-cmdb$ sudo rm /usr/local/bin/ansible-cmdb

Installing from source tarbal:

$ tar -vxzf ansible-cmdb-*.tar.gz
* n% T: ^0 i, D% k9 S" r
  c3 Z: ?4 {0 Q$ cd ansible-cmdb-*
$ Q, i" V0 V, ?0 W; L9 d: ]
  Z$ Y9 j+ W" H  w, K$ sudo make install
8 J+ S* }3 ?# ]1 T! c0 P3 L! E0 v0 J3 K. e: N5 |+ Y
$ ansible-cmdb out > ~/cmdb.html
( Q* a/ Y/ ?( B) F
7 |9 u7 _0 j6 U$ ~" A- L" K8 `# _$ ansible-cmdb -i hosts out > ~/cmdb.html; n8 B9 R. e7 j  |3 f: l
& z7 x% V5 ]4 e- R3 w' _
$ ansible-cmdb -p local_js=1 -i hosts out > ~/cmdb.html9 }) l1 G+ m+ O& X2 g, x
% f/ N% f5 G, V
$ cd ansible-cmdb-*& Y2 ?* Q( W* X( G1 P# ]
/ n4 m7 m; ^- O3 K* T
$ sudo make uninstall
& h$ _5 o& o) p4 ?
- u6 [, {! X; D4 [" D1 Y& k- x7 W" E5 E! `2 K

Installing from .deb file:

" _& W" t) ^; G  R2 n

$ dpkg -i -i ansible-cmdb-*.deb  k6 z7 W  l6 t% b

, ]8 X; M! k) ~, t# o4 ^* T$ ansible-cmdb out > ~/cmdb.html
2 L2 {9 J! c, x0 x+ U- `
8 L0 k2 A8 s1 m; w, T6 U$ s" x$ ansible-cmdb -i hosts out > ~/cmdb.html
  P" v: l1 [4 s) ~. n6 _6 ~
! w" A/ t9 g1 U! v$ ansible-cmdb -p local_js=1 -i hosts out > ~/cmdb.html9 i7 k! J+ d- @! @/ Y$ y/ N

7 w" A1 z+ z, \5 l) x) @0 q$ sudo dpkg --purge ansible-cmdb. |: ^  F8 |3 \
' k) ], o  |* r: I# w. H
/ u. K" n. E5 I* |* Z

Installing from .rpm file:

$ sudo yum install ansible-cmdb*.rpm9 F# z) }+ q% h1 C
  C+ X8 S0 ?! J1 N! ~+ c0 Y
$ ansible-cmdb out > ~/cmdb.html
. O: K% S3 s5 i4 s5 P; a# J- c0 U( K1 b7 O0 r4 p3 D; i
$ ansible-cmdb -i hosts out > ~/cmdb.html  p9 N6 f  Z0 _& F# C% E

% }5 A( V! G/ ?1 Q$ ansible-cmdb -p local_js=1 -i hosts out > ~/cmdb.html
1 q6 m. a: E/ f" L; c3 i
# t" f; T& b) u. j5 a" m$ sudo yum uninstall ansible-cmdb1 X8 M) \8 D& |7 O

$ N+ F+ P" @4 t+ L9 mLicense

Ansible-cmdb is licensed under the GPLv3:

This program is free software: you can redistribute it and/or modifyit under the terms of the GNU General Public License as published bythe Free Software Foundation, either version 3 of the License, or(at your option) any later version.This program is distributed in the hope that it will be useful,but WITHOUT ANY WARRANTY; without even the implied warranty ofMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See theGNU General Public License for more details.You should have received a copy of the GNU General Public Licensealong with this program.  If not, see <http://www.gnu.org/licenses/>.For the full license, see the LICENSE file.: N) a% M' o/ h. Z
5 ]) Y+ P* N; @3 a& H

. q' ^; D3 ]$ ]! i- g; a9 v3 {
* k( ?1 ~8 X' G, ?  R
; S$ P6 u. S" e4 d  n3 w
( ~% `0 b! @% L3 G4 M4 c# _4 o4 I
- a5 M/ e4 j; z- p( v6 W3 u, J0 W
! h" S  Y- g+ I# F4 y

6 I% U5 g1 J' D# P% s5 E; Y. Q
# K  z5 w  ^- q' i& k1 l" D
5 S4 I; |- A7 k! u8 Y6 A$ [
+ s& X' k$ N4 L# @1 Q2 D3 m1 B- V/ g

3 f, ]; F8 U' k4 u: MRunning from github source:
# R4 d$ [0 j8 |- O1 M0 X5 G! H+ G% v+ ?) z3 c
$ cd ansible-cmdb' N+ U1 {% |$ ~- o
$ export PYTHONPATH=lib
' O/ n: |0 F$ S. X! F; L$ src/ansible-cmdb examples/out > ~/cmdb.html
3 Z# v3 e7 c# M6 H2 z$ src/ansible-cmdb -i examples/hosts examples/out > ~/cmdb.html
+ M9 s3 X2 s  f% Z' l$ src/ansible-cmdb -p local_js=1 -i examples/hosts examples/out > ~/cmdb.html
" j) q2 Y& v! i3 c( ?7 D  @  t5 {2 CInstalling from github source:" p/ A4 W5 s" y
' u9 w3 T2 X4 ~4 m1 a. v3 Q6 `" d
$ cd ansible-cmdb+ t4 M$ _/ O: b! q! P9 W9 O8 V: u
$ sudo python ./setup.py install  f, [$ d! r  o9 n) W8 Z
$ ansible-cmdb ansible-cmdb/examples/out > ~/cmdb.html
/ \1 f0 `$ T, B# L( i5 {3 E$ ansible-cmdb -i ansible-cmdb/examples/hosts ansible-cmdb/examples/out > ~/cmdb.html
/ N1 c) t# _0 Y1 T$ ansible-cmdb -p local_js=1 -i ansible-cmdb/examples/hosts ansible-cmdb/examples/out > ~/cmdb.html
/ b( C* z3 c1 b0 R' K, Q$ D7 H$ ?  S2 n$ sudo pip uninstall mako
3 {8 T; S- ?1 ?! a$ sudo pip uninstall pyyaml
2 \' D; q: l1 s/ Z' b$ sudo pip uninstall ansible-cmdb
- c  B  k- M( o6 k( D! n$ sudo rm /usr/local/bin/ansible-cmdb
0 c9 h8 N, h; O- R0 n) ^, VInstalling from source tarbal:
3 R4 z! f3 i3 ]% k, G4 {& _: ?! D' s) a% t' I6 O8 g0 {& S
$ tar -vxzf ansible-cmdb-*.tar.gz) }9 P7 T( J8 f
$ cd ansible-cmdb-** T) T, g8 |* g  X& p
$ sudo make install
& B% Y) M2 T/ O" E8 e$ ansible-cmdb out > ~/cmdb.html1 G5 |5 \) k- ^* `6 f
$ ansible-cmdb -i hosts out > ~/cmdb.html2 R) S7 l' ^9 L
$ ansible-cmdb -p local_js=1 -i hosts out > ~/cmdb.html, x$ y" M! g7 S6 e: [
$ cd ansible-cmdb-*
% t' a8 n6 ?- x" e7 K* ^$ sudo make uninstall
1 Y' e4 h- g1 L3 a6 y; [) Q0 GInstalling from .deb file:8 g  S8 a; ^! m3 j
' f% [& K1 `3 ?: @: i- N
$ dpkg -i -i ansible-cmdb-*.deb
6 v8 ?2 W! q( |0 P6 A0 F7 `+ s$ ansible-cmdb out > ~/cmdb.html
" O2 E  F# k, D" ]. d7 e3 i+ w$ ansible-cmdb -i hosts out > ~/cmdb.html. p) u; O. C; Z; y
$ ansible-cmdb -p local_js=1 -i hosts out > ~/cmdb.html
# }7 w. d6 z7 U$ sudo dpkg --purge ansible-cmdb9 ?; e: {% u9 F6 H
Installing from .rpm file:% }4 j) L# x9 u0 P4 F' P
5 T. q/ Q' W. C2 f) b
$ sudo yum install ansible-cmdb*.rpm
1 k# R( o# z4 B5 q0 }3 d3 C7 \$ ansible-cmdb out > ~/cmdb.html
& S/ D- ]7 A1 T' ?* k. D+ [$ ansible-cmdb -i hosts out > ~/cmdb.html
, d* {. q/ ?2 Z3 K$ ansible-cmdb -p local_js=1 -i hosts out > ~/cmdb.html
* Z* [8 y8 S+ W3 y" y9 {$ sudo yum uninstall ansible-cmdb8 q0 Y& z1 Y. M2 z
License
( I+ e* `$ L6 t0 o' M7 JAnsible-cmdb is licensed under the GPLv3:& E, d) e7 |7 F  u7 s+ p4 o6 P+ N

' G9 k$ Q) A6 \9 Q0 K) n/ g9 V( VThis program is free software: you can redistribute it and/or modify$ s# a  L4 s: t- h! a
it under the terms of the GNU General Public License as published by
$ B% Y) t* o9 ithe Free Software Foundation, either version 3 of the License, or2 l, Q; P5 M  H- }2 `
(at your option) any later version.
8 k7 h  ~0 u! n7 O
# y& D3 ~2 }0 E4 U3 OThis program is distributed in the hope that it will be useful,
7 S8 j6 z9 V* O$ L, e$ `but WITHOUT ANY WARRANTY; without even the implied warranty of9 U9 L  E* a- n" c& o7 Z
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# g/ G& J! _4 ?6 U$ IGNU General Public License for more details., w; t" ^: x3 A& W- a
5 N: z, y1 X- E, K* @! s! b5 R6 d
You should have received a copy of the GNU General Public License
  j# S$ O/ j$ _% m9 q' Z2 \along with this program.  If not, see <http://www.gnu.org/licenses/>." O7 o! }5 ~# X  S3 \  F" \) k

" _6 y0 |" e3 v" J; h9 |! bFor the full license, see the LICENSE file.  B0 k, B  v/ B; I
, q7 c: Q! W, ^, g  J$ v6 U1 @, R' j

9 m/ Q0 j, `. ]. C+ f0 M% S3 r" y& [! K9 t. u
6 e8 H* [! V$ _* d* Y1 q# D. e7 q

7 L% D" v$ V( J( C

1

主题

0

回帖

12

积分

管理员

积分
12
QQ
 楼主| 发表于 2023-3-27 15:00:02 | 显示全部楼层
[root@jumpserver3 ~]# ansible -m setup --tree out/  -i inventory all: O1 D- E; f& B# i
使用ansible的setup模块收集数据生成文本文件,并存放到out目录下; p* k5 b$ z0 w& M4 m
/ b/ \3 k7 Y, C  ]( t7 ^
ansible -i hosts -m setup --tree out/ all
8 p( W2 E) x# @4 E: j" D6 F! q+ N5 a) s* w

7 t0 @8 Q% [* e[root@jumpserver3 ~]# ansible-cmdb out/ > overview.html 0 }) H$ d& ?9 G5 l) p' ?
8 B$ X  a" a6 o4 R6 t" D1 M/ e  e
[root@jumpserver3 ~]# ansible-cmdb -c name,groups,vcpus,mem_usage,disk_usage  out/  >overview-list.html % d$ {7 H$ f( X3 q
9 M. M" b6 T" h2 y* ?

( }3 f; L& `% K  c- [( Mansible-cmdb -t /usr/local/lib/ansible-cmdb/ansiblecmdb/data/tpl/csv.tpl  out/ > cmdb.csv

1

主题

0

回帖

12

积分

管理员

积分
12
QQ
 楼主| 发表于 2023-3-27 15:00:03 | 显示全部楼层
[root@jumpserver3 ~]# ansible -m setup -t html_fancy_split --tree  out/  -i inventory all

1

主题

0

回帖

12

积分

管理员

积分
12
QQ
 楼主| 发表于 2023-4-19 14:26:15 | 显示全部楼层
如果facts用了本地缓存,-f 指定缓存目录即可。
, f8 J3 {. p+ P% W# E
  l" U8 d5 J9 M) O8 c
6 t/ i- d" K3 l: Y$ D' Tansible-cmdb -f /path/to/facts/dir > overview.html8 M# u# w$ V! c+ y, F
以资产列表得形式统计出ansible主机信息。, B- O+ F* }* t0 A' J) C$ h) a! @

& i$ W0 T8 D1 E/ J
9 c7 _) `. S5 p# y/ w# ansible-cmdb -t txt_table --columns name,os,ip,mem,cpus out/* v3 K% a, t7 m) k& X9 \0 x
Name       OS          IP              Mem  CPUs  $ A8 [1 p1 K7 A/ }/ K
---------  ----------  --------------  ---  ----  3 O. B% m2 X& L& v% G0 x* u# ?
localhost  CentOS 7.6  192.168.77.130  1g   1  
" g( P9 ]: M% J, \9 r输出csv格式的主机信息。
4 ]3 X' _( ?% p" k3 i
5 ]6 f+ S1 |, F7 X: H" Z
% G- }4 v8 F. t9 U, w! a# ansible-cmdb -t csv out/            
) ?/ w6 M, w. [- n4 q3 R"Name","OS","IP","Arch","Mem","MemFree","MemUsed","CPUs","Virt","Disk avail") X/ {4 t/ D! @% L0 m& |
"localhost","CentOS 7.6","192.168.77.130","x86_64/x86_64","1g","0g","1g","1","VMware/guest","28.0g, 0.0g"
# s) c* P$ w1 E; V% H7 l1 R输出sql文件,导入数据到mysql或者SQLite。
5 U1 B) y! V9 _9 C# n
* ^* ]( b5 P4 @' V0 J6 o9 D  b/ \: l/ w3 |( N( w4 h: L
# ansible-cmdb -t sql out/& n- G+ ]) Z" ?7 c( r* u' e9 u
DROP TABLE IF EXISTS hosts;7 l- Y, P7 ]% m  ?) ^
CREATE TABLE hosts (3 z! u( }) s4 V: l% {4 {
    name VARCHAR(255),
# k1 M, @/ o7 [# [% L    fqdn VARCHAR(255),
; w, N/ c! l, \3 N6 x. t    main_ip VARCHAR(15),
! N5 i5 K$ T& x3 v# Z6 g    os_name VARCHAR(80),
7 k) L2 ?' A8 W$ G    os_version VARCHAR(40),
7 n6 l' V0 c) q& Q( l    system VARCHAR(40),8 C$ R. A! K% D5 G. \
    kernel VARCHAR(40),9 s) E3 M9 ?. ]1 Z8 p) E: R
    arch_hardware VARCHAR(12),
( b3 l8 {+ q. L7 p# K    arch_userspace VARCHAR(12),
5 Q8 U% D3 B( ~) h6 e. N    virt_type VARCHAR(20),
7 c& h2 ^8 P8 I$ t: r( [* @- F7 u    virt_role VARCHAR(20)," Q% ]4 [5 f4 ~0 |& B( P
    cpu_type VARCHAR(60),6 i( r& G1 O! b4 Z; O, E
    vcpus INT,! V7 a8 {+ x; |7 s2 a7 |; Z
    ram FLOAT,
4 L4 C* q/ x+ a! G0 U0 E3 \  L$ i    disk_total FLOAT,0 @+ e# A- s0 }4 Z8 _) R2 o" N1 w
    disk_free FLOAT; T% n2 E4 V& Q2 N
);" M. P; C" d. _# B! o

8 w4 h& v# k# F5 |6 r* Y    INSERT INTO hosts (% o9 O4 ?8 F2 G# f
        name,
" I' A) s: d0 ?3 R! k# y        fqdn,
. o. W1 Z2 Y; p7 b$ j        main_ip,3 t4 l7 \- o2 x! w9 c, r
        os_name,+ o8 x( e( q2 }; q. ^  Q! S! {% Z
        os_version,
1 r) t' p+ r- I$ y( P7 G        system,! ~+ v* n- Y. M1 Y2 q9 c
        kernel,
$ S! Z5 l# p% l( ?% A# O        arch_hardware,
! H: H# H8 o$ u        arch_userspace,& I( e- G# I0 c6 V: g. @
        virt_type,
( L" s9 e; R$ @        virt_role,1 V" d4 O6 B) m: X' _$ h5 J. ]3 \! o
        cpu_type,
+ K0 R& y* k6 Z+ `, ~. B        vcpus,
8 H5 A+ W' {" Z$ K: u) A9 [2 j        ram,* A7 ]8 G& A" L+ F
        disk_total,2 h% @) M# M* m2 }/ n+ q/ q
        disk_free( o& B: H5 @6 N7 |$ O" K
    ) VALUES (2 a* p& j7 c+ u. a3 D
        "localhost",
0 g' p2 b. x/ n- a; l        "a23-202-231-167.deploy.static.akamaitechnologies.com",! s% L; a) s6 D( N5 g: S7 x7 D
        "192.168.77.130",% o7 T& s! B4 v
        "CentOS",
9 N) @+ x; ?( A8 L! |' K0 \        "7.6",
- r& q% m& l5 _! O  N9 @0 ~        "Linux",
3 i- x& ~& p# D3 w* t        "5.1.11-1.el7.elrepo.x86_64",0 G/ I! B7 J6 M: K2 [3 W; i3 A
        "x86_64",
$ ^- ], R, t  m+ e# d: S        "x86_64",# b9 h* I; B- i
        "VMware",2 V- B0 ~! Q- F$ c
        "guest",
3 b8 o, L6 e  B9 y        "Intel(R) Core(TM) i3-4160 CPU @ 3.60GHz",. U& e6 {# o7 X3 {+ Q' [
        1,
1 v8 h- l; B/ Y+ O* H8 D$ Z        0.9,  b, U! A* \4 ~: N# P
        29.8,
- t: x4 d1 ~$ d7 O6 ~* o# a, b2 z        27.4( ?8 S- x& w, \; j2 O+ ]1 t; w1 R. C
    );
" b" R  V, Y0 r2 Y% J, R( |7 ]& T其他模板格式。- {! d) h# s7 k, p! H
/ r4 `* \- I. U/ P
( g6 A8 s: @, M) {9 @
ansible-cmdb -t json out/ % Q) \4 s# j! T0 Y
ansible-cmdb -t markdown out/
您需要登录后才可以回帖 登录 | 注册

本版积分规则

返回首页|Archiver|手机版|小黑屋|易陆发现技术论坛 ( 蜀ICP备2026014127号-1 )

GMT+8, 2026-6-12 00:41 , Processed in 0.025437 second(s), 22 queries .

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

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