
WMS Factory Design
Factory - Frontend Protocol
Introduction
This document describes the v2+ protocol between the glideinWMS Factory and the supported Frontend services.
The protocol defines how the Frontend describes "what" needs to be done and the Factory knows "how" to do it.
Communication between the Factory and Frontend
The Factory and Frontends communicate through the WMS Collector using Condor Classads. The Classads have an internal Condor type of "Master" or "License" and they contain information generated by both glideinWMS and Condor.
- The Factory creates a Classad for each entry point to advertise that entry’s attributes.
- GlideinMyType = glidefactory
- The Frontend creates a request Classad for a specific entry at a Factory from which the Frontend wants glideins. This Classad contains information needed to submit and start the glideins per the Frontend’s requirements.
- GlideinMyType = glideclient
- The Factory creates a Classad for each Frontend that it handles a request from with monitoring values.
- GlideinMyType = glidefactoryclient
Authentication
If encryption is used, the encrypted identity in the Frontend request must match the AuthenticatedIdentity attribute inserted by the Condor Collector. This is fundamental for the security of the glideinWMS protocol and is added to all Classads.
- AuthenticatedIdentity = "user@node.domain.name"
Condor Attributes
Each Classad will contain additional Condor attributes automatically added by Condor. These are reserved names and cannot be overridden. The list below may be slightly different depending on what version of Condor is used, please see the Condor documentation for more information.
- MyAddress = "<111.222.333.44:0>"
- LastHeardFrom = 1292273491
- UpdatesTotal = 5418
- UpdatesSequenced = 5380
- UpdateSequenceNumber = 1405
- UpdatesLost = 1
- UpdatesHistory = "0x00000000000000000000000000000000"
- TargetType = ""