Skip to content

Punch Console

The PConsole is a punch downloadable package. It comes in two flavors: macOS and Linux distributions. It provides:

  • kubectl
  • sample CRD files
  • jar and python packages to develop your own java or python nodes.
  • tools to develop log parsers

In contrast to the punch standalone, it does not provide any of the third-party COTS. It can only act as a client tool to submit punch applications for execution.

Important

Punchlines and plans are submitted to Kubernetes using the kubectl command. As such the PConsole is not stricly required. It simply makes your life significantly simpler. We strongly advise you to use it.

In the rest of the punch documentation we always assume you operate from a PConsole.

Requirements

The requirements to install the PConsole itself are similar to that of the punch standalone:

The following python3 packages are also required:

  • jinja2
  • pyyaml
  • hjson

Installation

Simply unzip the PConsole package. For example:

unzip punch-console-7.0.0-linux.zip
Then run the installation script:
cd punch-console-7.0.0-linux
./install.sh

This will unpack binaries and generate a single configuration files punchplatform.properties.

Before using the PConsole, set your environment using the activation script :

source activate.sh

Enable Kubernetes Remote Access

The PConsole must be able to contact the target remote Kubernetes cluster.

Import the kubernetes config from your cluster as follows:

scp <kube_user>@<kube_master>:~/.kube/config $HOME/.kube/config
export KUBECONFIG=$HOME/.kube/config

Check you can successfully interact with your cluster using the kubectl command. For example :

kubectl get nodes
If you use a Kast Kubernetes cluster it should return something like:
NAME           STATUS   ROLES    AGE   VERSION
kastmaster     Ready    master   44h   v1.19.7
kastworker-1   Ready    <none>   44h   v1.19.7
kastworker-2   Ready    <none>   44h   v1.19.7
kastworker-3   Ready    <none>   44h   v1.19.7