User Guide#

Hub consists of a cross-platform binary file that you can deploy on either a local machine, on-prem network or in the public cloud. Hub enables communication to data and apps across any network.

Hub can run both on Windows and Linux operating systems on local workstations, laptops, virtual machines, or in containers. In the context of the Cegal data science offerings, Hub enables Prizm modules to communicate and share data in variety of deployment scenarios.

At a high-level Hub connects “client” applications to “connector” applications. A “client” application might for example be a Jupyter notebook running some Python code and a “connector application” could be Petrel (with a Hub plugin). Connectors (such as the Cegal Hub Petrel Connector and Cegal Hub Agent) can be run on behalf of a user, accessible only to the user which owns the “connector” application. Alternatively, “connectors” can be made available to all users in the customer tenant. Similarly, “client” applications can run on behalf of users and thus can access only “connector” applications that belong to the user in addition to any tenant-public “connector” applications.

Identity management and access to applications is granted via Cegal Keystone.

The major architectural components of Hub are

  • Hub Server - a server component that can route “client” application requests to the appropriate “connector” application

  • Hub Agent - a “connector” application to bootstrap other “connectors” such as the Petrel hub Connector.

  • Hub command line client interface - a command line client to query a running Hub Server and perform other Hub related operations

These components are part of the same single cross-platform binary which may be invoked with different modes accordingly.

Hub also comes with some additional installation artifacts

  • Petrel Hub Connector - a Petrel plugin which provides a small set of functionalities for managing Petrel project lifecycle operations and a host for other Hub Petrel plugins to register functionality

  • Prizm Hub Python library - a Hub “client” application available from PyPi for interacting with a running Cegal Hub Server and Cegal Hub “connector” applications

../../_images/HubIntroduction.gif ../../_images/HubIntroduction_dark.gif

This user guide is mainly for advanced Hub users and Hub admins. If you are using another Cegal Prizm module and want to connect to a Hub server you can find the explanation in the respective user guides or jump to the section Hub Petrel plug-in.

Hub has a CLI (command-line-interface) that allows you to start the different Hub components, run the Hub modes and set the configuration. At each step in the CLI you can use the –help flag for explanations.