I would recommend looking into Puppet/Facter or OCS Inventory NG.
Puppet (which uses Facter), can be used to push out updates and configure nodes. It retrives information (or facts) about your nodes via Facter. Even though Puppet (via Facter) doesn't know who the primary user is, you can add facts (information) to your nodes that Facter will pick up on, and report back to the central server. It also includes a powerful Domain Specific Language written using Ruby, but very easy to learn even if you have no ruby experience. They have a great user group if you have any questions and are currently working on additional external software like Puppet Dashboard to make it easier to manage your infrastructure.
One downside of Puppet is that it only works on Linux machines currently. This can be a non-issue if you are only concerned with Linux machines.
OCS Invetory NG
OCS Invetory NG also does updates and can gather a lot of information off nodes. It is easy to use. The central server interface is accessed via a browser. From this interface you can see view your nodes, and get reports that contain detailed information on the hardware and software installed. This product works for both Linux and Windows environments.
Both products have a client/server architecture in which you have to install client software on each node for information to be polled and updates to be pushed out. Each product is open source, so licensing is not an issue.
Puppet is a very powerful tool. With its own DSL, you can for the most part do anything you need. It is scalable and has been used by many big companies such as Google and Redhat.
OCS Inventory NG is an easy to use tool that works both on Windows and Linux environments. It is accessed through a web interface in which you can have printable reports.
If you have a mixed infrastructure (Windows and Linux) you may want to go with OCS, but if you are using solely Linux machines, Puppet is the best tool out their to manage your infrastructure.