<commit_before>PuNDIT
======


PuNDIT will integrate and enhance several software tools needed by the High Energy Physics (HEP) community to provide an infrastructure for identifying, diagnosing and localizing network problems. In particular, the core of PuNDIT is the Pythia tool that uses perfSONAR data to detect, identify and locate network performance problems. The Pythia algorithms, originally based on one-way latency and packet loss, will be re-implemented incorporating the lessons learned from its first release and augmenting those algorithms with additional metrics from perfSONAR throughput and traceroute measurements.  The PuNDIT infrastructure will build upon other popular open-source tools including smokeping, ESnet's Monitoring and Debugging Dashboard (MaDDash) and the Open Monitoring Distribution (OMD) to provide a user-friendly network diagnosis framework.


#### Funding ####

    PuNDIT is funded by National Science Foundation award numbers 1440571 and 1440585

#### Project Duration ####

    September 2014 - August 2016

#### Principal Investigators ####

    <NAME>, University of Michigan (smckeeumich.edu)
    <NAME>, Georgia Tech (dovroliscc.gatech.edu)

##### pundit-central installation #####

Add PuNDIT yum repository.

     wget -O /etc/yum.repos.d/pundit.repo http://pundit.aglt2.org/pundit.repo


Install server component. Note that this will also install glassfish and mysql. 

     yum install pundit-central pundit-ui

Run the pundit-central initialization script. **It will prompt you for the mysql root password.**  By default, the password is blank. The script will create database and RabbitMQ users and update the configuration files. It will also start mysql and rabbitmq-server if they are not already running, and it will make sure mysql chkconfig is on.

     /opt/pundit-central/bin/initialize-pundit-central.sh

##### Prepare agent initialization properties #####

After initializing pundit-central, you will have a file that looks like this:

    > cat /opt/pundit-central/etc/pundit-agent.credentials
    agent-user=pundit-agent
    agent-password=<<PASSWORD>>
    central-hostname=<your-host.site.org>

You will need to add the list of all nodes on which you will install the agent. This will instruct the agent installation which network paths to look at

    agent-peers=<your-node.site.org>,<other-node.othersite.com>,<next-node.nextsite.edu>

##### pundit-agent installation #####

Add PuNDIT yum repository.

     wget -O /etc/yum.repos.d/pundit.repo http://pundit.aglt2.org/pundit.repo

Install pundit-agent on the perfsonar nodes.

	yum install pundit-agent

Copy the pundit agent file with the initialization properties and run the pundit-central initialization script. For conventience, the location can be a local file or a URL.

	/opt/pundit-agent/bin/initialize-pundit-agent.sh <location-of-pundit-agent.credentials>

The script can be run again in case you want to update the configuration.
<commit_msg>Adding link to mysql notes<commit_after>PuNDIT
======


PuNDIT will integrate and enhance several software tools needed by the High Energy Physics (HEP) community to provide an infrastructure for identifying, diagnosing and localizing network problems. In particular, the core of PuNDIT is the Pythia tool that uses perfSONAR data to detect, identify and locate network performance problems. The Pythia algorithms, originally based on one-way latency and packet loss, will be re-implemented incorporating the lessons learned from its first release and augmenting those algorithms with additional metrics from perfSONAR throughput and traceroute measurements.  The PuNDIT infrastructure will build upon other popular open-source tools including smokeping, ESnet's Monitoring and Debugging Dashboard (MaDDash) and the Open Monitoring Distribution (OMD) to provide a user-friendly network diagnosis framework.


#### Funding ####

    PuNDIT is funded by National Science Foundation award numbers 1440571 and 1440585

#### Project Duration ####

    September 2014 - August 2016

#### Principal Investigators ####

    <NAME>, University of Michigan (smckeeumich.edu)
    <NAME>, Georgia Tech (dovroliscc.gatech.edu)

##### pundit-central installation #####

Add PuNDIT yum repository.

     wget -O /etc/yum.repos.d/pundit.repo http://pundit.aglt2.org/pundit.repo


Install server component. Note that this will also install glassfish and mysql. 

     yum install pundit-central pundit-ui

Run the pundit-central initialization script. **It will prompt you for the mysql root password.**  By default, the password is blank. The script will create database and RabbitMQ users and update the configuration files. It will also start mysql and rabbitmq-server if they are not already running, and it will make sure mysql chkconfig is on.

     /opt/pundit-central/bin/initialize-pundit-central.sh

Note that the default configuration of MySQL from your distribution may need to be modified. Please refer to the [MySQL configuration notes](https://github.com/pundit-project/pundit/wiki/MySQL-configuration-notes).

##### Prepare agent initialization properties #####

After initializing pundit-central, you will have a file that looks like this:

    > cat /opt/pundit-central/etc/pundit-agent.credentials
    agent-user=pundit-agent
    agent-password=<<PASSWORD>>
    central-hostname=<your-host.site.org>

You will need to add the list of all nodes on which you will install the agent. This will instruct the agent installation which network paths to look at

    agent-peers=<your-node.site.org>,<other-node.othersite.com>,<next-node.nextsite.edu>

##### pundit-agent installation #####

Add PuNDIT yum repository.

     wget -O /etc/yum.repos.d/pundit.repo http://pundit.aglt2.org/pundit.repo

Install pundit-agent on the perfsonar nodes.

	yum install pundit-agent

Copy the pundit agent file with the initialization properties and run the pundit-central initialization script. For conventience, the location can be a local file or a URL.

	/opt/pundit-agent/bin/initialize-pundit-agent.sh <location-of-pundit-agent.credentials>

The script can be run again in case you want to update the configuration.

{'fraction_non_alphanumeric': 0.07525489561417704, 'fraction_numerical': 0.007768247289205373, 'mean_word_length': 4.392670157068062, 'pattern_counts': {'":': 0, '<': 21, '<?xml version=': 0, '>': 23, 'https://': 1, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '34151', 'n_tokens_mistral': 1758, 'n_tokens_neox': 1635, 'n_words': 708}