persistent process supervision
perp_intro(8)           persistent process supervision           perp_intro(8)

       perp_intro - introduction to the perp service management framework


       The  perp  service  management  framework provides a set of daemons and
       utilities to start, monitor, log, and control a collection  of  persis-
       tent processes.  This document provides a basic overview of the system.
       Further details may be found in the manual pages as referenced.

       ``persistent process''
              Any long-running program, normally intended to start  at  system
              boot and continue running until system shutdown.  Also known and
              often described as a ``service''.   A  persistent  process  will
              normally  provide some essential system service on-demand.  Pro-
              grams that service email, domain name queries, and http requests
              are  examples  of  services  that are normally run as persistent

       ``service definition''
              A service definition is the set of perpetrate(5) runscripts  and
              associated  files  that  tell the perpd(8) program how to start,
              run, and optionally log a service.  The  base  directory  for  a
              collection  of  service  definitions is normally /etc/perp.  The
              service definition for a particular service ``foo'' will then be
              installed in the service definition directory /etc/perp/foo.

       ``service activation''
              A  service  definition may be installed and configured as summa-
              rized above, but does not become operative until it is  specifi-
              cally activated.  An activated service is then recognized by the
              perpd(8) scanner.  Service activation is controlled  by  setting
              the  sticky(7) bit on the service definition directory.  Setting
              the sticky bit activates the service, unsetting the  sticky  bit
              deactivates  the  service.  The sticky bit is manipulated on the
              command line with the chmod(1) utility, or with the A and X com-
              mands to the perpctl(8) utility.

       ``process supervisor''
              Some program, itself a persistent process, that starts and moni-
              tors another program to ensure its persistency.

   Daemon Programs
              the principal daemon of a perp installation:  service  directory
              scanner,  process  supervisor,  and service controller; normally
              operating on the service installation directory /etc/perp

              recommended utility for starting perpd(8)

   Control Programs
              one-time post-installation configurator for initializing a  perp

              administrative utility for runtime control of perpd(8)

              rescan trigger utility for perpd(8)

   Query Programs
              perp service lister

              perp status reporter

              perp service checker

   Logging Programs
              log stdin to syslog(3)

              log stdin to directory of rotated logfiles

       The  service  installation  directory /etc/perp will have the following

              base directory for service installation, monitored by perpd(8)

              configuration directory used by perpboot(8) to start perpd(8)

       /etc/perp/.control [--> /var/run/perp ]
              runtime control directory for the /etc/perp installation  direc-
              tory; normally a symlink to /var/run/perp

              perpetrate(5)  definition  directory  for  some  service ``foo''
              under supervision of perpd(8)

              perpetrate(5) optional runscript for starting/resetting a logger
              for service ``foo''

              perpetrate(5) required runscript for starting/resetting the ser-
              vice ``foo''

       Wayne Marshall,

       perp-setup(8),  perpboot(8),   perpctl(8),   perpd(8),   perpetrate(5),
       perphup(8), perpls(8), perpok(8), perpstat(8), sissylog(8), tinylog(8)

perp-2.07                        January 2013                    perp_intro(8)