Also, add its logfiles and extra log files.
Signed-off-by: Michele Tartara <mtartara@google.com>
Reviewed-by: Iustin Pop <iustin@google.com>
CONFD = "ganeti-confd"
RAPI = "ganeti-rapi"
MASTERD = "ganeti-masterd"
+MOND = "ganeti-mond"
DAEMONS = compat.UniqueFrozenset([
NODED,
CONFD,
RAPI,
MASTERD,
+ MOND,
])
DAEMONS_PORTS = {
RAPI: ("tcp", 5080),
SSH: ("tcp", 22),
}
+
DEFAULT_NODED_PORT = DAEMONS_PORTS[NODED][1]
DEFAULT_CONFD_PORT = DAEMONS_PORTS[CONFD][1]
DEFAULT_RAPI_PORT = DAEMONS_PORTS[RAPI][1]
CONFD: "conf-daemon",
RAPI: "rapi-daemon",
MASTERD: "master-daemon",
+ MOND: "monitoring-daemon",
}
DAEMONS_LOGFILES = \
for daemon in DAEMONS_LOGBASE)
# Some daemons might require more than one logfile.
+# Specifically, right now only the Haskell http library "snap", used by the
+# monitoring daemon, requires multiple log files.
# These are the only valid reasons for having an extra logfile
EXTRA_LOGREASON_ACCESS = "access"
])
# These are the extra logfiles, grouped by daemon
-DAEMONS_EXTRA_LOGBASE = {}
+DAEMONS_EXTRA_LOGBASE = {
+ MOND: {
+ EXTRA_LOGREASON_ACCESS: "monitoring-daemon-access",
+ EXTRA_LOGREASON_ERROR: "monitoring-daemon-error",
+ }
+ }
DAEMONS_EXTRA_LOGFILES = \
dict((daemon, dict((extra,
| GanetiNoded
| GanetiRapi
| GanetiConfd
+ | GanetiMond
deriving (Show, Enum, Bounded, Eq, Ord)
data MiscGroup = DaemonsGroup
daemonName GanetiNoded = C.noded
daemonName GanetiRapi = C.rapi
daemonName GanetiConfd = C.confd
+daemonName GanetiMond = C.mond
-- | Returns the log file base for a daemon.
daemonLogBase :: GanetiDaemon -> String
daemonLogBase GanetiNoded = C.daemonsLogbaseGanetiNoded
daemonLogBase GanetiRapi = C.daemonsLogbaseGanetiRapi
daemonLogBase GanetiConfd = C.daemonsLogbaseGanetiConfd
+daemonLogBase GanetiMond = C.daemonsLogbaseGanetiMond
-- | Returns the configured user name for a daemon.
daemonUser :: GanetiDaemon -> String
daemonUser GanetiNoded = C.nodedUser
daemonUser GanetiRapi = C.rapiUser
daemonUser GanetiConfd = C.confdUser
+daemonUser GanetiMond = C.mondUser
-- | Returns the configured group for a daemon.
daemonGroup :: GanetiGroup -> String
daemonGroup (DaemonGroup GanetiNoded) = C.nodedGroup
daemonGroup (DaemonGroup GanetiRapi) = C.rapiGroup
daemonGroup (DaemonGroup GanetiConfd) = C.confdGroup
+daemonGroup (DaemonGroup GanetiMond) = C.mondGroup
daemonGroup (ExtraGroup DaemonsGroup) = C.daemonsGroup
daemonGroup (ExtraGroup AdminGroup) = C.adminGroup
\ constants.NODED_USER,\n\
\ constants.RAPI_USER,\n\
\ constants.CONFD_USER,\n\
+ \ constants.MOND_USER,\n\
\ ]\n\
\groups = [constants.MASTERD_GROUP,\n\
\ constants.NODED_GROUP,\n\
\ constants.RAPI_GROUP,\n\
\ constants.CONFD_GROUP,\n\
+ \ constants.MOND_GROUP,\n\
\ constants.DAEMONS_GROUP,\n\
- \ constants.ADMIN_GROUP]\n\
+ \ constants.ADMIN_GROUP,\n\
+ \ ]\n\
\encoded = (users, groups)\n\
\print serializer.Dump(encoded)" ""
>>= checkPythonResult