Changes between Version 12 and Version 13 of OnTime-Install


Ignore:
Timestamp:
03/08/11 20:07:29 (13 years ago)
Author:
Prasad Calyam
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • OnTime-Install

    v12 v13  
    1 = !OnTimeMeasure Installation Procedure on ProtoGENI =
    2 '''Prasad Calyam, Kunpeng Zhu'''[[BR]]
    3 '''Sep 23, 2010'''
     1= !OnTimeMeasure-GENI Installation Procedure on ProtoGENI =
     2'''Prasad Calyam, Kunpeng Zhu, Yingxiao Xu'''[[BR]]
     3'''Mar 08, 2011'''
    44
    55''Software License:'' [http://www.geni.net/wp-content/uploads/2009/02/geniprojlic.pdf ''GENI Project License (GPL)'']
    66
    77== 1. Getting Started ==
    8 This document describes the installation, configuration and usage of !OnTimeMeasure, which is a prototype measurement service for the GENI facility users. The measurement service can be used to perform centralized and distributed orchestration and provisioning of active measurements within experiment slices for purposes such as:
     8This document describes the installation, configuration and usage of !OnTimeMeasure, which is a measurement service for the GENI facility users. The measurement service can be used to perform centralized and distributed orchestration and provisioning of measurements within experiment slices for purposes such as:
    99
    1010 * Network paths monitoring
     
    1313 * Network-bottleneck fault-location diagnosis
    1414
    15 The [http://ontime.oar.net ''OnTimeMeasure researcher web-portal''] enables ProtoGENI/Emulab and !PlanetLab users to register, create and monitor experiment slices on geographically distributed resources in their facility.
    16 
    17 Before proceeding further, we highly recommend reading the [http://groups.geni.net/geni/attachment/wiki/OnTimeMeasure/OnTimeMeasure_Tutorial.pdf OnTimeMeasure Tutorial].
     15The [http://ontime.oar.net ''OnTimeMeasure researcher web-portal''] enables ProtoGENI/Emulab and !PlanetLab users to register, create and monitor experiment slices on geographically distributed resources.
     16
     17Before proceeding further, we highly recommend reading the [http://groups.geni.net/geni/attachment/wiki/OnTimeMeasure/OnTimeMeasure_Tutorial.pdf Experimenter Tutorial].
    1818       
    1919== 2. Requirements ==
     
    2121The !OnTimeMeasure software package has the following requirements:
    2222
    23 A. ''Operating System:'' Fedora 8 ''('''Note:''' Input FEDORA8-STD as operating system when you create nodes)''
    24 
    25 B. ''Open Ports:'' For !RootBeacon server: MySQL TCP/3306, Graphite TCP/2003 and TCP/17280, Collector TCP/7777, HTTP TCP/17290; For !NodeBeacon server: BWCTL TCP/4823, Nodescheduler TCP/17249, HTTP TCP/17290
     23A. ''Operating System:'' Fedora 8  ('''Note:''' Input FEDORA8-STD as operating system when you create nodes)
     24
     25B. ''Open Ports:'' For Root Beacon server: MySQL TCP/3306, Graphite TCP/2003 and TCP/17280, Collector TCP/7777, HTTP TCP/17290, Supervisor TCP/17291; For Node Beacon server: Nodescheduler TCP/17249, HTTP TCP/17290, Supervisor TCP/17291  ('''Note:''' These ports are opened by default)
    2626
    2727C. ''User Accounts:'' User must have registered accounts in the [http://ontime.oar.net OnTimeMeasure Researcher Web-portal] and [http://www.emulab.net Emulab Network Testbed]
    2828
    29 D. ''ProtoGENI slice:'' Create a new experimental slice in the [https://www.emulab.net/beginexp_html.php3 Emulab website] with at least 3 nodes. One is the root beacon. The others are node beacons.
    30 
    31 '''Note 1:''' We suggest to use the ProtoGENI Cooked Mode to create a new slice. You can refer to our [http://groups.geni.net/geni/wiki/ExperienceWithProtoGENI#a4.ExperiencesinCreatingProtoGENISlices Experiences in Creating ProtoGENI Slices]. If you still use the command line Emulab test scripts to create a slice, see the end of this document for the example RSpec.
    32 
    33 '''Note 2:''' Following are the pre-requisite software and Perl modules, which will be installed automatically by the scripts delivered in the !OnTimeMeasure release package.
    34 
    35 ''Pre-requisite Software:'' MySQL, Graphite, Perl, Python, Iperf, Ruby, Bwctl-server, Bwctl-client, Cairo, Python_Twisted, Python_Piddle
     29D. ''ProtoGENI slice:'' Create a new experimental slice in the [https://www.emulab.net/beginexp_html.php3 Emulab website] with at least 3 PCs.
     30
     31'''Note 1:''' We suggest to use the ProtoGENI Cooked Mode to create a new slice. You can refer to our [http://groups.geni.net/geni/wiki/ExperienceWithProtoGENI#a4.ExperiencesinCreatingProtoGENISlices Experiences in Creating ProtoGENI Slices]. If you still use the command line Emulab test scripts to create a slice, see the end of this document for an example RSpec.
     32
     33'''Note 2:''' Typically, two or more Node Beacons and one Root Beacon need to be installed on separate dedicated PCs in a slice; it is however possible to install Root Beacon on one of the Node Beacon PCs.
     34
     35'''Note 3:''' Following are the pre-requisite software and Perl modules, which will be installed automatically by the scripts delivered in the !OnTimeMeasure release package.
     36
     37''Pre-requisite Software:'' Iperf, MySQL, Graphite, Perl, Python, Ruby, Python-setuptools, Supervisor
    3638
    3739''Perl Modules:'' Config::Natural, POSIX, DBI, IO::Socket::SSL, Log::Log4perl, Net::SSLeay, Math::Random
     
    4244=== 3.1 Software Installation ===
    4345Download the latest !OnTimeMeasure release package at http://ontime.oar.net/download/OnTimeMeasure_latest.php.
     46
     47In ProtoGENI, home directory is shared amongst all PCs in a slice. So, you only need to download the release package once, and reuse the installation file in each PC.
     48 
     49For example, you can run the following command in an empty folder:
     50{{{
     51wget http://ontime.oar.net/download/OnTimeMeasure_latest.php
     52tar xzf *.gz
     53}}}
    4454
    4555Once you have downloaded the tar file, untar/unzip to see that it contains:
     
    4959 * README.txt
    5060
    51 Next, login using SSH to each of the servers, copy the appropriate tar files over, and run the following commands to install the measurement service:
    52 
    53 
    54 __'''''On the Root Beacon Server:'''''__
     61Next, login using SSH to each of the PCs, run the following commands to install the measurement service. You will be prompted to set a supervisor account during the Graphite installation, and also will be prompted to set a password of an automatically created database user: ''collector''.
     62
     63'''Note:'''  Note that the ''collector'' password will apply to both centralized and distributed measurement cases of !OnTimeMeasure.
     64
     65
     66__'''''On the Root Beacon PC:'''''__
    5567
    5668{{{
    5769tar xzf RootBeacon.tar.gz
    5870cd RootBeacon/InstallScript
    59 chmod +x ontime_software_install.sh
    6071./ontime_software_install.sh
    6172}}}
    6273
    6374
    64 __'''''On a Node Beacon Server:'''''__
     75__'''''On a Node Beacon PC:'''''__
     76
    6577{{{
    6678tar xzf NodeBeacon.tar.gz
    6779cd NodeBeacon/InstallScript
    68 chmod +x ontime_software_install.sh
    6980./ontime_software_install.sh
    7081}}}
    7182
    72 === 3.2 Software Configuration ===
    73 
    74 __'''''On the Root Beacon Server:'''''__
    75 
    76 __MySQL configuration__
    77 
    78 {{{
    79 mysql -u root < BuildWebServicesDatabase.sql
    80 mysql -u root < BuildMeasurementDatabase.sql
    81 mysql -u root
    82 }}}
    83 At the mysql prompt, type
    84 {{{
    85 CREATE USER 'collector'@'%' IDENTIFIED BY '<collector password>';
    86 GRANT ALL PRIVILEGES ON `Measurements` .  * TO 'collector'@'%';
    87 GRANT ALL PRIVILEGES ON `WebServices` .  * TO 'collector'@'%';
    88 exit
    89 }}}
    90 '''Note 1:''' Please change the <collector password> to a safe password.
    91 
    92 '''Note 2:''' If remote access to MySQL on the Root Beacon is disabled, please open the port TCP/3306 in the firewall and follow the tutorial at http://www.cyberciti.biz/tips/how-do-i-enable-remote-access-to-mysql-database-server.html
    93 
    94 
    95 __Invocation options configuration__
    96 
    97 {{{
    98 perl config_wizard.pl
    99 }}}
    100 Follow the steps as directed by the wizard script.
    101 
    102 __'''''On a Node Beacon Server:'''''__
    103 
    104 __Invocation options configuration__
    105 
    106 {{{
    107 perl config_wizard.pl
    108 }}}
    109 Follow the steps as directed by the wizard script.
    110 
    111 __'''''On the Web-portal:'''''__
    112 
    113 Login to the [http://ontime.oar.net OnTimeMeasure Researcher Web-portal] and provide the Slice RSpec information.
    114 
    115 
    116 === 3.3 Software Invocation ===
    117 
    118 __'''''On the Root Beacon Server:'''''__
    119 
    120 
    121 Go to "!RootBeacon/!RootScheduler/" and run
    122 {{{
    123 screen
    124 /opt/graphite/bin/run-graphite-devel-server.py /opt/graphite
    125 }}}
    126 If no error is reported, press '<CTRL>+a, c' sequence to open a new blank command window.
    127 {{{
    128 perl file_server.pl
    129 }}}
    130 If no error is reported, press '<CTRL>+a, c' sequence to open a new blank command window.
    131 {{{
    132 perl action_script.pl
    133 }}}
    134 If no error is reported, press '<CTRL>+a, c' sequence to open a new blank command window.
    135 {{{
    136 cd ../Collector/
    137 perl collector.pl
    138 }}}
    139 If no error is reported, press '<CTRL>+a, d' sequence in the SSH window to keep the service running in the background.
    140 
    141 
    142 
    143 __'''''On a Node Beacon Server:'''''__
    144 
    145 Go to '!NodeBeacon/Datagen/' and run
    146 
    147 {{{
    148 screen
    149 perl file_server.pl
    150 }}}
    151 If no error is reported, press '<CTRL>+a, c' sequence to open a new blank command window.
    152 {{{
    153 perl node_scheduler.pl
    154 }}}
    155 If no error is reported, press '<CTRL>+a, d' sequence in the SSH window to keep the service running in the background.
    156 
     83=== 3.2 Software Configuration and Invocation ===
     84
     85==== Through !OnTime Beacon web-portal ====
     86
     87Login to the [http://ontime.oar.net OnTimeBeacon]. Setup resources (provide RSpec information) and control Node/Root Beacons within slice in an ''interactive'' manner. Video demos of these steps can be viewed at [http://ontime.oar.net/demo/]
     88
     89
     90==== Through !OnTime Control command-line tools ====
     91
     92Follow the [https://svn.osc.edu/trac/activemon/wiki/OnTimeControlManual ''OntimeControl Manual''] to control Node/Root Beacons within slice in an ''automated'' manner.
    15793
    15894== 4. Distributed Case Installation ==
    15995
    16096=== 4.1 Software Installation ===
     97
     98The ''Centralized Case Installation'' will install distributed version automatically.
     99If you want to only install the distributed version, do the following steps:
     100
    161101Download the latest !OnTimeMeasure release package at http://ontime.oar.net/download/OnTimeMeasure_latest.php.
    162102
     
    168108
    169109
    170 Only the !NodeBeacon.tar.gz is needed. Upload it to a node beacon server and run the following commands to install the measurement service:
     110Only the !NodeBeacon.tar.gz is needed. Run the following commands to install the measurement service:
    171111
    172112{{{
    173113tar xzf NodeBeacon.tar.gz
    174114cd NodeBeacon/InstallScript
    175 chmod +x ontime_software_install.sh
    176115./ontime_software_install.sh
    177116}}}
    178117
    179 === 4.2 Software Configuration ===
    180 
    181 
    182 __NTP Configuration__
    183 
    184 {{{
    185 sudo vim /etc/ntp.conf
    186 }}}
    187 Edit the last line to:
    188 {{{
    189 server owamp.newy.net.internet2.edu
    190 }}}
    191 Restart ntpd service
    192 {{{
    193 sudo /etc/init.d/ntpd restart
    194 }}}
    195 
    196 __BWCTL Configuration__
    197 
    198 Edit the BWCTL config: /etc/bwctld/bwctld.conf
    199 
    200 Remove the comments on the below lines and edit them as:
    201 {{{
    202 allow_unsync
    203 sync_fuzz 5
    204 }}}
    205 
    206 Edit the BWCTL limits: /etc/bwctld/bwctld.limits
    207 Change the regular limit to:
    208 
    209 {{{
    210 limit regular with parent=root, \
    211         duration=30, \
    212         allow_tcp=on, \
    213         allow_udp=on, \
    214         allow_open_mode=on
    215 }}}
    216 
    217 Restart BWCTL:
    218 {{{
    219 sudo /etc/init.d/bwctld restart
    220 }}}
    221 
    222 '''Note:''' For more detailed instructions to configure NTP and BWCTL, please refer to the BWCTL Tool website. (http://www.internet2.edu/performance/bwctl/)
    223 
    224 __Node Beacon invocation options configuration__
    225 
    226 {{{
    227 cd NodeBeacon/InstallScript
    228 perl config_wizard.pl
    229 }}}
    230 Follow the steps as directed by the wizard script.
    231 
    232 __'''''On the Web-portal:'''''__
    233 
    234 Login to the [http://ontime.oar.net OnTimeMeasure Researcher Web-portal] and provide the Slice information.
    235 
    236 
    237 === 4.3 Software Invocation ===
    238 
    239 Go to '!NodeBeacon/Datagen/' and run
    240 {{{
    241 screen
    242 perl file_server.pl
    243 }}}
    244 If no error is reported, press '<CTRL>+a, c' sequence to open a new blank command window.
    245 
    246 '''Note:'''Centralize and distributed share the same file server script. If you run both centralized and distributed on the same machine, you only need to run the file_server.pl once.
    247 {{{
    248 perl dist_scheduler.pl
    249 }}}
    250 If no error is reported, press '<CTRL>+a, d' sequence in the SSH window to keep the service running in the background.
     118
     119=== 4.2 Software Configuration and Invocation ===
     120
     121==== Through !OnTime Beacon web-portal ====
     122
     123Login to the [http://ontime.oar.net OnTimeBeacon]. Setup resources (provide RSpec information) and control Node/Root Beacons within slice in an ''interactive'' manner. Video demos of these steps can be viewed at [http://ontime.oar.net/demo/]
     124
     125
     126==== Through !OnTime Control command-line tools ====
     127
     128Follow the [https://svn.osc.edu/trac/activemon/wiki/OnTimeControlManual ''OntimeControl Manual''] to control Node/Root Beacons within slice in an ''automated'' manner.
     129
    251130
    252131== 5 Reference ==