How to Build a Room-Based Access Grid Node

Access Grid Toolkit 2.0

 

Futures Laboratory

Argonne National Laboratory

9700 S. Cass Ave.

Argonne, IL 60439

 

1.0 Introduction

This document describes how to build a Room-Based Access Grid Node, or multiple-machine node, using the Access Grid Toolkit 2.0 software.  It also describes how to start the node after configuration, and how it is navigated by the venue client.

2.0 Overview

The structure of an AG2 node consists of a node service, one or more service managers, and one or more services.  A Room Node consists specifically of a node service, multiple service managers, and multiple services, as shown in the figure below.

 

 

 

In this example, the video machine runs a service manager and several video producer services; the display machine runs the node service, a service manager, and a video consumer service; and the audio machine runs a service manager and an audio service.  The Node Service could be run on any machine; the display node is chosen in this example.

3.0 Installing the Node

The installation method is specific to each platform. These instructions are intended to be general enough to apply to both platforms, so don’t make specific references to RPMs or Windows executables (oops, there’s a reference).

 

Install the prerequisites, as listed on the AG2 software prerequisites page, on each machine in the node

 

The list of prerequisites can be found at:

 

http://www.mcs.anl.gov/fl/research/accessgrid/software/software.html

 

Step 1: Install AG2 software on the display machine

The following components should be installed:

  • AccessGrid
  • AccessGrid-VenueClient
  • vic

 

Step 2: Install AG2 software on the audio machine

The following components should be installed

  • AccessGrid
  • rat

 

Step 3: Install AG2 software on the video machine

The following components should be installed

  • AccessGrid
  • AccessGrid-VideoProducerService
  • vic

4.0 Configuring and Starting the Node

 

Note:  You must have your certificate on each of the node machines, and you must have created a valid proxy from that certificate.

 

Step 1: Run Service Managers and Node Service

  • Log in to each machine, update your proxy if necessary, and run AGServiceManager.py
  • On the display machine, run AGNodeService.py.  The node service may load a default configuration, which may be augmented or replaced; this document will assume ServiceManagers and Services loaded from the default configuration have been removed.

Step 2: Run the Node Management Client

  • On the display machine, run NodeManagement.py; it will say “Connected” in the title bar if it successfully connected to the Node Service.

 

Step 3: Add Service Managers to the Node Service

  • Select ServiceManager->Add, and in the Hostname field type the name of the display machine.  If you chose a different port when starting AGServiceManager.py on this machine, enter it in the Port field.
  • Perform the previous step for the audio and video machines

 

 



Step 4: Add Services to the Service Managers

  • In the ServiceManagers list, select the display machine (e.g. display:12000)
  • Select Service->Add, VideoConsumerService; the VideoConsumerService should appear in the Services list

 

  • In the ServiceManagers list, select the audio machine
  • Select Service->Add, AudioService; the AudioService should appear in the Services list

 

  • For each capture card in the video machine:
    • In the ServiceManagers list, select the video machine
    • Select Service->Add, VideoProducerService
    • Select the capture card to assign to this video producer service; the VideoProducerService should appear in the Services list





Step 5: Configure VideoProducerServices

  • For each Video Producer Service:
  • In the Services list, select the Video Producer Service
  • Select Service->Configure
  • Adjust the port parameter to the correct value
    • Hauppauge -> S-Video
    • (another example?)
  • Adjust the streamname parameter to represent the camera
    • Presenter
    • Audience

 

 

 


 



 

 

Step 6: Store Node Configuration

  • Select File->StoreConfiguration
  • Provide a name and select "Set as default"
  • The configuration will be stored with the specified name, and will be loaded when the Node Service is started.

 



This process can be varied to configure the node with different collections of service managers and services, and each different node configuration can be saved. 

 

Step 7: Run the Venue Client

  • On the display machine, run VenueClient.py
  • When a venue is entered, the services configured on each machine will start with the media addresses for the venue

 

Note: The VenueClient and the NodeService can be run on separate machines.  When doing so, the location of the Node Service must be set.  This is done in the Venue Client using MyNode->SetURL.  Once the Node Service URL is set and a venue is entered, the services configured on each machine will start with the media addresses for the venue.  This allows a user to navigate the node from a computer outside the node.

5.0 Starting the Node (after configuration)

To bring the node back up to its configured state, the processes need to be started and the configuration loaded.

 

Step 1: Run Service Managers and Node Service

  • Log in to each machine, update your proxy if necessary, and run AGServiceManager.py
  • On the display machine, run AGNodeService.py.  The node service will load its default configuration.



Step 2: Run the Venue Client

  • On the display machine, run VenueClient.py
  • When a venue is entered, the services configured on each machine will start with the media addresses for the venue

 

6.0 Troubleshooting

This section is intended to include information about troubleshooting the process outlined in the document.  

 

For help with a problem not addressed here, send e-mail to

ag-tech@mcs.anl.gov.  Someone on the list may have encountered the same problem; several on the list should be willing to help.  Be sure to include enough detail to allow others to understand and possibly reproduce the problem.

 

Problems with the software should be filed in our bug database:

 

http://bugzilla.mcs.anl.gov/AccessGrid/enter_bug.cgi