Changes between Initial Version and Version 1 of OTM-Windows


Ignore:
Timestamp:
02/10/12 11:43:46 (12 years ago)
Author:
yxu@osc.edu
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • OTM-Windows

    v1 v1  
     1= !OnTimeMeasure-GENI Installation Procedure on Windows XP =
     2'''Prasad Calyam, Yingxiao Xu'''[[BR]]
     3'''February 10, 2012'''
     4
     5''Software License:'' [http://www.geni.net/wp-content/uploads/2009/02/geniprojlic.pdf ''GENI Project License (GPL)'']
     6
     7== 1. Getting Started ==
     8This document describes the installation, configuration and usage of !OnTimeMeasure, which is a measurement service for windows XP users. The measurement service can be used to perform centralized and distributed orchestration and provisioning of measurements within experiment slices for purposes such as:
     9
     10 * Network paths monitoring
     11 * Network weather forecasting
     12 * Network performance anomaly detection
     13 * Network-bottleneck fault-location diagnosis
     14
     15       
     16== 2. Requirements ==
     17
     18The !OnTimeMeasure software package has the following requirements:
     19
     20A. ''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)
     21
     22B. ''User Accounts:'' User must have registered accounts in the [http://ontime.oar.net OnTimeMeasure Researcher Web-portal]
     23
     24
     25'''Note:''' Typically, two or more Node Beacons and one Root Beacon need to be installed on separate dedicated PCs. For windows users, the best way is to install Node Beacons on Windows, and install Root Beacon on Linux.
     26
     27
     28
     29== 3. Node Beacon Installation  ==
     30
     31
     32=== 3.1 Install iperf ===
     33
     34Download and install iperf 2.0.5 package in http://mayoxide.com/iperf/
     35
     36
     37=== 3.2 Install Python-django ===
     38
     39Download python 2.5.4 in http://www.python.org/download/releases/2.5.4/  (For other version, see - http://www.python.org/download/)
     40
     41Download Django 1.0.2 in
     42http://media.djangoproject.com/releases/1.0.2/Django-1.0.2-final.tar.gz (For other version, see - http://www.djangoproject.com/download/)
     43
     44
     45Install python. Then add path to python installation folder by right click My Computer -> Properties -> Advanced -> Environment Variables -> System Variables -> Path, and add C:\Python25;C:\Python25\Scripts.
     46
     47
     48Extract Django, run the following command to install Django.
     49{{{
     50setup.py install
     51}}}
     52
     53Aftar complete, type python, run the following command to check the installation.
     54{{
     55 import django
     56 print django.get_version()
     57
     58}}}
     59
     60=== 3.3 Install setuptools ===
     61
     62Download and install setuptools  for python 2.5 win 32 in http://pypi.python.org/pypi/django-supervisor/0.2.3#downloads. (For other version, see - http://pypi.python.org/pypi/setuptools)
     63
     64Then navigate to the django-supervisor folder. Type
     65{{{
     66 easy_install django-supervisor
     67}}}
     68
     69Alternate links and methods:
     70- http://code.activestate.com/pypm/django-supervisor/
     71- http://www.stat.ucla.edu/~rosario/classes/07F/202a/python/index.html ]
     72
     73}}}
     74
     75=== 3.4 Install Active-perl ===
     76Download and install Active-perl in http://www.dbatools.net/experience/install_active_perl_windows.html
     77
     78=== 3.5 Install Log4Perl ===
     79Run ppm tools of Active-perl. Install Log4Perl under ppm prompt by invoke the following command
     80
     81{{{
     82ppm>  install Log-Log4perl
     83}}}
     84
     85=== 3.6 Install libio-socket-ssl-perl and libnet-ssleay-perl/ ===
     86
     87Download and install in http://www.apecity.com/net_smtp_ssl/ and http://www.perlmonks.org/?node_id=502856
     88
     89
     90===  3.7  Setup SSL ===
     91
     92Under ppm prompt by invoke the following command
     93
     94{{{
     95Ppm> install http://theoryx5.uwinnipeg.ca/ppms/Crypt-SSLeay.ppd
     96}}}
     97
     98Download http://perl.apache.org/dist/win32-bin/ppms/x86/IO-Socket-SSL.tar.gz
     99Unzip folder auto and IO folde under folder lib to  C:\perl\site\lib
     100
     101Download openSSL from http://www.shininglightpro.com/products/Win32OpenSSL.html 
     102
     103Extract it to c:\OpenSSL-Win32\,  add path for c:\OpenSSL-Win32\bin
     104
     105A sample config.txt file is as follows:
     106
     107{{{
     108[ req ]
     109default_bits = 1024
     110encrypt_key = yes
     111distinguished_name = req_dn
     112x509_extensions = cert_type
     113prompt=no
     114[ req_dn ]
     115O=oklahoma-5be661
     116OU=Automatically-generated SSL key
     117CN=Activemon
     118[ cert_type ]
     119nsCertType = server
     120
     121Use the following command to generate cert and key
     122    openssl req -new -x509 -days 365 -nodes -config config.txt -out server-cert.pem -keyout server-key.pem
     123
     124}}}
     125
     126
     127===  3.8  Copy !NodeBeacon ===
     128
     129Download and extract the latest !OnTimeMeasure release package at http://ontime.oar.net/download/OnTimeMeasure_latest.php.
     130
     131Once you have downloaded the tar file, untar/unzip to see that it contains:
     132
     133 * !NodeBeacon.tar.gz
     134 * !RootBeacon.tar.gz
     135 * README.txt
     136
     137Extract !NodeBeacon to local disk.
     138
     139Make two folder(tmp and log ) manually under folder !NodeBeacon
     140
     141
     142
     143
     144== 4. !NodeBeacon Adaption
     145
     146=== 4.1 Change file name to meet filename restriction of windows. ===
     147
     148Change Datagen\suppl.pm
     149
     150Locate:
     151{{{
     152   my $CurrTestTs = sprintf('%04d-%02d-%02d.%02d:%02d:%02d',
     153}}}
     154change to:
     155{{{
     156   my $CurrTestTs = sprintf('%04d-%02d-%02d.%02dX%02dX%02d'
     157}}}
     158
     159
     160Change Datagen\Run-tool.pl
     161
     162Locate
     163{{{
     164   $tt1 =~ s/\.//g;
     165}}}
     166Add a line behind:
     167{{{
     168   $tt1 =~ s/X//g;
     169
     170}}}
     171
     172=== 4.2 Change the folder path ===
     173
     174
     175Change the folder path{{{ / }}}to{{{ \ }}}i n node_service.py and Pythonlogger.conf
     176
     177
     178=== 4.3 Change the Parser ===
     179
     180
     181In file parser.pm, for tool of each metric you want to measure, change the parser to extract the data from the raw data in windows.
     182
     183A sample parser for Ping tool
     184{{{
     185sub ping # ($ts, $src, $dst, @data)
     186{
     187        shift @_; # remove method name.
     188        my ($tt, $src, $dst, @fData) = @_;
     189        my @t_line = split (/ms/, $fData[-1]);
     190        my @data_size = split (/= /, $t_line[0]);
     191        $min=$data_size[1];
     192        @data_size = split (/= /, $t_line[1]);
     193        $max=$data_size[1];
     194        @data_size = split (/= /, $t_line[2]);
     195        $avg=$data_size[1];
     196        my $dline = "ping\#$tt\#$min\#$max\#$avg\#$src\#$dst";
     197        return $dline;
     198}
     199
     200
     201}}}
     202
     203
     204== 5.  !NodeBeacon Startup ==
     205
     206Run the following command to start !NodeBeacon.
     207
     208{{{
     209
     210cd Datagen
     211perl file_server.pl
     212
     213cd Datagen
     214perl node_scheduler.pl
     215
     216cd Datagen
     217python node_service.py
     218
     219}}}
     220
     221
     222
     223== 6 Install Root Beacon ===
     224
     225Choose a Linux machine as root beacon. SSH login into the root beacon.
     226
     227Download and extract the latest !OnTimeMeasure release package at http://ontime.oar.net/download/OnTimeMeasure_latest.php.
     228
     229Invoke the following command to install !RootBeacon.
     230
     231{{{
     232tar xzf RootBeacon.tar.gz
     233cd RootBeacon/InstallScript
     234./ontime_software_install.sh
     235}}}
     236
     237
     238== 7 Software Invocation  ==
     239
     240=== Through !OnTime Beacon web-portal ===
     241
     242Login 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/]
     243
     244
     245=== Through !OnTime Control command-line tools ===
     246
     247Follow the [http://groups.geni.net/geni/wiki/OTM-Control ''OntimeControl Manual''] to control Node/Root Beacons within slice in an ''automated'' manner.
     248
     249
     250'''Note:'''
     251 This is only a installation document in case that you have to use Windows. We recommend you install OnTimeMeasure in Linux OS whenever possible.
     252