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

NAME

6       PCPCompat,  pcp-collectl, pmmgr, pmwebd - backward-compatibility in the
7       Performance Co-Pilot (PCP)
8

INTRODUCTION

10       The Performance Co-Pilot (PCP) is a toolkit designed for monitoring and
11       managing  system-level performance.  These services are distributed and
12       scalable to accommodate the most complex system configurations and per‐
13       formance problems.
14
15       In  order to achieve these goals effectively, protocol and on-disk com‐
16       patibility is provided between different versions of PCP.  It is feasi‐
17       ble (and indeed encouraged) to use current PCP tools to interrogate any
18       remote, down-rev or up-rev pmcd(1) and also to  replay  any  historical
19       PCP  archive  (the  PCP testsuite includes PCP archives created over 20
20       years ago!).
21
22       From time to time the PCP developers deprecate and  remove  PCP  utili‐
23       ties,  replacing them with new versions of utilities providing compara‐
24       ble features.  This page describes replacement utilities for historical
25       PCP tools.
26

PYTHON2

28       PCP provides python(1) interfaces for the PMAPI(3) (Performance Metrics
29       API),  the  PMDA(3)  API  (Performance  Metrics  Domain  Agents),   the
30       mmv_stats_register(3)  API  (Memory-Mapped  Values) and PCP archive log
31       creation LOGIMPORT(3) API.
32
33       With python version 2 reaching end-of-life in 2020 we  have  deprecated
34       the  python  version  2  interfaces in PCP (shipped, but no longer sup‐
35       ported).  In the next major release of PCP (v7) version 2 support  will
36       be  retired  (completely removed).  All PCP APIs and python-based tools
37       support python version 3 and have for  several  years  -  upgrading  is
38       strongly recommended.
39

QT4

41       PCP  provides  optional  graphical  user interfaces built on the cross-
42       platform Qt library, particularly pmchart(1) and pmtime(1).
43
44       With Qt v4 reaching end-of-life in 2015 we have removed support for all
45       versions before Qt v5.  In addition, some features are missing in early
46       versions of Qt v5 that are now mandatory when building and using PCP Qt
47       tools.   As  a result the minimum required version of Qt for PCP v6 and
48       beyond is now Qt 5.6.
49

NSS

51       Versions of PCP before v6 used a combination of both Mozilla NSS  (Net‐
52       work Security Services) and OpenSSL for the encryption component of the
53       secure sockets functionality.  Starting with PCP v6 this has been  sim‐
54       plified  into exclusive use of OpenSSL for all use of encryption across
55       PCP.  This change affects configuration of  optional  functionality  in
56       pmcd(1) and PMAPI(3) client tools using secure sockets.
57
58       The  net  effect of this change is that encryption is configured in the
59       same ways, using the same certificates, across the HTTPS  functionality
60       in  pmproxy(1), as well as the encrypted PCP protocol functionality be‐
61       tween pmcd, pmproxy and PMAPI client tools.   Additionally,  the  Redis
62       service  used by pmseries(1) and pmproxy also exclusively uses OpenSSL,
63       and in a manner similar to PCP, which makes  administering  these  ser‐
64       vices significantly simpler.
65

SAR2PCP, IOSTAT2PCP

67       The  sar2pcp(1) and iostat2pcp(1) utilities are deprecated, and will be
68       retired in a future version of PCP (v7).  This is being replaced by na‐
69       tive  support  for generating PCP archives within the tools of the sys‐
70       stat package (which provides sar itself, as well as  the  sadf  utility
71       which produces PCP archives via the -l option).
72

PMLOGCONF-SETUP

74       Earlier  versions of PCP (prior to v5.1.1) provided a shell script that
75       was used internally by pmlogconf(1), located in the PCP_BINADM_DIR  di‐
76       rectory,  named  pmlogconf-setup.   This  script has been retired.  The
77       equivalent functionality remains available in  the  unlikely  event  it
78       should be needed via the -s or --setup option to pmlogconf(1).
79
80       The version 1 pmlogconf-setup configuration file format (from IRIX) was
81       also retired in this release, after more than  10  years  of  automatic
82       transition to version 2 format by pmlogconf.
83

PMMGR

85       The  standalone  PCP  daemon  manager  pmmgr  has been retired from PCP
86       v5.2.0 onward.  It was phased out in favour of  the  simpler  pmfind(1)
87       service  for setting up pmie(1) and pmlogger(1) ``farms'' of discovered
88       PCP collector systems with pmfind_check(1).  The new mechanisms,  espe‐
89       cially  when integrated with systemd, require no additional daemons and
90       are better integrated with the pmie  and  pmlogger  service  management
91       used elsewhere in PCP.
92

PCP-COLLECTL

94       The  pcp-collectl  utility  has been superceded by pmrep(1) from PCP v5
95       onward.
96
97       The equivalent of pcp-collectl subsystem reporting is achieved as  fol‐
98       lows:
99
100       pmrep :collectl-sc
101              Processor subsystem view.
102
103       pmrep :collectl-sm
104              Memory subsystem view.
105
106       pmrep :collectl-sd
107              Aggregate disks view.
108
109       pmrep :collectl-sD
110              Per-disk-device view.
111
112       pmrep :collectl-dm-sD
113              Device mapper view.
114
115       pmrep :collectl-sn
116              Network subsystem view.
117

PCP-WEBAPPS

119       The  standalone  web applications packaged with older PCP versions have
120       been  superceded  by  grafana-server(1)  with  the  grafana-pcp  plugin
121       https://github.com/performancecopilot/grafana-pcp.
122
123       This  plugin  provides  an implementation of the Vector application, as
124       well as data sources for pmdabpftrace(1) (bpftrace(8) scripts) and  pm‐
125       series(1) (fast, scalable Redis-based time series analysis).
126

PMWEBD

128       The pmwebd daemon has been superceded by pmproxy(1) from PCP v5 onward.
129
130       By  default,  pmproxy will now listen on both its original port (44322)
131       and the PCP web API port (44323) when the time series support is built.
132
133       pmproxy provides a compatible implementation of  the  live  PMWEBAPI(3)
134       interfaces  used  traditionally  by the Vector web application (see the
135       ``PCP-WEBAPPS'' section).  It also provides extensions to the  original
136       pmwebd  REST  APIs  (such as derived metrics, namespace lookups and in‐
137       stance domain profiles), support for  the  HTTPS  protocol,  and  fast,
138       scalable time series querying using the pmseries(1) REST API and redis-
139       server(1).
140
141       The partial Graphite API emulation provided by pmwebd has not been  re-
142       implemented  -  applications  wishing to use similar services could use
143       the scalable time series REST APIs described on PMWEBAPI(3).
144

SEE ALSO

146       pcp(1),  pmcd(1),  iostat2pcp(1),  sar2pcp(1),   pmrep(1),   pmfind(1),
147       pmfind_check(1),   pmlogconf(1),   pmproxy(1),   pmseries(1),  pmdabpf‐
148       trace(1), python(1), redis-server(1), grafana-server(1), mmv_stats_reg‐
149       ister(3), LOGIMPORT(3), PMAPI(3), PMDA(3) and PMWEBAPI(3).
150
151
152
153Performance Co-Pilot                  PCP                         PCPCOMPAT(1)
Impressum