Ganymede (software)

Last updated
Ganymede
Original author(s) Applied Research Laboratories at The University of Texas at Austin
Initial release1998 [1]
Written in Java
Type Identity management / Network directory management
License GNU General Public License
Website tools.arlut.utexas.edu/gash2

Ganymede is an open source network directory management framework, designed to allow administrator teams to collaboratively manage subsets of an organization's directory services, such as NIS, DNS, Active Directory / LDAP, DHCP, and RADIUS, among others. First announced and released at the 1998 USENIX LISA conference, [2] Ganymede has been under public development and use since then.

Ganymede uses a central server which supports clients connecting via Java RMI. The Ganymede server maintains a transactional object graph database of network information such as user objects, group objects, system objects, network objects, etc. Users and administrators run Ganymede clients (GUI or XML based) to create, modify, or delete objects in the database. Whenever a user commits a transaction, the Ganymede server schedules a number of background threads to write out updated network source files and run whatever system scripts are required to propagate the new data into the managed network directory services. If multiple users are working concurrently, the scheduler makes sure that the entire network environment is updated with transactionally consistent directory images as builds finish and new ones are issued.

The Ganymede server is meant to be programmed by the adopter, who can define arbitrary object data types along with custom logic to interact with the user through the GUI and to maintain consistency within and between objects. Adopters can also create custom tasks which can be executed at specified times by the internal Ganymede scheduler. Such custom tasks can make changes in the server's object database and/or can run external scripts to update external services.

Ganymede has an elaborate XML data format which can be used to import and export the server's object database schema and object data. Importing XML will typically result in the creation, modification, or deletion of database objects, and will trigger one or more network directory service rebuilds just as using the GUI client would do.

Above all, Ganymede is designed around administration teams. Administrators are members of 'Owner Groups', which own objects. Any object that is changed by a user or an automated task can result in change report email being sent to administrators in the appropriate Owner Group, making it possible for admins to keep up to date with changes that others in their groups are making. Owner Groups can be granted authority over arbitrary subsets of the object database, making it easy to slice up the network directory space in any fashion that may be desired.

As a programmable framework, Ganymede must be programmed for a specific set of directory management tasks. Fundamental Generic Networking in Germany has used it as the basis of their Doctor DNS project, [3] which is being used to manage DNS for the Kaiserslautern University of Technology. [4] [5]

Related Research Articles

Active Directory (AD) is a directory service developed by Microsoft for Windows domain networks. Windows Server operating systems include it as a set of processes and services. Originally, only centralized domain management used Active Directory. However, it ultimately became an umbrella title for various directory-based identity-related services.

The Domain Name System (DNS) is a hierarchical and distributed naming system for computers, services, and other resources in the Internet or other Internet Protocol (IP) networks. It associates various information with domain names assigned to each of the associated entities. Most prominently, it translates readily memorized domain names to the numerical IP addresses needed for locating and identifying computer services and devices with the underlying network protocols. The Domain Name System has been an essential component of the functionality of the Internet since 1985.

<span class="mw-page-title-main">Database</span> Organized collection of data in computing

In computing, a database is an organized collection of data or a type of data store based on the use of a database management system (DBMS), the software that interacts with end users, applications, and the database itself to capture and analyze the data. The DBMS additionally encompasses the core facilities provided to administer the database. The sum total of the database, the DBMS and the associated applications can be referred to as a database system. Often the term "database" is also used loosely to refer to any of the DBMS, the database system or an application associated with the database.

<span class="mw-page-title-main">Server (computing)</span> Computer to access a central resource or service on a network

In computing, a server is a piece of computer hardware or software that provides functionality for other programs or devices, called "clients". This architecture is called the client–server model. Servers can provide various functionalities, often called "services", such as sharing data or resources among multiple clients or performing computations for a client. A single server can serve multiple clients, and a single client can use multiple servers. A client process may run on the same device or may connect over a network to a server on a different device. Typical servers are database servers, file servers, mail servers, print servers, web servers, game servers, and application servers.

Dynamic DNS (DDNS) is a method of automatically updating a name server in the Domain Name System (DNS), often in real time, with the active DDNS configuration of its configured hostnames, addresses or other information.

A web service (WS) is either:

<span class="mw-page-title-main">WebGUI</span> Open-source content management system

WebGUI is an open-source content management system written in Perl and released under the GNU General Public License.

IBM Storage Protect is a data protection platform that gives enterprises a single point of control and administration for backup and recovery. It is the flagship product in the IBM Spectrum Protect family.

