diff --git a/containers/Dockerfile-ppc64le b/containers/Dockerfile-ppc64le new file mode 100644 index 00000000..43746fd2 --- /dev/null +++ b/containers/Dockerfile-ppc64le @@ -0,0 +1,24 @@ +# Dockerfile for kraken + +FROM ppc64le/centos:8 + +MAINTAINER Red Hat OpenShift Performance and Scale + +ENV KUBECONFIG /root/.kube/config + +RUN curl -L -o kubernetes-client-linux-ppc64le.tar.gz https://dl.k8s.io/v1.19.0/kubernetes-client-linux-ppc64le.tar.gz \ +&& tar xf kubernetes-client-linux-ppc64le.tar.gz && mv kubernetes/client/bin/kubectl /usr/bin/ && rm -rf kubernetes-client-linux-ppc64le.tar.gz + +RUN curl -L -o openshift-client-linux.tar.gz https://mirror.openshift.com/pub/openshift-v4/ppc64le/clients/ocp/stable/openshift-client-linux.tar.gz \ +&& tar xf openshift-client-linux.tar.gz -C /usr/bin && rm -rf openshift-client-linux.tar.gz + +# Install dependencies +RUN yum install -y git python36 python3-pip gcc libffi-devel python36-devel openssl-devel gcc-c++ make && \ +git clone https://github.com/cloud-bulldozer/kraken /root/kraken && \ +mkdir -p /root/.kube && cd /root/kraken && \ +pip3 install cryptography==3.3.2 && \ +pip3 install -r requirements.txt setuptools==40.3.0 urllib3==1.25.4 + +WORKDIR /root/kraken + +ENTRYPOINT python3 run_kraken.py --config=config/config.yaml diff --git a/containers/build_own_image-README.md b/containers/build_own_image-README.md index 6d27d07f..6e3cf0c7 100644 --- a/containers/build_own_image-README.md +++ b/containers/build_own_image-README.md @@ -3,4 +3,11 @@ 1. Git clone the Kraken repository using `git clone https://github.com/openshift-scale/kraken.git`. 2. Modify the python code and yaml files to address your needs. 3. Execute `podman build -t :latest .` in the containers directory within kraken to build an image from a Dockerfile. +4. Execute `podman run --detach --name :latest` to start a container based on your new image. + +# Building the Kraken image on IBM Power (ppc64le) + +1. Git clone the Kraken repository using `git clone https://github.com/cloud-bulldozer/kraken.git` on an IBM Power Systems server. +2. Modify the python code and yaml files to address your needs. +3. Execute `podman build -t :latest -f Dockerfile-ppc64le` in the containers directory within kraken to build an image from the Dockerfile for Power. 4. Execute `podman run --detach --name :latest` to start a container based on your new image. \ No newline at end of file diff --git a/docs/installation.md b/docs/installation.md index a948fbec..d43dc7bf 100644 --- a/docs/installation.md +++ b/docs/installation.md @@ -8,6 +8,8 @@ Following ways are supported to run Kraken: **NOTE**: It is recommended to run Kraken external to the cluster ( Standalone or Containerized ) hitting the Kubernetes/OpenShift API as running it internal to the cluster might be disruptive to itself and also might not report back the results if the chaos leads to cluster's API server instability. +**NOTE**: To run Kraken on Power (ppc64le) architecture, build and run a containerized version by following the instructions given [here](https://github.com/openshift-scale/kraken/tree/master/containers/build_own_image-README.md). + ### Git #### Clone the repository