Bug 1242749
Summary: | On killing the ganesha process, systemd restarts nfs-ganesha process by itself on rhel7.1 | ||
---|---|---|---|
Product: | [Red Hat Storage] Red Hat Gluster Storage | Reporter: | Apeksha <akhakhar> |
Component: | nfs-ganesha | Assignee: | Kaleb KEITHLEY <kkeithle> |
Status: | CLOSED ERRATA | QA Contact: | Apeksha <akhakhar> |
Severity: | urgent | Docs Contact: | |
Priority: | urgent | ||
Version: | rhgs-3.1 | CC: | asriram, asrivast, byarlaga, divya, kkeithle, ndevos, nlevinki, nsathyan, saujain, skoduri, vagarwal |
Target Milestone: | --- | Keywords: | ZStream |
Target Release: | RHGS 3.1.1 | ||
Hardware: | x86_64 | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | nfs-ganesha-2.2.0-6 | Doc Type: | Bug Fix |
Doc Text: |
Previously, on RHEL 7.1, nfs-ganesha restarted automatically if the process exits due to a signal that is not specified as a clean exit status. As a consequence, in such cases, cluster services may not detect that the nfs-ganesha service has been restarted on a node and was unable to take the appropriate action (for example, to put the entire cluster in grace). With this fix, nfs-ganesha.service file used by systemd has been corrected to not restart in case of any unexpected failures.
|
Story Points: | --- |
Clone Of: | Environment: | ||
Last Closed: | 2015-10-05 10:43:27 UTC | Type: | Bug |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: | |||
Bug Depends On: | |||
Bug Blocks: | 1202842, 1216951, 1251815, 1256227 | ||
Deadline: | 2015-08-28 |
Description
Apeksha
2015-07-14 06:43:17 UTC
From nfs-ganesha.service, [Service] Type=forking Environment="NOFILE=1048576" EnvironmentFile=/etc/sysconfig/ganesha ExecStart=/usr/bin/ganesha.nfsd $OPTIONS ExecStartPost=-/bin/bash -c "prlimit --pid $MAINPID --nofile=$NOFILE:$NOFILE" ExecReload=/bin/dbus-send --system --dest=org.ganesha.nfsd --type=method_call /org/ganesha/nfsd/admin org.ganesha.nfsd.admin.reload ExecStop=/bin/dbus-send --system --dest=org.ganesha.nfsd --type=method_call /org/ganesha/nfsd/admin org.ganesha.nfsd.admin.shutdown Restart=on-abort From the man page, Restart= Configures whether the service shall be restarted when the service process exits, is killed, or a timeout is reached. The service process may be the main service process, but it may also be one of the processes specified with ExecStartPre=, ExecStartPost=, ExecStop=, ExecStopPost=, or ExecReload=. When the death of the process is a result of systemd operation (e.g. service stop or restart), the service will not be restarted. Timeouts include missing the watchdog "keep-alive ping" deadline and a service start, reload, and stop operation timeouts. Takes one of no, on-success, on-failure, on-abnormal, on-watchdog, on-abort, or always. If set to no (the default), the service will not be restarted. If set to on-success, it will be restarted only when the service process exits cleanly. In this context, a clean exit means an exit code of 0, or one of the signals SIGHUP, SIGINT, SIGTERM or SIGPIPE, and additionally, exit statuses and signals specified in SuccessExitStatus=. If set to on-failure, the service will be restarted when the process exits with a non-zero exit code, is terminated by a signal (including on core dump, but excluding the aforementioned four signals), when an operation (such as service reload) times out, and when the configured watchdog timeout is triggered. If set to on-abnormal, the service will be restarted when the process is terminated by a signal (including on core dump, excluding the aforementioned four signals), when an operation times out, or when the watchdog timeout is triggered. If set to on-abort, the service will be restarted only if the service process exits due to an uncaught signal not specified as a clean exit status. If set to on-watchdog, the service will be restarted only if the watchdog timeout for the service expires. If set to always, the service will be restarted regardless of whether it exited cleanly or not, got terminated abnormally by a signal, or hit a timeout. So we may need to set Restart=no (not sure if can be done via CLI) in nfs-ganesha.service file. On killing the ganesha process, systemd restarts nfs-ganesha process by itself on rhel7.1 The nfs-ganesha.service file has been configured for restart=on-abort and this will trigger a restart automatically. This needs to be prevented in our clustered environment. The whole cluster needs to go to grace before a new NFS-Ganesha instance is started. Doc text is edited. Please sign off to be included in Known Issues. Doc text looks good to me Upstream merged https://review.gerrithub.io/243810 based on comment 10, moving this to post. Verified on nfs-ganesha-2.2.0-6.el7rhgs.x86_64 Soumya, Please review and sign-off the edited doc text. Doc text looks good to me. Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://rhn.redhat.com/errata/RHSA-2015-1846.html |