Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 5 Current »


Running

To run TEIV with your models pgsql-schema-generator is provided to generate PostgresSQL schemes from the YANG models which can be used in TEIV.

First of all you need the pgsql-schema-generator which can be generated by the following:

Building is a far more time consuming process and may lead to errors.

TEIV with pgsql-schema-generator

Things you should know:

  • If using you own YANG models place them in a new directory generate-defaults in docker-compose/ AND delete the default sql schemas in docker-compose/sql_scripts

  • if you are generating your own sql schemes with different YANG models, compared to the default YANG, the example events will not work, therefore kafka-producer must be commented out in the docker-compose.yml OR you can replace the example events with your own data

  • the pgsql-schema-generator may fail due to a permission error if the docker-compose/sql_scripts to fix this you can run sudo chmod -R 777 sql_scripts/

In the /teiv/docker-compose directory run the following code to bring TEIV up:

docker-compose up

Running 'docker ps -a’ should show the following docker containers:

  • kafka-producer confluentinc/cp-kafka:7.6.1 (optional - automatically populates TEIV)

  • pgsql-schema-generator o-ran-sc/smo-teiv-pgsql-schema-generator:latest (optional - if you want to generate your own sql schemas)

  • kafka confluentinc/cp-kafka:7.6.1

  • kafka2 confluentinc/cp-kafka:7.6.1

  • kafka3 confluentinc/cp-kafka:7.6.1

  • topology-ingestion-inventory o-ran-sc/smo-teiv-ingestion:latest

  • topology-exposure-inventory o-ran-sc/smo-teiv-exposure:latest

  • zookeeper confluentinc/cp-zookeeper:6.2.1

  • dbpostgresql postgis/postgis:13-3.4-alpine

Once running there are some sample queries to try at Sample TEIV Queries

The /teiv/docker-compose directory has everything needed to get TEIV up and running consisting of the following files and directories:

image-20240916-135903.png
  • docker-compose.yml - contains all the services needed to run TEIV

  • sql_scripts - contains the sql scripts produced by the pgsql-schema-generator and a script used in the dbpostgresql container to check if the sql schemas are present

  • cloudEventProducer - contains a cloudEventProducer script that will produce kafka events to populate TEIV by running locally, cloudEventProducerForDockerCompose used for the kafka-producer service in docker-compomse.yml and the actual events are in the events directory

  • generate-defaults - is an optional directory where you put your own YANG files to generate your own custom sql schemas from pgsql-schema-generator

  • copySqlSchemaFromPgsqlGenerator.sh - copies the sql schema generated from pgsql-schema-generator to the sql_scripts directory, renaming and replacing placeholders.

In docker-compose.yml there is an optional services:

  • kafka-producer which will automatically run the cloudEventProducerForDockerCompose script to populate TEIV. Can comment out if this is not desired.

  • pgsql-schema-generator which will generate sql schemas from your YANG files at docker-compose/generate-defaults to docker-compose/sql_scripts and use them automatically


pgsql-schema-generator locally

If successful built the files highlighted in green/yellow should be present.

The default sql scripts in /docker-compose/sql_scripts were built from TEIVs default yang models provided in /teiv/teiv/src/main/resources/models using the pgsql-schema-generator.

To run pgsql-schema-generator yourself, using the default YANG models or your own YANG models, copy YANG models into the /teiv/pgsql-schema-generator/src/main/resources/generate-defaults directory and from /teiv/pgsql-schema-generator/ run:

mvn exec:java -Dexec.mainClass="org.oran.smo.teiv.pgsqlgenerator.DatabaseSchemaGeneratorApplication"

Once run successfully the sql schemas should be present in /teiv/pgsql-schema-generator/target (highlighted in red below) and graphs representing the entities and relationships of the YANG models in /teiv/pgsql-schema-generator/target/graphs (highlighted in blue below):

Screenshot from 2024-09-04 14-53-54123123.png
  • No labels