| % |
| % Licensed to the Apache Software Foundation (ASF) under one |
| % or more contributor license agreements. See the NOTICE file |
| % distributed with this work for additional information |
| % regarding copyright ownership. The ASF licenses this file |
| % to you under the Apache License, Version 2.0 (the |
| % "License"); you may not use this file except in compliance |
| % with the License. You may obtain a copy of the License at |
| % |
| % http://www.apache.org/licenses/LICENSE-2.0 |
| % |
| % Unless required by applicable law or agreed to in writing, |
| % software distributed under the License is distributed on an |
| % "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| % KIND, either express or implied. See the License for the |
| % specific language governing permissions and limitations |
| % under the License. |
| % |
| % Create well-known link to this spot for HTML version |
| \ifpdf |
| \else |
| \HCode{<a name='DUCC_RM'></a>} |
| \fi |
| \chapter{Service Management} |
| \label{chap:sm} |
| The only administrative task relating to Service Management is registering |
| global pingers, as described in |
| \hyperref[subsec:services.pingers]{\em Service Pingers section} of this document. |
| |
| A globally-registered service pinger is a properties file that contains only |
| service registraton options pertaining to pingers. This file must be placed |
| in DUCC's {\em runtime}/resources/service\_monitors directory. It may be |
| given any name but ``best practices'' would suggest it be named the |
| same as the {\em service\_ping\_class}. Services then use this pinger |
| by specifying its filename in their {\em service\_ping\_class} option. |
| |
| Globally-registered pingers may be run internally as threads within the |
| SM, or externally as processes. To specify that a pinger be run internally, |
| add the property |
| \begin{verbatim} |
| internal = true |
| \end{verbatim} |
| to the registration file. To specify that it run externall, add the property |
| \begin{verbatim} |
| internal = false |
| \end{verbatim} |
| to the registration file. |
| |
| The ``internal'' option is flagged as in illegal option when |
| specified in service registrations and all pingers not specified as |
| ``internal'' are run as {\em external} processes managed by the SM. |
| |
| Best practices dictate that the filename of an {\em external} pinger contain the |
| postfix {\em .external} to clearly identify it as external. |
| |
| As an example, the default UIMA-AS pinger is supplied in the global registery |
| under the two names: |
| \begin{verbatim} |
| org.apache.uima.ducc.cli.UimaAsPing |
| org.apache.uima.ducc.cli.UimaAsPing.external |
| \end{verbatim} |
| |
| Note that users may override any of the properties in globally-registered |
| {\em external} pingers, but only the {\em service\_ping\_arguments} of an {\em internal} |
| pinger to protect its integrity by speicfy that argument in their own |
| service registrations. |
| |
| By default external pingers are launched with the same JRE as used by the DUCC daemons but if the |
| registration contains a entry for the JAVA\_HOME environment variable, that JRE will be used instead. |
| |