Skip to content

[booth] pcs booth ticket add shall be accompanied with native validation #240

@jnpkrn

Description

@jnpkrn

Pcs currently allows for invalid configuration for booth to be
generated, such as when (under simplification) expire period
is lower than or equal to 110 (see boothd(8)), resulting in:

Jan 09 17:10:21 virt-184 booth: [13184]: error: TICKET02: total amount of time to retry sending packets cannot exceed renewal frequency (5000*(10+1) >= 50000)
Jan 09 17:10:21 virt-184 booth: [13184]: error: in config file line 8

The suggested way to address that on pcs side:

  1. working generated contents of configuration file is output
    to a side, temporary and possibly persistence-unbacked location
    (/run/pcs/booth/virt-184/booth-booth.conf for instance)

  2. actual validation by booth is performed like this:

     booth status -c /run/pcs/booth/virt-184/booth-booth-FDs3k.conf
  1. the only complication possible -- the above may be launched on
    node that is not currently in possesion of cluster-wide
    booth-booth-ip resource (or equivalent), hence this would be
    shown as an error, resulting in exit status of 1:
Jan 09 17:43:17 virt-184 booth: [16750]: error: Cannot find myself in the configuration.

to workaround this, a cheap trick -- inject localhost address(es) --
could be applied; note that it's important to inject it in a way
that the resulting number of the actors will be odd, so e.g.,
add:

site = 127.0.0.1
site = 127.0.0.2

of course, this addition would need to be undone again when
the configuration as such passes, removing the working file
(/run/pcs/booth/virt-184/booth-booth-FDs3k.conf) behind

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions