Cloud-native and micro-services have almost become synonyms today. Discussion on cloud-native apps almost always moves to micro-service based approach. Although server hardware infrastructure is rarely talked about when discussing about cloud-native apps, choice of right server hardware matters for production deployment of cloud-native apps. Total number of services and types of services that can be deployed does depend on the underlying hardware infrastructure. Today we do have compelling alternates to Intel based server hardware, especially server hardware based on IBM PowerPC architecture. This article doesn’t get into the details of Intel and Power based server hardware. Instead this article is a collection of posts to help you get started with running cloud-native applications on PowerPC servers, especially scale-out Power servers from either IBM or OpenPower partners. In the remainder of the article we’ll refer to these servers as OpenPower servers.
Containers and Docker
You can use docker containers either on baremetal or KVM Virtual Machines running on OpenPower servers. Docker is supported only on Little-Endian (LE) variants of the Linux distributions (Ubuntu, RHEL, CentOS, SuSE, Fedora etc).
Docker Engine for Power
Docker engine binary is part of Fedora (23+), Ubuntu (15.04+), SLES (12 SP1+) by default. Experimental packages for RHEL 7 LE is also available. Please refer to the following link for more details:
OpenSource docker builds are available from the following link:
Dockerized Images for Power
There is a separate namespace for PowerPC architecture (ppc64le) in dockerhub. The images in dockerhub needs to be referred as ppc64le/<image>:<tag>. For example: ppc64le/ubuntu, ppc64le/debian, ppc64le/busybox etc
Creating Dockerized Images from scratch
Following articles should help you if you want to create images from scratch for your environment.
Container management and orchestration (Middleware)
There are multiple options available for container orchestration on OpenPower servers.
If you prefer to use Mesos then the following links should help you to get started:
If you prefer to use Kubernetes, then the following link should help you to get started:
Commonly used DevOps tools like Jenkins, chef, puppet, ansible etc supports Linux running on OpenPower servers.