Manpages

NAME

pcp-kube-pods - list Kubernetes pods to scan for running PCP services

SYNOPSIS

$PCP_BINADM_DIR/discover/pcp-kube-pods

DESCRIPTION

pcp-kube-pods uses kubectl(1) to provide a list of IP addresses for PODs running in a local Kubenetes cluster, that may be running PCP services like pmcd(1) and pmproxy(1).

It is used by the pmfind(1) command and the pmDiscoverServices(3) API as a ’’shell’’ command.

The script invokes the kubectl get pod command line (see kubectl-get(1)) to discover IP addresses for pods. The .status.podIP output field is extracted from the Kubernetes pod object(s). Additional options can be specified via configuration file, such as -l service=database to restrict the results using Kubernetes pod labels. The default configuration file is $PCP_SYSCONF_DIR/discover/pcp-kube-pods.conf.

If no local kubectl command is found, nothing is reported and an exit code indicating success is returned.

DIAGNOSTICS

All diagnostics produced are provided by the kubectl command.

The kubectl exit status is propogated unchanged.

FILES

$PCP_BINADM_DIR/discover

default path to address discovery commands like pcp-kube-pods

$PCP_SYSCONF_DIR/discover/pcp-kube-pods.conf

configuration file containing command line options passed to kubectl-get

$PCP_SYSCONF_DIR/discover/pcp-kube-pods.disabled

existence of this file causes the script to report nothing

PCP ENVIRONMENT

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

SEE ALSO

kubectl-get(1), kubectl(1), pmcd(1), pmfind(1), pmDiscoverServices(3) and pcp.env(5).