This chapter describes a quick installation example of the EBX® Metadata Management application for on-premise for Tomcat where TIBCO EBX® is already installed.
The EBX® Metadata Management application requires the following:
EBX® 6.2.3,
EBX® Metadata Agent, and
After installing and configuring the above components, perform a Final verification to ensure the EBX® Metadata Management application is available.
See Installation notes for Tomcat 10.1.X for more information.
Use the information in this section to install, configure, and run the classifier and classifier database.
Before beginning, ensure you have the following installed on your system:
Python 3.11.x, or Docker CLI
Database: SQLite, PostgreSQL, Microsoft SQL Server, or Oracle database (via ORM SQLAlchemy)
See Supported databases for more information.
Use one of the following methods to install, configure, and run the EBX® Metadata Classifier python application in the target environment:
Copy the ebx.software/ebx-metadata/classifier directory from the EBX® installation CD to your working directory.
In this example, the directory is copied to /opt/ebx, so the EBX® Metadata Classifier directory will be located at: /opt/ebx/classifier
Update the system properties in the setEnv.sh (Linux) or setEnv.bat (Windows) file located in the /opt/ebx/classifier directory to use the correct logging directory and database connection.
Make sure that the directory specified in EBX_METADATA_CLASSIFIER_LOG_DIR is writeable.
If an SQLite database is used, make sure that the directory file defined in EBX_METADATA_CLASSIFIER_SQLALCHEMY_URL is writeable.
The following example applies to Linux:
################################################################## ## Set the path to the EBX Metadata Classifier application log directory ################################################################## export EBX_METADATA_CLASSIFIER_LOG_DIR="ebx/logs" ################################################################## ## The database connection URL in SQLAlchemy format. ## Examples: ## SQLite: sqlite:///<sqlite_db_file> ## PostgreSQL: postgresql://<username>:<password>@<host>:<port>/<database_name> ################################################################## export EBX_METADATA_CLASSIFIER_SQLALCHEMY_URL=sqlite:///ebx/data/sqlite/ebx-metadata-classifier.db
If the EBX® Metadata Classifier is configured to use a database other than SQLite, you must install the corresponding driver. For example with PostgreSQL, you must install the psycopg2-binary Python module by running the following command:
export PIPENV_PIPFILE="/opt/ebx/classfifier/ebx_metadata_classifier/Pipfile" pipenv install psycopg2-binary
See SQLAlchemy Database URLs for more information.
Run install-classifier.sh (Linux) or install-classifier.bat (Windows) to configure and install the required Python modules.
Perform this step again whenever EBX® is updated to a new version.
Start and test the Classifier service
On Linux: start-classifier.sh
On Windows: start-classifier.bat
After the service starts, ensure that the following URL can be accessed: https://<EBX_METADATA_CLASSIFIER_HOST>:<EBX_METADATA_CLASSIFIER_PORT>/api
(Optional): Run stop-classifier.sh (Linux) or stop-classifier.bat (Windows) to stop the Classifier service.
Use a Dockerfile-based installation to run an EBX® Metadata Classifier docker container on the hosted machine.
Copy the ebx.software/ebx-metadata/classifier directory from the EBX® installation CD to your working directory.
In this example, the directory is copied to /opt/ebx, so the EBX® Metadata Classifier directory will be located at: /opt/ebx/classifier
To create the EBX® Metadata Classifier Docker image, run the following command in the /opt/ebx/classifier directory:
docker build -f docker/Dockerfile -t ebx-metadata-classifier:6.2.3 .
By default, this image defines the following docker volumes:
/app/ebx/logs — for EBX® Metadata Classifier log files
/app/ebx/data/sqlite — for storing the SQLite database file
To start the EBX® Metadata Classifier Docker image, run the following command:
docker run -p 5000:5000 -v /my_custom/data:/app/ebx/data -d ebx-metadata-classifier:6.2.3
The EBX® Metadata Classifier docker container can be configured using the following environment variables:
Environment variable name | Description | Default value |
|---|---|---|
EBX_METADATA_CLASSIFIER_ LOG_LEVEL | Logging level for the EBX® Metadata Classifier module. |
|
EBX_METADATA_CLASSIFIER_ SQLALCHEMY_URL | The database connection URL in SQLAlchemy format. |
|
Several containers can be run on a host, the entry port should be different (for example: -p 5001:5000)
The following topics in this section describes how configure and deploy the EBX® Metadata Management module:
Prior to configuring and deploying the EBX® Metadata Management module, use the instructions in Installation notes for Tomcat 10.1.X and Supported application servers to ensure EBX® 6.2.3 and the following add-ons installed:
TIBCO EBX® Digital Asset Manager Add-on (DAMA)
TIBCO EBX® Data Exchange Add-on (DINT)
TIBCO EBX® Data Model and Data Visualization Add-on (DMDV)
TIBCO EBX® Insight Add-on (DPRA)
TIBCO EBX® Information Search Add-on (TESE)
See Managing TIBCO EBX® add-ons for more information.
Copy ebx.software/ebx-metadata/config/ebx-metadata.properties from the EBX® installation CD to your EBX_HOME directory
Update the ebx-metadata.properties file in your EBX_HOME directory as follows:
##################################################################################################
###
### EBX Metadata configuration
###
##################################################################################################
##################################################################################################
# Directory for DAMA files
##################################################################################################
ebx-metadata.dama.directory=${ebx.home}/metadata/dama
##################################################################################################
# Specific directories for DAMA files
# Set one of these properties to use a different location for a DAMA data drive
##################################################################################################
#ebx.metadata.dama.builtins.path=${ebx-metadata.dama.directory}/builtins
#ebx.metadata.dama.allusers.path=${ebx-metadata.dama.directory}/allusers
#ebx.metadata.dama.admin.path=${ebx-metadata.dama.directory}/admin
#ebx.metadata.dama.learning.path=${ebx-metadata.dama.directory}/learning
#ebx.metadata.dama.bow.path=${ebx-metadata.dama.directory}/bow
##################################################################################################
# Directory for startup and trial staging archives
##################################################################################################
ebx-metadata.init.directory=${ebx.home}/metadata/init
##################################################################################################
## Directory for temporary resources
##################################################################################################
# When set, allows to specify a directory for temporary files different from java.io.tmpdir.
# Default value is java.io.tmpdir
ebx-metadata.temp.directory=${java.io.tmpdir}
##################################################################################################
# Startup waiting time for ebx-metadata (in seconds)
##################################################################################################
ebx-metadata.waiting.time=600
##################################################################################################
# Maximum number of predictions returned by Metadata Classifier
##################################################################################################
ebx-metadata.classifier.maxNumberOfPredictions=10
Copy ebx.software/ebx-metadata/config/init folder from the EBX® installation CD to the ebx-metadata.init.directory specified in ebx-metadata.properties.
Make sure that the directory specified in ebx-metadata.dama.directory is writeable.
Configure logging for EBX® Metadata by adding following lines to your ebx.properties file:
#Metadata Log4J Properties: ebx.log4j.category.log.wbp.ebx-metadata= INFO, Console, ebxFile:ebx-metadata
Add the environment variables ebx-metadata.properties and ebx-metadata-classifier.url by modifying the setenv.sh (Linux) or setenv.bat (Windows) file in either $CATALINA_HOME/bin or $CATALINA_BASE/bin.
For Unix shell launch:
EBX_OPTS="${EBX_OPTS} -Debx-metadata.properties=${EBX_HOME}/ebx-metadata.properties -Debx-metadata-classifier.url=http://<EBX_METADATA_CLASSIFIER_HOST>:<EBX_METADATA_CLASSIFIER_PORT>"
For Windows Command Prompt launch:
set EBX_OPTS="%EBX_OPTS%" -Debx-metadata.properties="%EBX_HOME%\ebx-metadata.properties" -Debx-metadata-classifier.url="http://<EBX_METADATA_CLASSIFIER_HOST>:<EBX_METADATA_CLASSIFIER_PORT>"
To deploy the EBX® Metadata module for Tomcat:
Copy the ebx.software/ebx-metadata/webapps/wars-packaging/ebx-metadata.war file from the EBX® installation CD in $CATALINA_HOME/webapps/ (or $CATALINA_BASE/webapps/) directory
After Tomcat launch, run EBX® web application by entering the following URL in the browser: http://localhost:8080/ebx/
See Installing the TIBCO® Metadata Agent for more information.
After Tomcat starts successfully, use the following to verify that the EBX® Metadata Management application has been installed correctly:
Check the log for the following message: Module ebx-metadata repository initialization complete.
In the EBX® UI check whether the list of perspectives in the main toolbar includes Metadata. If it does, it indicates that installation was successful.
See Accessing the metadata perspective for more information.
When using EBX® Container Edition, it is not supported to install the EBX® Metadata Classifier outside the container.