微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何将Puppet模块生成带有箭头关系依赖图

在编写Puppet模块的时候,会存在很多依赖关系,比如配置依赖于安装包,服务依赖于配置等等,有的时候还会有虚拟资源存在,依赖更复杂,那么有没有什么办法能够直观的去看呢,答案是有的,可以通过Puppet graph选项生成资源之间的依赖关系图。

1、安装graphviz软件包,用于转换dot文件为png格式

[root@linux64poc ~]#  yum install graphviz

2、在节点运行puppet命令,加上--graph参数即可

[root@linux64poc ~]# puppet agent --test --environment=testing --graph
info: Retrieving plugin
info: Loading facts in /var/lib/puppet/lib/facter/puppi_projects.rb
info: Loading facts in /var/lib/puppet/lib/facter/fact_apply.rb
info: Loading facts in /var/lib/puppet/lib/facter/last_run.rb
info: Caching catalog for puppet_linux64poc.dev.shanghaigm.com
info: Applying configuration version '1392080856'
...

3、运行完成之后,会在本地/var/lib/puppet/state/graphs目录下生成dot文件

[root@linux64poc ~]# tree /var/lib/puppet/state/graphs/
/var/lib/puppet/state/graphs/
├── expanded_relationships.dot  #显示详细版本的关系图
├── relationships.dot #以箭头方式显示依赖关系
└── resources.dot #显示资源的类和层次关系,但没有依赖关系
0 directories,3 files

4、利用dot命令将图片格式转换成png格式

[root@linux64poc ~]# dot -Tpng -o puppet_allmodules.png /var/lib/puppet/state/graphs/relationships.dot
[root@linux64poc ~]# ll puppet_allmodules.png
-rw-r----- 1 root root 553703 Feb 11 09:08 puppet_allmodules.png

5、打开图片查看,只截取了一部分

Puppet――freenode IR

原文地址:https://www.jb51.cc/javaschema/285792.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