Active Directory Rights Management Services is a server software for information rights management shipped with Windows Server. It uses encryption and a form of selective functionality denial for limiting access to documents such as corporate e-mails, Microsoft Word documents, and web pages, and the operations authorized users can perform on them. Companies can use this technology to encrypt information stored in such document formats, and through policies embedded in the documents, prevent the protected content from being decrypted except by specified people or groups, in certain environments, under certain conditions, and for certain periods of time. Specific operations like printing, copying, editing, forwarding, and deleting can be allowed or disallowed by content authors for individual pieces of content, and RMS administrators can deploy RMS templates that group these rights together into predefined rights that can be applied en masse.

In computing, the Hesiod name service originated in Project Athena (1983–1991). It uses DNS functionality to provide access to databases of information that change infrequently. In Unix environments it often serves to distribute information kept in the /etc/passwd, /etc/group, and /etc/printcap files, among others. Frequently an LDAP server is used to distribute the same kind of information that Hesiod does. However, because Hesiod can leverage existing DNS servers, deploying it to a network is fairly easy.

Microsoft Identity Integration Server (MIIS) is an identity management (IdM) product offered by Microsoft. It is a service that aggregates identity-related information from multiple data-sources. The goal of MIIS is to provide organizations with a unified view of a user's/resources identity across the heterogeneous enterprise and provide methods to automate routine tasks.

The Spring Framework is an application framework and inversion of control container for the Java platform. The framework's core features can be used by any Java application, but there are extensions for building web applications on top of the Java EE platform. The framework does not impose any specific programming model.. The framework has become popular in the Java community as an addition to the Enterprise JavaBeans (EJB) model. The Spring Framework is free and open source software.


This is a comparison of notable free and open-source configuration management software, suitable for tasks like server configuration, orchestration and infrastructure as code typically performed by a system administrator.

DNS management software is computer software that controls Domain Name System (DNS) server clusters. DNS data is typically deployed on multiple physical servers. The main purposes of DNS management software are:

Windows Vista contains a range of new technologies and features that are intended to help network administrators and power users better manage their systems. Notable changes include a complete replacement of both the Windows Setup and the Windows startup processes, completely rewritten deployment mechanisms, new diagnostic and health monitoring tools such as random access memory diagnostic program, support for per-application Remote Desktop sessions, a completely new Task Scheduler, and a range of new Group Policy settings covering many of the features new to Windows Vista. Subsystem for UNIX Applications, which provides a POSIX-compatible environment is also introduced.

In computing, logging is the act of keeping a log of events that occur in a computer system, such as problems, errors or just information on current operations. These events may occur in the operating system or in other software. A message or log entry is recorded for each such event. These log messages can then be used to monitor and understand the operation of the system, to debug problems, or during an audit. Logging is particularly important in multi-user software, to have a central overview of the operation of the system.

CrushFTP is a proprietary multi-protocol, multi-platform file transfer server originally developed in 1999. CrushFTP is shareware with a tiered pricing model. It is targeted at home users on up to enterprise users.

Microsoft SQL Server is a proprietary relational database management system developed by Microsoft. As a database server, it is a software product with the primary function of storing and retrieving data as requested by other software applications—which may run either on the same computer or on another computer across a network. Microsoft markets at least a dozen different editions of Microsoft SQL Server, aimed at different audiences and for workloads ranging from small single-machine applications to large Internet-facing applications with many concurrent users.

OpenLMI provides a common management infrastructure for Linux systems. Available operations include configuration of various operating system parameters and services, hardware components configuration, and monitoring of system resources. Services provided by OpenLMI can be accessed both locally and remotely, using multiple programming languages and standardized APIs.

References

  1. "Ganymede change history". Archived from the original on 2013-06-15. Retrieved 2013-03-01.
  2. "Ganymede: An Extensible and Customizable Directory Management Framework". Jonathan Abbey and Michael Mulvaney. USENIX. Proceedings of the 1998 LISA Conference. 6 December 1998. Retrieved 2013-08-15.
  3. "DoctorDNS". Archived from the original on 2013-04-30. Retrieved 2013-03-01.
  4. "FLOSS Weekly #143: Ganymede". FLOSS Weekly. 24 November 2010. Retrieved 2013-03-01.
  5. "Self-management in Heterogenous Networks Using A Service-Oriented Architecture". Proceedings of 2007 IEEE Consumer Communications and Networking Conference.