OpenShift builds a developer-centric workflow around Docker containers and Kubernetes runtime concepts. An Image Stream lets you easily tag, import, and publish Docker images from the integrated registry. A Build Config allows you to launch Docker builds, build directly from source code, or trigger Jenkins Pipeline jobs whenever an image stream tag is updated. A Deployment Config allows you to redeploy whenever a new image becomes available. Routes make it trivial to expose your Kubernetes services via a public DNS name. As an administrator, you can enable your developers to request new Projects which come with predefined roles, quotas, and security controls to fairly divide access.

Deploying OpenShift Origin

The playbooks in the repository also have the ability to configure CentOS or RHEL instances to prepare for the installation of Origin. Due to the OpenShift playbooks not being available in RPM format outside of an OpenShift Container Platform subscription the openshift-ansible repository must be cloned. At this time, the following cannot be performed within a container due to known issues that have been found while running openshift-ansible in a container. It is advised to use a virtual or bare metal machine.

Step 1 – Vmware and Openshift 1.5

Setup Vmware Workstation VM:


After that, install centos 7.3 Minimal:

Install the following software packages:

yum install -y epel-release
yum install -y docker wget git gcc net-tools
yum install -y python-cryptography pyOpenSSL.x86_64  java-1.8.0-openjdk-headless
yum install -y python-pip python-devel python python-passlib
pip install ansible

Clone the Openshift ansible playbooks from Github:

git clone

Generate your own ssh key to allow to run ansible playbooks locally on your VM.

ssh-keygen -t rsa

Then edit your /etc/hosts (VM) and put your own domain name (this domain name would be the same you must register in AWS Route53)

vi /etc/hosts      <Your Domain>

This previous step is very important and mandatory because when we run ansible playbooks it would register this values inside Openshift cluster.

Copy your ssh key:

ssh-copy-id root@<Your Domain Name>

Inventory file:

vi inventory


openshift_master_identity_providers=[{'name': 'htpasswd_auth', 'login': 'true', 'challenge': 'true', 'kind': 'HTPasswdPasswordIdentityProvider', 'filename': '/etc/origin/master/htpasswd'}]
openshift_public_hostname=<Your domain>
openshift_master_default_subdomain=apps.<Your domain>
<Your Domain> openshift_schedulable=true

<Your Domain> openshift_node_labels="{'region': 'infra', 'zone': 'default'}" openshift_schedulable=true


Start Openshift installation:

ansible-playbook -i inventory ./openshift-ansible/playbooks/byo/config.yml

Create your Openshift user:

yum install -y httpd-tools
htpasswd /etc/origin/master/htpasswd <Your User>

Step 2: Route53

Amazon Route 53 is a highly available and scalable cloud Domain Name Services (DNS) web service. It is designed to give developers and businesses an extremely reliable and cost effective way to route end users to Internet applications by translating names like into the numeric IP addresses like that computers use to connect to each other. Amazon Route 53 is fully compliant with IPv6 as well.

I am not going to explain how to buy, register and create a domain name, please follow AWS Router53 documentation.

Create a record set on Route53:

As you can see in the image my domain point to temporary IP, this temporary IP is my public IP from home.

Create an ALIAS record like the image:

*.apps.<Your Domain> to point to your domain.

This will allow publishing our applications to the internet.

Step 3: At Home

We need to expose Openshift to the world and the easy ways to do it is exposing the VM as a Static NAT/DMZ/Exposed Host

Example from Vodafone router:

Remind you, your local IP address would be your VM IP address. As a recommendation install fail2ban if you want your Openshift lab run 24/7.

Step 4: Test the lab

From Home:

Edit your PC hosts files (Windows, Mac, Linux) to point to your VM IP Like this:

And then access to your Openshift Origin Console:


From the internet:


Step 5: The tricky – Publishing applications

To test your applications at home, your always have to modify the host files.


At Home:

Edit your PC hosts files (Windows, Mac, Linux) to point to your VM IP Like this:    jenkins-easynube.apps.yourdomain

From the internet:

There is not any problem, all your applications would be published.


Translate »