Giter Club home page Giter Club logo

katana-slice_manager's People

Contributors

dependabot[bot] avatar emmelmann-fokus avatar santojim avatar stkolome avatar tgogos avatar themisanagno avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

katana-slice_manager's Issues

UI Container import ERROR

I used the command ./start.sh -g -m

Errors as following:

Traceback (most recent call last):
File "/usr/local/bin/ui", line 11, in
load_entry_point('UI-CLI', 'console_scripts', 'ui')()
File "/usr/local/lib/python3.7/site-packages/click/core.py", line 716, in call
return self.main(*args, **kwargs)
File "/usr/local/lib/python3.7/site-packages/click/core.py", line 696, in main
rv = self.invoke(ctx)
File "/usr/local/lib/python3.7/site-packages/click/core.py", line 1055, in invoke
cmd_name, cmd, args = self.resolve_command(ctx, args)
File "/usr/local/lib/python3.7/site-packages/click/core.py", line 1094, in resolve_comm and
cmd = self.get_command(ctx, cmd_name)
File "/app/cli/cli.py", line 41, in get_command
eval(code, ns, ns)
File "/app/cli/commands/cmd_db.py", line 3, in
from sqlalchemy_utils import database_exists, create_database
File "/usr/local/lib/python3.7/site-packages/sqlalchemy_utils/init.py", line 1, in
from .aggregates import aggregated # noqa
File "/usr/local/lib/python3.7/site-packages/sqlalchemy_utils/aggregates.py", line 372, in
from .functions.orm import get_column_key
File "/usr/local/lib/python3.7/site-packages/sqlalchemy_utils/functions/init.py", l ine 1, in
from .database import ( # noqa
File "/usr/local/lib/python3.7/site-packages/sqlalchemy_utils/functions/database.py", l ine 13, in
from ..expressions import explain_analyze
File "/usr/local/lib/python3.7/site-packages/sqlalchemy_utils/expressions.py", line 4, in
from sqlalchemy.sql.expression import (
ImportError: cannot import name '_literal_as_text' from 'sqlalchemy.sql.expression' (/usr /local/lib/python3.7/site-packages/sqlalchemy/sql/expression.py)
Traceback (most recent call last):
File "/usr/local/bin/ui", line 11, in
load_entry_point('UI-CLI', 'console_scripts', 'ui')()
File "/usr/local/lib/python3.7/site-packages/click/core.py", line 716, in call
return self.main(*args, **kwargs)
File "/usr/local/lib/python3.7/site-packages/click/core.py", line 696, in main
rv = self.invoke(ctx)
File "/usr/local/lib/python3.7/site-packages/click/core.py", line 1055, in invoke
cmd_name, cmd, args = self.resolve_command(ctx, args)
File "/usr/local/lib/python3.7/site-packages/click/core.py", line 1094, in resolve_comm and
cmd = self.get_command(ctx, cmd_name)
File "/app/cli/cli.py", line 41, in get_command
eval(code, ns, ns)
File "/app/cli/commands/cmd_db.py", line 3, in
from sqlalchemy_utils import database_exists, create_database
File "/usr/local/lib/python3.7/site-packages/sqlalchemy_utils/init.py", line 1, in
from .aggregates import aggregated # noqa
File "/usr/local/lib/python3.7/site-packages/sqlalchemy_utils/aggregates.py", line 372, in
from .functions.orm import get_column_key
File "/usr/local/lib/python3.7/site-packages/sqlalchemy_utils/functions/init.py", l ine 1, in
from .database import ( # noqa
File "/usr/local/lib/python3.7/site-packages/sqlalchemy_utils/functions/database.py", l ine 13, in
from ..expressions import explain_analyze
File "/usr/local/lib/python3.7/site-packages/sqlalchemy_utils/expressions.py", line 4, in
from sqlalchemy.sql.expression import (
ImportError: cannot import name '_literal_as_text' from 'sqlalchemy.sql.expression' (/usr /local/lib/python3.7/site-packages/sqlalchemy/sql/expression.py)

Thank you in advance!

Slice Naming

Give a meaningful name to slices

Possible scenario: "${coverage_area}_${sst}"

FunctionsNames

  • Rename "Functions" to "sub-slice"
  • Rename "Core-Radio" to "Core-Edge"
  • Make all functions optional

Bug: Slice termination

Slice will not be terminated correctly when if you send request for deletion before it is done instatiated.

reason: Not all fields are correctly inserted in the DB

Bug reproduction:

katana slice add -f slice_nest.json #slice1
katana slice add -f slice_nest.json #slice2
katana slice rm -f {slice1_id}
katana slice add -f slice_nest.json #slice3

Slice 1 won't be terminated correctly

No install.sh script?

The first step for installation seems to be running the install.sh script but I can't find it in the repo.

Unit Tests

  • Add Components (VIM, NFVO, EMS, etc)
  • Read Components (VIM, NFVO, EMS, etc)
  • Update Components (VIM, NFVO, EMS, etc)
  • Remove Componets (VIM, NFVO, EMS, etc)
  • Add Slice
  • Read Slice
  • Remove Slice

Implement Kafka

  • Create the docker containers
  • Design Kafka services & topics
  • Implement Kafka topics

Katana swagger web UI login issue

In Release B (also for master branch) I ran sudo ./start.sh -p -m after building all docker images. I also initialised the database using docker container exec -it katana-ui bash , ui db init and ui db seed
I opened http://172.17.0.1:8080/login in my local. It gives a login option on the left and a register option on the right.
I tried login in with username:'admin' and password: 'password'. But it didn't work and it throws an error like this: "The server encountered an internal error and was unable to complete your request. Either the server is overloaded or there is an error in the application." or sometimes this message when used some random text: "{"error":{"message":"Invalid identity or password"}}
I also tried the register option but it didn't change anything as evidently using the same username and password as used in register don't work on the login page.
Also, clicking on forget password is not doing any action.

Screenshot from 2022-01-28 12-24-17

Was it meant to be like this only or am I missing something?

Multiple Add VIMs Bug

Tries to add multiple times the VIM account to OSM
Occurred during multi-NS system testing on issue #9

Unit Tests

  • Add Components (VIM, NFVO, EMS, etc)
  • Read Components (VIM, NFVO, EMS, etc)
  • Update Components (VIM, NFVO, EMS, etc)
  • Remove Componets (VIM, NFVO, EMS, etc)
  • Add Slice
  • Read Slice
  • Remove Slice

Support for K8s as VIM

Use a K8s cluster as VIM

  • Check implementation by OSM
  • Create kubUtils.py under ./sharedUtils/vimUtils/

Documentation

  • PDU Wiki
  • New NBI APIs
  • New "how-to-use" for sst
  • Templates
  • Swagger External References
  • CLI
  • GUI
  • Architecture
  • GST

Interface for Free5GC

I try to integrate Katana with Free5GC. I don't know if there any interfaces I can use to combine theses two things.

Thank you in advance!

Example dummy EMS for communication with Slice Manager via SBI

Integration at infrastructure level may require some initial mock EMS functionality in order to test end-to-end slice creation, simulating possible RAN element configuration. In addition it will serve as example for developing actual EMS or a mediator tailored to the infrastructure capabilities

base_slice_des error

If a user creates a slice without specifying base_slice_des_id (optional in the nest), then GET /api/base_slice_des returns an error.

VIM Monitoring

Create a function that will be able to retrieve information by a specified VIM component regarding the available and total resources. The function should be placed in ./shared_utils/monitoringUtils/ directory as a module to be used by both katana-mngr and katana-nbi containers.

Possible Solutions:

  • Use prometheus/influx to query available/total resources
  • Use API provided by the VIM (e.g, OpenStack)

System Tests

  • Multi-NS Deployment
  • Multi-Site Deployment
  • Concurrent Slices
  • Amarisoft vEPC

Extra tests for Release 2.0.0:

  • Use base slice_des and add NSs
  • Use base slice_des and modify parameters
  • Error handling for missing SB components
  • Not supported locations
  • Slice-as-a-Service (No core services)

Error Handling

  • Error handling from SB components (Example: Errored OSM NS)

Revise GST-NEST-SST Testing

Functions

  • Add Components (VIM, NFVO, EMS, etc)
  • Read Components (VIM, NFVO, EMS, etc)
  • Update Components (VIM, NFVO, EMS, etc)
  • Remove Componets (VIM, NFVO, EMS, etc)
  • Add Slice
  • Read Slice
  • Remove Slice

System Tests

  • Multi-NS Deployment
  • Multi-Site Deployment
  • Concurrent Slices
  • Amarisoft 4G vEPC Slice

Extra Tests

  • Optional Extra NS
  • Multi-Edge Extra NS

System Tests

  • Multi-NS Deployment
  • Multi-Site Deployment
  • Concurrent Slices
  • Amarisoft 4G vEPC Slice

Slice Monitoring

Some possible solutions/steps:

  • Add Prometheus and Grafana containers
  • Create label per slice
  • Create Prometheus exporter for ODL
  • Collect metrics from OSM Prometheus
  • Collect NS Status
  • Collect OpenStack metrics from infra prometheus

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.