PSGraph 是一个非常棒的免费 PowerShell 库,您可以用它来将关系可视化。在使用 PSGraph 之前,需要安装它的依赖项(graphviz 引擎)。两者都需要管理员特权:
1 2 3 4 5 6 7 8
|
Register-PackageSource -Name Chocolatey -ProviderName Chocolatey -Location http://chocolatey.org/api/v2/ Find-Package graphviz | Install-Package -ForceBootstrap
Install-Module -Name PSGraph
|
安装完成后,这是如何将对象关系可视化的代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
| $webServers = 'Web1','Web2','web3' $apiServers = 'api1','api2' $databaseServers = 'db1'
graph site1 { subgraph 0 -Attributes @{label='DMZ'} { node 'loadbalancer' @{shape='house'} rank $webServers node $webServers @{shape='rect'} edge 'loadbalancer' $webServers }
subgraph 1 -Attributes @{label='Internal'} { rank $apiServers node $apiServers edge $webServers -to $apiServers
rank $databaseServers node $databaseServers @{shape='octagon'} edge $apiServers -to $databaseServers } } | Export-PSGraph -ShowGraph
|
这个例子中创建的图形使用脚本文件中的 hypothetical 服务器并向其添加合适的关系,并显示图像。