-
Notifications
You must be signed in to change notification settings - Fork 10
Installation
This document explains how to install IRIS standard 1.0.0 on top of your server, desktop, notebook, etc. We refer to IRIS standard package unless otherwise noted. (In the standard package, there’s no DB support. Thus, modules that requires DB such as firewall is not included.)
You should install JDK 1.7 somewhere in the network that you can access. We do not cover the detail of the JDK 1.7 installation.
You can download the complete source tree by ‘download ZIP’ or ‘clone in desktop’. Whatever method you choose, it’s OK. After unpacking the downloaded package, you will find two different projects: Torpedo, and Torpedo-controllers. Torpedo-controllers project is to develop IRIS controller instance which would be plugged into Torpedo (the IRIS controller). You will find the usage of Torpedo-controllers project later, so now let’s focus on Torpedo directory, and go into that.
you will always find a Torpedo.jar under the root folder. Just check there is a ‘controller’ folder, ‘lib’ folder, and ‘web’ folder under the same directory. You should also check that there are two default bundle controller implementations under the ‘controller’s directory with following names. (Actually, these two bundle controllers are from the Torpedo-controllers project, which are exported as jar files.)
- etri.sdn.controller.app.basic.BasicOFController.jar
- etri.sdn.controller.app.simple.SimpleOFController.jar
Before starting the IRIS controller, you should also check the configuration file. Under the root directory, you can easily find the configuration file named ‘torpedo.properties’. By opening the file, you can see following codes.
watcher-num = 2 etri.sdn.controller.app.simple.SimpleOFController.instance-num = 6 etri.sdn.controller.app.simple.SimpleOFController.role = MASTER etri.sdn.controller.app.simple.SimpleOFController.run = true etri.sdn.controller.app.basic.BasicOFController.instance-num = 6 etri.sdn.controller.app.basic.BasicOFController.role = MASTER etri.sdn.controller.app.basic.BasicOFController.run = false
With the above basic configuration, you probably have no problem in executing IRIS in most circumstances.
There are two different methods to execute IRIS. One is to run IRIS within Eclipse, which is a good method when you are a developer who searches for a way to use IRIS in your environment. For that, you should import the whole source tree as a part of your workspace by Import –> General –> Existing Projects into Workspace. After that, you can execute the IRIS system by running etri.sdn.controller.Main as a Java Application.
However, in most cases, you can run IRIS by typing the following command:
java -jar Torpedo.jar
Then you can see some diagnostic (debugging) messages coming up on your terminal screen. If something goes wrong, that’s probably because your classpath and JAVA_HOME is wrongfully set.
By typing the above command, you have run the SimpleOFController located in ‘controllers’ directory. That’s because of the following line in ‘torpedo.properties’.
etri.sdn.controller.app.simple.SimpleOFController.run = true
NOTE: If you want to rebuild the Torpedo.jar for some reason, just export the Torpedo/src directory as Runnable jar file as Torpedo/Torpedo.jar. When you create the runnable jar, please check the option to package all the required libraries into the jar file.
The IRIS version 1.0.0 - NoSQL package provides a MongoDB connection module (currently we tested with MongoDB 2.0.4, but it should work with other versions also) and a firewall application on top of Iris standard. This means IRIS 1.0.0 - NoSQL requires additional configurations to make it work. You should install MongoDB. We do not cover the detail of the MongoDB installation. You will have three additional properties related to storage when you download IRIS-DB package.
watcher-num = 2 storage-ip = X.X.X.X storage-port = YYYY storage-default-db = mydb etri.sdn.controller.app.simple.SimpleOFController.instance-num = 6 etri.sdn.controller.app.simple.SimpleOFController.role = MASTER etri.sdn.controller.app.simple.SimpleOFController.run = false etri.sdn.controller.app.basic.BasicOFController.instance-num = 6 etri.sdn.controller.app.basic.BasicOFController.role = MASTER etri.sdn.controller.app.basic.BasicOFController.run = true
- storage-ip = X.X.X.X
- storage-port = YYYY
- storage-default-db = ZZZZ
The storage-ip is the IP address of a host that runs MongoDB, and the storage-port is the port number of that host. The default port number for MongoDB is 27017. The storage-default-db is a name of database. You can name it anything suitable for your use.
The IRIS-L2SW 1.0.0 package provides minimal modules for Ethernet Layer connectivity. This is very useful for L2 level bench mark testing such as CBench test. By default, SimpleOFController is set to run. If you need basic Web UI, then you should chnage the property file to run BasicOFController instead of SimpleOFController.
- etri.sdn.controller.app.basic.BasicOFController.jar
In this jar, LearningMac module, and some basic UI modules are packaged.
- etri.sdn.controller.app.simple.SimpleOFController.jar
In this jar, only LearningMac module is present.
You can switch the configuration by simply changing the true or false property.
etri.sdn.controller.app.simple.SimpleOFController.run = true etri.sdn.controller.app.basic.BasicOFController.run = false
OpenIRIS Development Team: contact [email protected]