RSS -PilotInstantEfficiency question

10 views
Skip to first unread message

Janusz Martyniak

unread,
Jul 17, 2019, 11:12:42 AM7/17/19
to diracgrid-develop
Hi,

I'm looking into adapting the RSS for multiple VOs. First thing I'm trying to do is to configure the RSS for a single VO to see how it works. I've managed to configure the PropagationPolicy
for sites and it seems to work together with appropriate actions.

The next step is to look into resources and resource-related policies. I tried the PilotInstantEfficiency policy first, it seems to get evaluated but no actions are taken. I looked into that in more detail and it seems
that for the commands to work it needs pilot cache. This leads in turn to the CacheFeederAgent, if I'm not mistaken. The agent runs but my pilot cache DB is empty. When looking into the code, I find:

    # PilotsCommand
#    self.commands[ 'Pilots' ] = [
#                                 { 'PilotsWMS' : { 'element' : 'Site', 'siteName' : None } },
#                                 { 'PilotsWMS' : { 'element' : 'Resource', 'siteName' : None } }
#                                 ]
Enter code here...

Github shows that the code is 7 years old with some minor modifications done 4 years ago.

Is it the code I should activate ? Does it require additional configuration in the CS ?

Any help would be greatly appreciated.

   Janusz Martyniak

Federico Stagni

unread,
Jul 17, 2019, 11:56:01 AM7/17/19
to diracgri...@googlegroups.com
Hi Janusz,
first question: which version of DIRAC are you using? The RSS was changed in multiple occasions in the last few releases, so this is important.

Second: I am afraid you took the wrong example, as the PilotEfficiencyPolicy has not been updated for long time, and we have not been using it recently in LHCb, so I would start with a different one. A "must-use" policy is the DowntimePolicy, whose job is basically to ban (and unban) resources (SEs, CEs, FTS, etc.) and sites according to what's their status in GOCDB.

What follows is the DIRAC certification configuration (in /Operations/[setup]/). It's an example, of course, so adapt it to your case.



    ResourceStatus
    {
      Config
      {
        Cache = 300
        State = Active
        FromAddress = federic...@cern.ch
        notificationGroups = CertifGroup
        StatusTypes
        {
          default = all
          StorageElement = ReadAccess
          StorageElement += WriteAccess
          StorageElement += CheckAccess
          StorageElement += RemoveAccess
        }
      }
      Policies
      {
        AlwaysActiveForSite
        {
          matchParams
          {
            element = Site
          }
          policyType = AlwaysActive
        }
        AlwaysActiveForResource
        {
          matchParams
          {
            element = Resource
          }
          policyType = AlwaysActive
        }
        DTOngoing
        {
          matchParams
          {
            element = Resource
          }
        }
        DTScheduled1
        {
          matchParams
          {
            element = Resource
            elementType = StorageElement
            elementType += FTS
          }
        }
        DTScheduled
        {
          matchParams
          {
            element = Resource
            elementType = ComputingElement
          }
        }
        FreeDiskSpaceMB
        {
          matchParams
          {
            elementType = StorageElement
            statusType = WriteAccess
            element = Resource
          }
        }
        PropagationPolicy
        {
          matchParams
          {
            element = Site
          }
          policyType = PropagationPolicy
        }
      }
      PolicyActions
      {
        LogStatusAction
        {
        }
        LogPolicyResultAction
        {
        }
        ElementIsBanned
        {
          actionType = EmailAction
          combinedResult
          {
            Status = Banned
          }
          matchParams
          {
            status = Active
            status += Degraded
            status += Probing
          }
        }
        ElementIsUsable
        {
          actionType = EmailAction
          combinedResult
          {
            Status = Active
            Status += Degraded
          }
          matchParams
          {
            status = Probing
            status += Banned
          }
        }
        ElementError
        {
          actionType = EmailAction
          combinedResult
          {
            Status = Error
          }
          matchParams
          {
            status = Banned
            status += Probing
            status += Degraded
            status += Active
            status += Unknown
          }
        }
      }



Cheers,
Federico


--
You received this message because you are subscribed to the Google Groups "diracgrid-develop" group.
To unsubscribe from this group and stop receiving emails from it, send an email to diracgrid-deve...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/diracgrid-develop/9fce78bb-6ae8-4300-82d8-a5459510c40b%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Janusz Martyniak

unread,
Jul 17, 2019, 12:08:50 PM7/17/19
to diracgri...@googlegroups.com
Hi,

My dirac version is : v6r20p26

   best, JM
Reply all
Reply to author
Forward
0 new messages