The objective of this repository is to track the progress and pre-requisites to bring new applications and projects to PPC64 and PPC64le architecture. The bigger focus is on little-endian but big-endian could also be added.
If you want to start developing and run a PPC64le Virtual Machine, I've uploaded both Debian and Ubuntu versions that can be downloaded from the releases section.
There is also a guide if you want to build the VMs from scratch.
- Docker Community Edition
- K3s - Lightweight Kubernetes
- Prometheus
- Grafana
- Traefik Image
- Drone-CI CLI
- Kubernetes Dashboard
- Minio
- Grafana Loki
- Aquasecurity Trivy
Until there is an official package,I've built .deb
and .rpm
packages available in releases. All pre-requisites are already bundled in (containerd, runc, dockerd and docker-cli).
Unpack the .tar.gz
file and install the packages with the distro tool (apt or yum).
- Add Debian packages for ppc64el to docker-ce-packaging repo -
- Add ppc64le to containerd-packaging repo - Issue#164
K3s is a highly available, certified Kubernetes distribution designed for production workloads in unattended, resource-constrained, remote locations or inside IoT appliances.
K3s is packaged as a single <40MB binary that reduces the dependencies and steps needed to install, run and auto-update a production Kubernetes cluster.
Since K3s still does not provide ppc64le
binaries or images, I've build the required pre-requisites and binaries to have a streamlined install on ppc64le architecture. Check the guide here to install on your host.
The guide also provides the process to build images and k3s.
Dependencies:
Required ppc64le
images:
-
rancher/coredns-coredns:1.6.3
-
rancher/klipper-helm:v0.3.0
- PR#13 -
rancher/klipper-lb:v0.1.2
- -
rancher/library-traefik:1.7.19
- -
rancher/local-path-provisioner:v0.0.14
- -
rancher/library-busybox:1.31.1
- -
rancher/pause:3.1
-
Replace images:
scripts/airgap/image-list.txt
vendor/github.com/rancher/helm-controller/pkg/helm/controller.go
42: DefaultJobImage = "rancher/klipper-helm:v0.3.0"
pkg/servicelb/controller.go
37: image = "rancher/klipper-lb:v0.1.2"
manifests/local-storage.yaml
78: value: rancher/library-busybox:1.31.1
manifests/traefik.yaml
19: image: "rancher/library-traefik"
manifests/local-storage.yaml
62: image: rancher/local-path-provisioner:v0.0.14
manifests/metrics-server/metrics-server-deployment.yaml
38: image: rancher/metrics-server:v0.3.6
pkg/cli/cmds/agent.go
92: Value: "docker.io/rancher/pause:3.1",
Temporary Images:
All these images are multi-arch for amd64
, arm
, arm64
and ppc64le
.
carlosedp/pause:3.1
carlosedp/local-path-provisioner:v0.0.14
carlosedp/klipper-helm:v0.3.0
carlosedp/klipper-lb:v0.1.2
carlosedp/traefik:v1.7
carlosedp/metrics-server:v0.3.6
coredns/coredns:1.6.9
Add ppc64le
images to CI:
-
prometheus
- PR#7067 -
alertmanager
- PR#2219 -
node-exporter
- Already supportsppc64le
-
snmp-exporter
- PR#494 -
blackbox-exporter
- PR#587 -
pushgateway
- PR#339
-
grafana/grafana - PR#23177- Cancelled
- traefik v1.7 - PR#
Command Line Tools for Drone CI. https://github.com/drone/drone-cli
- Add binaries for ppc64le - PR#170
The new Kubernetes dashboard is composed of the Dashboard front-end and the metrics-scraper. The Dashboard is already built for ppc64le but the scraper needs build support.
- Add build support for ppc64le - PR#29
Minio is a high-performance object storage.
The multiarch images for Minio and Minio client can be pulled from my DockerHub repo:
-
Add multiarch images - Issue#9546
Loki is like Prometheus, but for logs.
- Add support for building binaries for ppc64le arch PR#2813
Container vulnerability scanner
- Add support to trivy https://github.com/aquasecurity/trivy PR#724