Opsi
Opsi is a software distribution and management system for Microsoft Windows clients, based on Linux servers. Opsi is developed and maintained by uib GmbH from Mainz, Germany. The main parts of Opsi are open-source licensed under the GNU Affero General Public License.
Features
The key features of opsi are:- Automated operating system installation
- Software distribution
- Patch management
- Inventory
- License Management / Software Asset Management
- Support of multiple locations
Opsi supports the client operating systems MS Windows XP, Server 2003, Windows Vista, Server 2008, Windows 7, Server 2008R2, Server 2012, Windows 8.1, Server 2012 R12 and Windows 10. The 32- and the 64-bit versions are supported. For the installation of an opsi-server there are packages available for the Linux distributions Debian, Ubuntu, SLES, Univention Corporate Server, CentOS, RHEL and OpenSuse.
Automated operating system installation
Via management interface a client may be selected for OS-Installation. If the client boots via PXE it loads a boot image from the opsi-depotserver. This bootimage prepares the hard disk, copies the required installation files, drivers and the opsi client agent and starts finally an unattended OS-Installation. Opsi uses the automatic detection of the necessary drivers for PCI-, HD-Audio- and USB-Devices. OS-installation via Disk image is also supported.Software distribution
For the automatic software distribution some software, the opsi-client-agent, has to be installed on each client. Every time the client boots the opsi-client-agent connects to the opsi-server and asks if there is anything to install. If this shall be done a script driven installation program starts and installs the required software on the client. During the installation process the user login can be blocked for integrity reasons. To integrate a new software packet into the software deployment system, a script must be written to specify the installation process. This script provides all the information on how this software packet has to be installed silent or unattended or by using tools like AutoIt or Autohotkey. With the opsi-winst steps like copy files or edit the registry can be done. The opsi-client-agent can also be triggered by other events or via push-installation from the opsi-server.Patch-Management
The mechanism of the software deployment can also be used to deploy software patches and hotfixes.Inventory (hardware and software)
The hardware and software inventory also uses the opsi-client-agent. The hardware information is collected via calls to WMI while the software information is gathered from the registry. The inventory data are sent back to the opsi-server by a web service. The inventory data may imported via a web service to a CMDB e.g. in OTRS.License management / Software Asset Management
The opsi License Management module supports the administration of different kinds of licenses like Retail, OEM and Volume licenses. It counts the licenses that are used with the software deployment. Using the combination of the License Management and the software inventory, Software Asset Management reports on the number of free and installed licenses can be generated. The License Management module is part of a [|Co-funding Project] and not released as open source yet.Support of multiple locations
The software to be installed can be deposited bandwidth saving on several depot server. The configuration data can be stored and edited on one single server.opsi-server
The opsi-server provides the following services:- The configuration-server stores the configuration data of the clients and provides the methods to manage these data via a web service or the command-line. The data can be stored in files, in OpenLDAP or in a MySQL Database.
- The depot-server stores software packages that may be installed on the clients. To provide support for multiple locations, multiple depot-servers may be controlled by one configuration-server.
- A TFTP-Server provides the boot images for the OS-Installations.
- A DHCP-Server may be integrated in the opsi-server.