X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=README.md;h=92c36557e96b7e89311dfbf34f2fd50b8ebc5afe;hb=bd44f4aedca9d48d150939cd76d7cefe7e386aa2;hp=0ee1d9e5290eafb6f86ecd7ff305258943a7d4fd;hpb=db05bfd96fc98ec1e688521ced5f84b2c569f06d;p=osm%2Fvim-emu.git diff --git a/README.md b/README.md index 0ee1d9e..92c3655 100644 --- a/README.md +++ b/README.md @@ -5,11 +5,50 @@ ## emu-vim -### TODO +### Requirements +* needs the latest Dockernet to be installed in the system + * the wrapper uses standard Python imports to use the Dockernet modules +* Uses ZeroMQ based RPC to open a cloud-like interface that can be used by a demo CLI client + * pip install import zerorpc + * This will be replaced / extended by a REST API later + +### Project structure +* **emuvim/** all emulator code + * **api/** Data center API endpoint implementations (zerorpc, OpenStack REST, ...) + * **cli/** CLI client to interact with a running emulator + * **dcemulator/** Dockernet wrapper that introduces the notion of data centers and API endpoints + * **test/** Unit tests + * **example_topology.py** An example topology script to show how topologies can be specified + +### Run +* First terminal: + * `sudo python example_topology.py` +* Second terminal: + * TODO add CLI commands here (e.g. request the start of a new compute resource) + -* Add runtime API -** call startAPI from topology definition and start it in a own thread? -** make it possible to start different API endpoints for different DCs? +### TODO +* DCemulator + * ... +* Cloud-like reference API with CLI for demonstrations + * Write CLI client + * Start compute + * Stop compute +* Re-factor endpoint API so that API objects can be more or less statless (ask DCEmulator for available DCs instead of maintaining a own list) +* Create an Ansible-based automatic installation routine * Add resource constraints to datacenters -* Add constraints to Links -* Check if we can use the Mininet GUI to visualize our DCs? \ No newline at end of file +* Check if we can use the Mininet GUI to visualize our DCs? + + +### Features +* Define a topology (Python script) + * Add data centers + * Add switches and links between the, +* Define API endpoints in topology + * call startAPI from topology definition and start it in a own thread + * make it possible to start different API endpoints for different DCs +* DCemulator + * correctly start and connect new compute resources at runtime + * remove and disconnect compute resources at runtime + * do IP management for new containers + * list active compute resources