1PMPROXY(1)                  General Commands Manual                 PMPROXY(1)
2
3
4

NAME

6       pmproxy - proxy for performance metrics collector daemon
7

SYNOPSIS

9       pmproxy  [-Af]  [-C dirname] [-i ipaddress] [-l logfile] [-L bytes] [-M
10       certname] [-p port[,port ...]  [-P passfile] [-U username] [-x file]
11

DESCRIPTION

13       pmproxy acts as a protocol proxy for pmcd(1), allowing Performance  Co-
14       Pilot  (PCP)  monitoring  clients  to  connect  to  one or more pmcd(1)
15       instances via pmproxy.
16
17       Normally pmproxy is deployed in a firewall domain,  or  on  a  ``head''
18       node of a cluster where the IP (Internet Protocol) address of the hosts
19       where pmcd(1) is running may be unknown to the PCP monitoring  clients,
20       although  the  IP address of the host where pmproxy is running is known
21       to these clients.  Similarly, the clients may have network connectivity
22       only  to the host where pmproxy is running, while there is network con‐
23       nectivity from that host to the hosts of interest where pmcd(1) is run‐
24       ning.
25
26       The behaviour of the PCP monitoring clients is controlled by either the
27       PMPROXY_HOST environment variable  or  through  the  extended  hostname
28       specification (see PCPIntro(1) for details).  If neither of these mech‐
29       anisms is  used,  clients  will  make  their  connections  directly  to
30       pmcd(1).   If the proxy hostname syntax is used or PMPROXY_HOST is set,
31       then this should be the hostname or IP  address  of  the  system  where
32       pmproxy  is running, and the clients will connect to pmcd(1) indirectly
33       through the protocol proxy services of pmproxy.
34
35       The options to pmproxy are as follows.
36
37       -A     Disable service advertisement.  By default, pmproxy will  adver‐
38              tise  its presence on the network using any available mechanisms
39              (such as Avahi/DNS-SD), assisting remote monitoring  tools  with
40              finding it.  These mechanisms are disabled with this option.
41
42       -C dirname
43              Specify  the  path  to the Network Security Services certificate
44              database, for (optional) secure  connections.   The  default  is
45              /etc/pki/nssdb.   Refer  also  to the -P option.  If it does not
46              already exist, this database can be created using  the  certutil
47              utility.   This  process  and other certificate database mainte‐
48              nance information is provided in the PCPIntro(1) manual page and
49              the online PCP tutorials.
50
51       -f     By  default pmproxy is started as a daemon.  The -f option indi‐
52              cates that it should run in the foreground.  This is most useful
53              when trying to diagnose problems with establishing connections.
54
55       -i ipaddress
56              This  option  is  usually  only used on hosts with more than one
57              network interface (very common for firewall  and  ``head''  node
58              hosts  where  pmproxy  is most likely to be deployed).  If no -i
59              options are specified pmproxy accepts PCP client connections  on
60              any  of its host's IP addresses.  The -i option is used to spec‐
61              ify explicitly an IP address that PCP client connections  should
62              be accepted on.  ipaddress should be in the standard dotted form
63              (e.g. 100.23.45.6).  The -i option may be used multiple times to
64              define  a  list of IP addresses.  When one or more -i options is
65              specified, attempted connections made on any other IP  addresses
66              will be refused.
67
68       -l logfile
69              By  default  a log file named pmproxy.log is written in the cur‐
70              rent directory.  The -l option causes the log file to be written
71              to  logfile  instead  of the default.  If the log file cannot be
72              created or is not writable, output is written  to  the  standard
73              error instead.
74
75       -L bytes
76              PDUs  received  by  pmproxy  from  PCP  monitoring  clients  are
77              restricted to a maximum size of 65536 bytes by default to defend
78              against Denial of Service attacks.  The -L option may be used to
79              change the maximum incoming PDU size.
80
81       -M certname
82              By default, pmproxy will try to use  a  certificate  called  PCP
83              Collector  certificate  in its server role. The -M option allows
84              this to be changed.
85
86       -P passfile
87              Specify the path to a file containing the Network Security  Ser‐
88              vices  certificate  database password for (optional) secure con‐
89              nections, and for databases that are password protected.   Refer
90              also  to  the  -C  option.   When  using this option, great care
91              should be exercised to ensure appropriate ownership ("pcp" user,
92              typically)  and  permissions  on  this  file  (0400, so as to be
93              unreadable by any user other than the user running  the  pmproxy
94              process).
95
96       -U username
97              Assume the identity of username before starting to accept incom‐
98              ing packets from PCP monitoring clients.
99
100       -x file
101              Before the pmproxy logfile can be opened, pmproxy may  encounter
102              a  fatal error which prevents it from starting.  By default, the
103              output describing this error is sent  to  /dev/tty  but  it  may
104              redirected to file.
105

STARTING AND STOPPING PMPROXY

107       Normally,  pmproxy  is  started  automatically at boot time and stopped
108       when the system is being brought down.  Under certain circumstances  it
109       is  necessary  to  start or stop pmproxy manually.  To do this one must
110       become superuser and type
111
112       # $PCP_RC_DIR/pmproxy start
113
114       to start pmproxy, or
115
116       # $PCP_RC_DIR/pmproxy stop
117
118       to stop pmproxy.  Starting pmproxy when it is already  running  is  the
119       same as stopping it and then starting it again.
120
121       Normally pmproxy listens for PCP client connections on TCP/IP port num‐
122       ber 44322 (registered at http://www.iana.org/).  Either the environment
123       variable  PMPROXY_PORT  -p  command  line option may be used to specify
124       alternative port number(s) when PMPROXY_PORT or  the  -p  command  line
125       option  may  be used to specify alternative port number(s) when pmproxy
126       is started; in each case, the specification is a  comma-separated  list
127       of  one or more numerical port numbers.  Should both methods be used or
128       multiple -p options appear on the command line, pmproxy will listen  on
129       the  union  of  the  set  of ports specified via all -p options and the
130       PMPROXY_PORT environment variable.  If non-default ports are used  with
131       pmproxy care should be taken to ensure that PMPROXY_PORT is also set in
132       the environment of any client application that will connect to pmproxy,
133       or that the extended host specification syntax is used (see PCPIntro(1)
134       for details).
135

FILES

137       PCP_PMPROXYOPTIONS_PATH
138              command  line   options   for   pmproxy   when   launched   from
139              $PCP_RC_DIR/pmproxy  All  the  command  line option lines should
140              start with a hyphen as the first character.
141       $PCP_SYSCONFIG_DIR/pmproxy
142              additional environment variables that will be set  when  pmproxy
143              executes.   Only  settings  of the form "PMPROXY_VARIABLE=value"
144              will be honoured.
145       ./pmproxy.log
146              (or $PCP_LOG_DIR/pmproxy/pmproxy.log when started automatically)
147              All messages and diagnostics are directed here
148       /etc/pki/nssdb
149              default Network Security  Services  (NSS)  certificate  database
150              directory,  used  for  optional Secure Socket Layer connections.
151              This database can be created and queried using the NSS  certutil
152              tool, amongst others.
153

ENVIRONMENT

155       In addition to the PCP environment variables described in the PCP ENVI‐
156       RONMENT section below, there are  several  environment  variables  that
157       influence  the  interactions  between a PCP monitoring client, pmcd and
158       pmcd(1).
159
160       PMCD_PORT
161              For the PCP monitoring client this (or the default port  number)
162              is  passed  to  pmproxy  and used to connect to pmcd(1).  In the
163              environment of pmproxy PMCD_PORT is not used.
164
165       PMPROXY_HOST
166              For the PCP monitoring client this is the hostname or IP address
167              of the host where pmproxy is running.  In recent versions of PCP
168              (since version 3) this has been superseded by the extended host‐
169              name syntax (see PCPIntro(1) for details).
170
171       PMPROXY_PORT
172              For  the PCP monitoring client this is the port on which pmproxy
173              will accept connections.  The default is 44322.
174
175       PMCD_CONNECT_TIMEOUT, PMCD_RECONNECT_TIMEOUT and PMCD_REQUEST_TIMEOUT
176              (see PCPIntro(1)) For the PCP monitoring client,  setting  these
177              environment variables will modify the timeouts used for interac‐
178              tions between the  client  and  pmproxy  (independent  of  which
179              pmcd(1)  is  being  used).   For  pmproxy these same environment
180              variables control the timeouts between pmproxy and  all  pmcd(1)
181              instances (independent of which monitoring client is involved).
182
183       If  set  to  the  value  1, the PMPROXY_LOCAL environment variable will
184       cause pmproxy to run in a localhost-only mode of  operation,  where  it
185       binds only to the loopback interface.
186
187       The  PMPROXY_MAXPENDING  variable  can  be  set to indicate the maximum
188       length to which the queue of pending client connections may grow.
189

PCP ENVIRONMENT

191       Environment variables with the prefix PCP_ are used to parameterize the
192       file  and  directory names used by PCP.  On each installation, the file
193       /etc/pcp.conf contains the  local  values  for  these  variables.   The
194       PCP_CONF  variable  may be used to specify an alternative configuration
195       file, as described in pcp.conf(5).
196

SEE ALSO

198       PCPIntro(1), pmcd(1), pmdbg(1), pcp.conf(5) and pcp.env(5).
199

DIAGNOSTICS

201       If pmproxy is already running  the  message  "Error:  OpenRequestSocket
202       bind:  Address  already  in  use" will appear.  This may also appear if
203       pmproxy was shutdown with an outstanding request  from  a  client.   In
204       this  case,  a  request socket has been left in the TIME_WAIT state and
205       until the system closes it down (after some timeout period) it will not
206       be possible to run pmproxy.
207
208       In  addition  to  the  standard  PCP  debugging  options, see pmdbg(1),
209       pmproxy currently supports the debugging  option  context  for  tracing
210       client connections and disconnections.
211
212
213
214Performance Co-Pilot                  PCP                           PMPROXY(1)
Impressum