在命令行中输入下列代码
wget https://github.com/nfvlabs/openmano/raw/master/scripts/install-openmano.sh chmod +x install-openmano.sh sudo ./install-openmano.sh [<database-root-user> [<database-password>]] 关于Floodlight Openflow controller 的配置打开文件 ./scripts/flow.properties在该文件中设置正确的端口值
service-openmano floodlight start #it creates a screen with name "flow" and start on it the openflow controller screen -x flow # goes into floodlight screen [Ctrl+a , d] # goes out of the screen (detaches the screen) less openmano/logs/openflow.0
配置OPENMANO
在openmano的文件夹下编辑openmanod.cfg文件
service-openmano openmano start #it creates a screen with name "mano" and starts inside the "./openmano/openmanod.py" program screen -x mano # goes into openmano screen [Ctrl+a , d] # goes out of the screen (detaches the screen) less openmano/logs/openmano.0
Let's configure the openmano CLI client. This is only necessary if you have changed the file 'openmanod.cfg'
List the environment variables
./openmano config #show openmano env variablesUpdate the environment variables accordingly:
export OPENMANO_HOST=<http_host of openmanod.cfg> export OPENMANO_PORT=<http_port of openmanod.cfg> ./openmano config #show openmano env variablesLet's create a new tenant:
./openmano tenant-create mytenant --description=tenant-description ./openmano tenant-list #show list of tenants uuid and nameTake the uuid and update the environment variable associated to the openmano tenant:
export OPENMANO_TENANT=<obtained uuid> ./openmano config #show openmano env variablesLet's create a new datacenter 'mydc' in openmano, attach the datacenter 'mydc' and VIM tenant "admin" (identified by its uuid provided by openvim), and update the external nets automatically from the ones in openvim.
./openmano datacenter-create mydc http://localhost:9080/openvim ./openmano datacenter-list --all #show all datacenters ./openmano datacenter-attach mydc --vim-tenant-id <uuid> #attach the datacenter mydc and openvim tenant id to the openmano tenant 'mytenant' ./openmano datacenter-list #show datacenters associated to our tenant ./openmano datacenter-net-update mydc Edit datacenter mydc (y/N)? y 2c386a58-e2b5-11e4-a3c9-52540032c4fa data_net 35671f9e-e2b4-11e4-a3c9-52540032c4fa default 8f597eb6-e2b4-11e4-a3c9-52540032c4fa bridge_net ./openmano datacenter-net-list mydc 2c386a58-e2b5-11e4-a3c9-52540032c4fa data_net 2015-04-14T17:36:32 35671f9e-e2b4-11e4-a3c9-52540032c4fa default 2015-04-14T17:36:32 8f597eb6-e2b4-11e4-a3c9-52540032c4fa bridge_net 2015-04-14T17:36:32Let's create some VNFs using the examples of VNF descriptors provided with the code:
./openmano vnf-create vnfs/examples/linux.yaml ./openmano vnf-create vnfs/examples/dataplaneVNF1.yaml ./openmano vnf-create vnfs/examples/dataplaneVNF2.yaml ./openmano vnf-list #-v,-vv,-vvv for verbosity levelsYou can see the internal structure of the previous VNFs in the following figures:
linuxdataplaneVNF1dataplaneVNF2Let's create some scenarios using the examples provided with the code
./openmano scenario-create ./scenarios/examples/simple.yaml ./openmano scenario-create ./scenarios/examples/complex.yaml ./openmano scenario-list #-v,-vv,-vvv for verbosity levelsYou can see the internal structure of the previous Network Scenarios in the following figures:
simplecomplexLet's deploy the scenarios. Scenario instances will be created.
./openmano scenario-deploy simple simple-instance ./openmano scenario-deploy complex complex-instance ./openmano instance-scenario-list #-v,-vv,-vvv for verbosity levels之后我们就可以利用这些模板来创建自己的VNFs和Network Scenarios。