Before You Start¶
The Getting Started guides that follows leverages the standalone punchplatform. Make sure you get the latest one from our download area.
In minutes you will be able to run, operate, test and develop various use cases. The standalone punchplatform is also very useful in operation, coupled with your production platform, to run prototype or test setups either in sandbox mode or directly on the production traffic.
Danger
What you cannot do is to go production with the standalone, that is not its purpose. For production, use the official deployment packages. They take care of properly installing the punchplatform components. The PunchPlatform team will provide production support only on versions installed using the official deployment packages.
Requirements¶
At least 8 GB of memory. RAM requirement will depends on the number and the complexity of storm/spark topologies you will be running (e.g. input and output channels, tenants, ...).
The standalone runs on the following systems:
- MacOS Sierra 10.12 or later,
- Ubuntu 16.04 LTS or later (64bits),
- Debian 7 or later (64bits),
- CentOS/RHEL 7 or later (64bits)
In all cases check if you have the required dependencies:
- bash
- jq 1.5 (or above)
- curl
- python 2.7 with virtualenv and pip modules 'Jinja2' and 'PyYAML' installed. See the instructions hereafter.
Note
if you want to use Punch pySpark, you also need to install python version 3.6.8
.
Check our pyenv instructions to make sure you have a clean and proper installation.
Mac OS¶
Note
we assume that HomeBrew is already install on your machine
1 2 3 | brew install jq curl sudo easy_install pip pip install virtualenv PyYAML Jinja2 |
Ubuntu/Debian¶
1 2 | sudo apt install curl jq python-minimal openjdk-8-jdk unzip python-pip python-virtualenv pip install PyYAML Jinja2 |
CentOS/RedHat¶
1 2 3 4 5 | sudo yum install zip unzip wget sudo curl "https://bootstrap.pypa.io/get-pip.py" -o "get-pip.py" && sudo python get-pip.py sudo pip install virtualenv PyYAML Jinja2 sudo wget https://github.com/stedolan/jq/releases/download/jq-1.5/jq-linux64 -O /usr/bin/jq && sudo chmod +x /usr/bin/jq sudo yum install java-1.8.0-openjdk-devel |
Important
A troubleshooting procedure for the standalone is available at Troubleshooting your standalone
Congratulation, now we can get started using the PunchPlatform !
Installation¶
This chapter assumes you have already downloaded the standalone punchplatform archive from our download area.
Simply unzip it, you should have a punchplatform-standalone-x.y.z
directory on your filesystem.
Important
Install the Standalone as a non-root user. I.e. use it under your standard user account.
1 2 | cd punchplatform-standalone-x.y.z
./install.sh -s
|
This unarchives all our friends (Kafka, Storm, Elasticsearch, Spark etc...),
and patches their configuration files (cleanly) so that you have a simple local
PunchPlatform setup. All Punch binary and configuration files will be installed
under this directory, nowhere else on your machine. When a prompt ask you to
patch your environment, if you answer "yes", it will only add a few
lines at the end of your ~/.bashrc
(on linux) or ~/.bash_profile
(on MacOS)
to update your path variable. You then only need to start a new terminal.
If you prefer not impacting your environment, just say no. To setup your environment you must then execute the following command every time you start a new terminal:
1 | source ./activate.sh
|
Assuming you are happy with a local setup, you can start all of the standalone platform components (Zookeeper, Storm, Elasticsearch, Kibana, Spark).
1 | punchplatform-standalone.sh --start |
Check if your standalone version is running properly:
1 | punchplatform-standalone.sh --status |