X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=README.md;h=a9d48b3cf5bbc4865f72169342664184bd130960;hb=7973f056b636b5eaef7d0d5b330bccecddda8588;hp=92c36557e96b7e89311dfbf34f2fd50b8ebc5afe;hpb=5831076971df3aeec3ecbd3d972557709ab27a4f;p=osm%2Fvim-emu.git diff --git a/README.md b/README.md index 92c3655..a9d48b3 100644 --- a/README.md +++ b/README.md @@ -20,27 +20,49 @@ * **test/** Unit tests * **example_topology.py** An example topology script to show how topologies can be specified +### Installation +Automatic installation is provide through an Ansible playbook. +* Requires: Ubuntu 14.04 LTS +* `sudo apt-get install ansible git` +* `sudo vim /etc/ansible/hosts` +* Add: `localhost ansible_connection=local` + +#### 1. Dockernet +* `git clone https://github.com/mpeuster/dockernet.git` +* `cd dockernet/ansible` +* `sudo ansible-playbook install.yml` +* Wait (and have a coffee) ... + +#### 2. Emulator +* `cd` +* `git clone https://github.com/mpeuster/emulator-strawman.git` +* `cd emulator-strawman/ansible` +* `sudo ansible-playbook install.yml` + + ### Run * First terminal: + * `cd emulator-strawman/emuvim` * `sudo python example_topology.py` * Second terminal: - * TODO add CLI commands here (e.g. request the start of a new compute resource) + * `cd emulator-strawman/emuvim/cli` + * `./son-emu-cli compute start -d dc1 -n vnf1` + * `./son-emu-cli compute start -d dc1 -n vnf2` + * `./son-emu-cli compute list` +* First terminal: + * `dockernet> vnf1 ping -c 2 vnf2` ### 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 * Check if we can use the Mininet GUI to visualize our DCs? +* (Unit tests for zerorpc API endpoint) -### Features +### Features / Done * Define a topology (Python script) * Add data centers * Add switches and links between the, @@ -52,3 +74,9 @@ * remove and disconnect compute resources at runtime * do IP management for new containers * list active compute resources +* Cloud-like reference API with CLI for demonstrations + * Write CLI client + * Start compute (name, DC, image) + * Stop compute +* Create an Ansible-based automatic installation routine +* Unit tests