About Oracle GoldenGate Microservices Architecture

Oracle GoldenGate Microservices Architecture (MA) allows you to configure and manage data replication over homogeneous or heterogeneous database environments using RESTful services. These microservices can be accessed using various interfaces including a web interface, command line interface, REST API, or any other service that allows accessing REST-based microservices.

The following diagram illustrates the replication process cycle within a secure (HTTPS) or non-secure (HTTP) environment.



Features of Oracle GoldenGate Microservices Architecture

Oracle GoldenGate Microservices Architecture handles different tasks performed at different stages of the data replication cycle. Some of the product features include the following:

  • Oracle GoldenGate Microservices Architecture is bundled with utilities required to configure microservices associated with each deployment. See Components of Oracle GoldenGate Microservices Architecture.

  • It is designed with the industry-standard HTTPS communication protocol and the JavaScript Object Notation (JSON) data interchange format.

  • The architecture provides options to secure the data replication environment with a variety of security strategies including securing data at rest and in motion, TLS encryption, OAuth 2.0 authentication and authorization, integration with external user authentication services among others.

Access Points for Oracle GoldenGate Microservices

Oracle GoldenGate microservices are accessible from a variety of clients or service interfaces. You can use these service interfaces to connect or log in to the microservices and set up data replication tasks, manage and monitor processes using statistical data, tune performance, configure security options, and many other associated tasks.

The Oracle GoldenGate Microservices Architecture is bundled with the following service interfaces:

  • Admin Client: Provides access to microservices from the command line.
  • Browser-based user interface for a GUI-based experience
  • REST API service endpoints

The following diagram shows a variety of clients (Oracle products, command line interface, browsers, and programmatic REST API interfaces) that you can use to access and manage deployments, microservices, and all other Oracle GoldenGate processes.



Microservices Architecture includes an HTML5 based web interface to administer, manage, monitor, and secure deployments. You can access this web interface with the help of URLs specific to each microservice and the Service Manager. The web interface includes the Service Manager, Administration Service, Distribution Service, Receiver Service, and the Performance Monitoring Service.

You can use these web interface access points to create and run all Extract, Replicat, and Distribution path processes. Along with this, you can set up database credentials, add users that can access the deployment after defining roles for them, and monitor the performance of processes.

See About Extract and About Replicat.

The REST API provides service endpoints to manage Oracle GoldenGate deployments and replication services. See REST API Documentation.

You can use any of these options to work with your Oracle GoldenGate Microservices Architecture setup.

Admin Client

The Admin Client is a command line utility (similar to the classic GGSCI utility). You can use it to issue the complete range of commands that configure, control, and monitor Oracle GoldenGate. See About Admin Client.

Admin Client is used to create, modify, and remove processes, instead of using the MA web user interface. The Admin Client program is located in the $OGG_HOME/bin directory, where $OGG_HOME is the Oracle GoldenGate home directory. If you need to automate the Admin Client connection with the deployment, you can use an Oracle Wallet to store the user credentials. The credentials stored must have the following characteristics:

  • Single user name (account) and password
  • Local to the environment where the Admin Client runs
  • Available only to the currently logged user
  • Managed by the Admin Client
  • Referenced using a credential name
  • Available for Oracle GoldenGate deployments and proxy connections.

Microservices Web Interface

The Oracle GoldenGate Microservices web interface provides GUI-based access to manage and work with microservices and Oracle GoldenGate processes. You can connect to the web interface from a web browser. See Connect to the Deployment from the Web Interface.

From the web interface, multiple users can log into the same deployment at the same time, and each user can make changes to the environment based on their relative permissions. This means that users should ensure proper change management practices so that two users aren't trying to do things like updating the same parameter file at the same time.

An unsecure deployment uses http in the URL whereas a secure deployment uses https, where all traffic to and from the browser to the deployment is encrypted. To know more about secure and unsecure deployments, see About Deployments

REST API

The REST API for Oracle GoldenGate provides service endpoints that you use to perform various data replication tasks directly from the REST API interface. This is an alternative to using the web interface or the command line to set up data replication processes and tasks.

See REST API Documentation.

About Deployments

A deployment is a configuration to set up for Oracle GoldenGate Microservices to allow creating users, choose if you want to create a secure SSL environment, define the host and port for various microservices offered with Oracle GoldenGate Microservices Architecture. When you add a deployment for the first time, you can set up a new Service Manager and then add more deployments to the existing Service Manager.

What is a Deployment?

A deployment is a configuration package to set up Oracle GoldenGate Microservices for your choice of database. Deployments can be setup to be secure or non-secure and are added to a Service Manager.

Oracle GoldenGate Configuration Wizard (OGGCA) is a utility that allows you to configure your deployments. See the Add a Deployment topic to learn more about using OGGCA to configure various options associated with a deployment.

When you start the deployment configuration for the first time on the host server:

  • Decide if you need a secure or non-secure deployment. This is because you cannot change from secure to non-secure or non-secure to secure deployments after configuration.

  • Configure a new Service Manager on your host server. After the first time configuration, all new deployments should be added to the existing Service Manager available on the host server.

Note:

Oracle recommends that you have a single Service Manager per host server, to avoid redundant upgrade and maintenance tasks with Oracle GoldenGate releases.

Secure Deployment

If you decide to set up a secure deployment, then the deployment configuration provides you options to set up a secure SSL/TLS connection, using server and client certificates.

A secure deployment uses RESTful API calls over an SSL/TLS connection to transmit trail data between the Distribution Service and Receiver Service.

See Specify Security Options in the Add a Deployment topic, to learn about configuring security for source and target deployments.

Non-Secure Deployment

For a non-secure deployment, you don't need to apply server and client side certificates for the deployment. RESTful API calls occur over plain-text HTTP over the network.

Local and Remote Deployments

  • Local deployment: For a local deployment, the source database and Oracle GoldenGate are installed on the same server. No extra consideration is needed for local deployments.

  • Remote deployment: For a remote deployment, the source database and Oracle GoldenGate are installed on separate servers.