Last active
June 18, 2018 18:45
-
-
Save ThinGuy/19e46476f00e8947b82ccae6f3110970 to your computer and use it in GitHub Desktop.
Print relevant NIC information from Ready MaaS nodes, Useful when automating the creation of bridges, bonds, etc.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
maas-ready-nic-info () { | |
( printf "System|ID|VLAN|Tag|MAC|Name|Child of|Parent to|Hostname|Available Subnets on current VLAN\n"; | |
sudo -u postgres psql -P pager=off -F"|" --no-align -t maasdb -c \ | |
"SELECT node.system_id,interface.id,interface.vlan_id,vlan.vid,interface.mac_address,interface.name,ifparent.parent_id,ifchild.child_id,node.hostname, array_to_string(array_agg(distinct subnet.cidr),',') AS niclist \ | |
FROM maasserver_interface interface \ | |
LEFT OUTER JOIN maasserver_vlan vlan ON vlan.id = interface.vlan_id \ | |
LEFT OUTER JOIN maasserver_subnet subnet ON subnet.vlan_id = interface.vlan_id \ | |
LEFT OUTER JOIN maasserver_node node ON interface.node_id = node.id \ | |
LEFT OUTER JOIN maasserver_interfacerelationship ifparent ON interface.id = ifparent.child_id \ | |
LEFT OUTER JOIN maasserver_interfacerelationship ifchild ON interface.id = ifchild.parent_id \ | |
WHERE node.node_type = 0 AND interface.id IS NOT NULL AND node.status = 4 \ | |
GROUP BY node.system_id,interface.id,interface.vlan_id,interface.mac_address,interface.name,ifparent.parent_id,ifchild.child_id,node.hostname,vlan.vid" | |
)|sed 's/|||/|-|-|/g;s/||/|-|/g;'|column -nexts\|; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment