Version 23 (modified by 13 years ago) (diff) | ,
---|
Integrated Management Framework Evaluation
This evaluation reviews the documentation and code used for the GEC10 Demo of the Integrated Measurement Framework demonstration for the milestone:
IMF: S3.d Documentation and Code Release (Completed late 05/13/11)
According to the IMF Post-GEC11 status, the IMF code is available as attachments the status page. The following perfSONAR components are available:
- Standalone command-line client for IMF measurements
- Standalone GUI client for IMF measurements
- Measurement Handler
- PubSub
- IMF Realtime service
In addition to the software, a login account is required to access http://ben.renci.org. To use the features in the !PubSub_for_PerfSONAR package.
Evaluation Timeline: October 7, 2011
Integrated Management Framework Findings
Found various issues captured were captured in as bugs in the IMF track system. The list of issues found includes:
- Ticket 4 MH undocumented prerequisites and version error for makefile creation
- Ticket 5 Real Time package installation inconsistencies and error
- Ticket 6Real Time Readme issues
- Ticket 7 Pub Sub package issues
- Ticket 8 MH README Feedback
- Ticket 9 prepare_environment.sh fails with missing components plus other errors
- Ticket 11 Exception while starting PSM on geni-imf-dev
Additionally had to request account on the server https://ben.renci.org and on the server geni-imf-dev.renci-dcr.ben. Access to the geni-imf-dev.renci-dcr.ben is only available via an OpenVPN connection, which requires additional Credentials. Each of these were acquired from the IMF team.
Integrated Management Framework How-to
Downloaded each of the 5 software packages available as attachments in the Code Snapshot section of the IMF GEC11 QSR.
Measurement Handler How-to
Unpacked and built the Measurement Handler package:
$ tar xvzf mh.tar.gz $ cd mh $ perl Makefile.PL
The perl command fails due to missing pre-requisite perl Modules: Date::Manip, Net::Telnet, and Thread::Queue::Any. Once installed was able to generate the makefile and proceed to the next step:
$ make make: *** No targets specified and no makefile found. Stop. lnevers@sendaria:~/IMF/mh$ perl Makefile.PL Argument "6.55_02" isn't numeric in numeric ge (>=) at Makefile.PL line 5. Checking if your kit is complete... Looks good Writing Makefile for mh $ make test PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t t/00-load.t ....... 1/1 # Testing tl1 1.3.1, Perl 5.010001, /usr/bin/perl t/00-load.t ....... ok t/boilerplate.t ... ok t/manifest.t ...... skipped: Author tests not required for installation t/pod-coverage.t .. skipped: Test::Pod::Coverage 1.08 required for testing POD coverage t/pod.t ........... skipped: Test::Pod 1.22 required for testing POD All tests successful. Test Summary Report ------------------- t/boilerplate.t (Wstat: 0 Tests: 3 Failed: 0) TODO passed: 1, 3 Files=5, Tests=4, 1 wallclock secs ( 0.03 usr 0.01 sys + 0.23 cusr 0.04 csys = 0.31 CPU) Result: PASS $ sudo make install Installing /usr/local/share/perl/5.10.1/tl1.pm Installing /usr/local/share/perl/5.10.1/mh/pol_tl1.pm Installing /usr/local/share/perl/5.10.1/mh/infinera_tl1.pm Installing /usr/local/man/man3/tl1.3pm Installing /usr/local/man/man3/mh::pol_tl1.3pm Installing /usr/local/man/man3/mh::infinera_tl1.3pm Appending installation info to /usr/local/lib/perl/5.10.1/perllocal.pod
Realtime Service How-to
Unpacked and built the Realtime Service package:
$ tar xvzf perfsonar_imf_realtime.tar.gz $ cd perfSONAR_PS-IMF-RealTime $ sudo make install sed -i "s|/opt/perfsonar_ps/imfrealtime|/opt/perfsonar_ps/imfrealtime|g" ./etc/daemon.conf sed -i "s|/opt/perfsonar_ps/imfrealtime|/opt/perfsonar_ps/imfrealtime|g" ./etc/daemon_logger.conf for i in `ls ./scripts`; do sed -i "s|/opt/perfsonar_ps/imfrealtime|/opt/perfsonar_ps/imfrealtime|g" ./scripts/${i}; done mkdir -p /opt/perfsonar_ps/imfrealtime tar ch --exclude=etc/* --exclude=*spec --exclude=MANIFEST --exclude=Makefile -T MANIFEST | tar x -C /opt/perfsonar_ps/imfrealtime tar: doc/README: Cannot stat: No such file or directory tar: Exiting with failure status due to previous errors for i in `cat MANIFEST | grep ^etc`; do mkdir -p `dirname /opt/perfsonar_ps/imfrealtime/${i}`; if [ -e /opt/perfsonar_ps/imfrealtime/${i} ]; then install -m 640 -c ${i} /opt/perfsonar_ps/imfrealtime/${i}.new; else install -m 640 -c ${i} /opt/perfsonar_ps/imfrealtime/${i}; fi; done
PubSub How-to
Unpacked and built the PubSub package:
$ tar xvzf PubSub_for_PerfSONAR.tar.gz $ $ cd PubSub_for_PerfSONAR/IMF/
Met pre-requisites for Pub Sub system:
- Get account on https://ben.renci.org/.
- Got account on geni-imf-dev.renci-dcr.ben system. Access to this system requires OpenVPN access.
- Got Encrypted OpeenVPN Credentials to access the OpenVPN site.
- Installed OpenVPN as described at the BEN Wiki page named Using BEN VPN
- Install the network manager to configure OpenVPN.
The following packages had to be installed for OpenVPN and Network Manager:
$ sudo apt-get install openvpn network-manager-openvpn openvpn-blacklist network-manager $ sudo apt-get install resolvconf
Run the network Manager to configure the OpenVPN
$ sudo NetworkManager $ sudo nm-connection-editor
The encrypted OpenVPN Credential has to be unpacked usind a passphrase provided out of band:
$ gpg -d gpo-bbn.zip.gpg > gpo-bbn.zip $ unzip gpo-bbn.zip Archive: gpo-bbn.zip creating: gpo-bbn/ inflating: gpo-bbn/gpo-bbn.conf inflating: gpo-bbn/gpo-bbn.ovpn inflating: gpo-bbn/dh1024.pem inflating: gpo-bbn/ca.crt inflating: gpo-bbn/gpo-bbn.key inflating: gpo-bbn/gpo-bbn.crt
The file gpo-bbn/gpo-bbn.conf is imported into the Network Manager VPN settings to connect. Although I was not able to successfully import the configuration file, so switched to invoking the OpenVPN tool from the command line:
lnevers@arendia:~/IMF/VPN/gpo-bbn$ sudo openvpn --config ./gpo-bbn.conf --script-security 2 Thu Oct 13 15:59:09 2011 OpenVPN 2.2.1 i686-pc-linux-gnu [SSL] [LZO2] [EPOLL] [eurephia] built on Oct 13 2011 Enter Auth Username:lnevers Enter Auth Password: Thu Oct 13 15:59:15 2011 WARNING: No server certificate verification method has been enabled. See http://openvpn.net/howto.html#mitm for more info. Thu Oct 13 15:59:15 2011 NOTE: the current --script-security setting may allow this configuration to call user-defined scripts Thu Oct 13 15:59:15 2011 WARNING: file 'gpo-bbn.key' is group or others accessible Thu Oct 13 15:59:15 2011 Control Channel MTU parms [ L:1541 D:138 EF:38 EB:0 ET:0 EL:0 ] Thu Oct 13 15:59:15 2011 Data Channel MTU parms [ L:1541 D:1450 EF:41 EB:4 ET:0 EL:0 ] Thu Oct 13 15:59:15 2011 Local Options hash (VER=V4): '3514370b' Thu Oct 13 15:59:15 2011 Expected Remote Options hash (VER=V4): '239669a8' Thu Oct 13 15:59:15 2011 NOTE: UID/GID downgrade will be delayed because of --client, --pull, or --up-delay Thu Oct 13 15:59:15 2011 UDPv4 link local: [undef] Thu Oct 13 15:59:15 2011 UDPv4 link remote: 152.54.3.33:1194 Thu Oct 13 15:59:15 2011 WARNING: this configuration may cache passwords in memory -- use the auth-nocache option to prevent this Thu Oct 13 15:59:15 2011 VERIFY OK: depth=1, /C=US/ST=NC/L=Chapel_Hill/O=BEN@RENCI/emailAddress=ben-ops@renci.org Thu Oct 13 15:59:15 2011 VERIFY OK: depth=0, /C=US/ST=NC/L=Chapel_Hill/O=BEN@RENCI/OU=server/CN=server/emailAddress=ben-ops@renci.org Thu Oct 13 15:59:16 2011 Data Channel Encrypt: Cipher 'BF-CBC' initialized with 128 bit key Thu Oct 13 15:59:16 2011 Data Channel Encrypt: Using 160 bit message hash 'SHA1' for HMAC authentication Thu Oct 13 15:59:16 2011 Data Channel Decrypt: Cipher 'BF-CBC' initialized with 128 bit key Thu Oct 13 15:59:16 2011 Data Channel Decrypt: Using 160 bit message hash 'SHA1' for HMAC authentication Thu Oct 13 15:59:16 2011 Control Channel: TLSv1, cipher TLSv1/SSLv3 DHE-RSA-AES256-SHA, 1024 bit RSA Thu Oct 13 15:59:16 2011 [server] Peer Connection Initiated with 152.54.3.33:1194 Thu Oct 13 15:59:18 2011 TUN/TAP device tun0 opened Thu Oct 13 15:59:18 2011 /sbin/ifconfig tun0 192.168.207.22 pointopoint 192.168.207.21 mtu 1500 Thu Oct 13 15:59:18 2011 GID set to adm Thu Oct 13 15:59:18 2011 UID set to nobody Thu Oct 13 15:59:18 2011 Initialization Sequence Completed
Once the VPN is up, connected to the BEN Gateway:
$ ssh gw.ben.renci.org
Once loggeg in, connect to the geni-imf-dev host:
[lnevers@gw ~]$ ssh geni-imf-dev.renci-dcr.ben
Install the PubSub component:
$ tar xvzf PubSub_for_PerfSONAR.tar.gz $ cd PubSub_for_PerfSONAR/IMF/imf_pfsr/src/psm/
Set up the environment variable from the README.txt.txt:
export JAVA_HOME=/opt/java/jdk1.6.0_18 export ANT_HOME=/opt/java/apache-ant-1.8.0 export MAVEN_HOME=/opt/java/apache-maven-2.2.1 export PATH=$JAVA_HOME/bin:$ANT_HOME/bin:$MAVEN_HOME/bin:$PATH export IMF_HOME=/home/lnevers/PubSub_for_PerfSONAR/IMF/
Then ran maven install which failed due to a known missing jar problem, which is addressed by running the following first:
$ mvn install:install-file -DgroupId=org.jivesoftware.smackx -DartifactId=smackx-pubsub -Dversion=3.1.0 -Dpackaging=jar -Dfile=lib/smackx.jar $ mvn install:install-file -DgroupId=javax.mail -DartifactId=mail -Dversion=1.4 -Dpackaging=jar -Dfile=lib/mail-1.4.jar $ mvn install:install-file -DgroupId=javax.jms -DartifactId=jms -Dversion=1.1 -Dpackaging=jar -Dfile=lib/jms.jar $ mvn install:install-file -DgroupId=com.sun.jdmk -DartifactId=jmxtools -Dversion=1.2.1 -Dpackaging=jar -Dfile=lib/jmxtools.jar $ mvn install:install-file -DgroupId=com.sun.jmx -DartifactId=jmxri -Dversion=1.2.1 -Dpackaging=jar -Dfile=lib/jmxri.jar
Once completed, was able to run the maven install:
$ mvn install assembly:assembly
Attempts to run the Pub Sub Client fails, waiting on response:
$ cd $IMF_HOME/imf_pfsr/src/psm $ lnevers@geni-imf-dev:~/PubSub_for_PerfSONAR/IMF/imf_pfsr/src/psm$ java -cp $IMF_HOME:target/psm-0.1-jar-with-dependencies.jar org.renci.geni_imf.psm.Simple 13:20:17,718 INFO IMF:201 - ***** PerfSONAR + PSM Integration ***** 13:20:17,719 INFO IMF:203 - Loading measurement properties 13:20:17,721 INFO IMF:215 - Creating XMPP connection 13:20:17,736 INFO IMF:226 - Preparing soap measurement request message #1 13:20:17,737 INFO IMF:278 - Starting measurement thread for PerfSONAR MP 13:20:22,738 INFO IMF:45 - Retrieving measurement from PerfSONAR MP Oct 19, 2011 1:20:22 PM com.sun.xml.internal.messaging.saaj.client.p2p.HttpSOAPConnection post SEVERE: SAAJ0009: Message send failed java.security.PrivilegedActionException: com.sun.xml.internal.messaging.saaj.SOAPExceptionImpl: Message send failed Exception in thread "Timer-0" java.lang.NullPointerException at org.renci.geni_imf.psm.PerfSONAR_MP.retrieve_measurement(PerfSONAR_MP.java:157) at org.renci.geni_imf.psm.MeasurementThread.run(MeasurementThread.java:51) at java.util.TimerThread.mainLoop(Timer.java:512) at java.util.TimerThread.run(Timer.java:462)
Email us with any questions and feedback on this page!