CI/CD with Ansible Tower and GitHub

red-hat-ansible-tower-vector-logoplus_sign2cb670b6ddd8922a1c1b2fee4f6f758c

Overview

Over the last few years CI/CD (Continuous Integration/Continuous Deployment) thanks to new technologies has become a lot easier. It should no longer be a major thorn in the side of developers. Many are moving to cloud platforms which has CI/CD built-in (Azure DevOps for example), others are using Kubernetes which clearly reduces a lot of the complexity around CI/CD. Still at many organizations I see Jenkins or other complex and often homegrown tooling. I certainly recognize this tooling was needed but in 2019 there are better, more streamlined options. Now I get it, our butler Jenkins has served us well, for many years, he has become part of our family. But just like the famous Butler, Alfred from Batman, he has gotten old and likely it is time to look into retirement.

In this article we will discuss and demonstrate how to use Ansible Tower and GitHub for CI/CD.

A video presentation and demonstration is available at following URL: https://youtu.be/lyk-CRVXs8I

Continue reading

Powerful but Simple CI/CD with Azure DevOps and Go

azuredevops-2x

Overview

Microsoft has wasted little time getting value out of their GitHub acquisition. They have now fully integrated GitHub and authentication into an already powerful DevOps platform called “Azure DevOps”. I have until this moment had zero enjoyment, setting up and maintaining CI/CD tooling usually involving some form of our dear butler, Jenkins. Nothing wrong with our old Jenkins but let’s face it, he is just overhead at this point, better to just put him to rest, he has earned it.

Azure DevOps has the following value:

  • It’s in the cloud, consumed as-a-service
  • Completely Integrated with GitHub
  • It is free
  • Authentication using GitHub user
  • Don’t need to use it with Azure
  • Supports basically every language, I am doing CI/CD with Go
  • Simple yaml to configure no Groovy/DML Jenkins horror
  • Yaml pipeline files auto-generated for your language (just needs minor tweaks)
  • Your code is built, unit tests are run, you can do acceptance tests and it is setup in a few minutes

Continue reading

The Coffee is Getting Cold, It’s Time to GO – Getting Started Building Microservices

golangverticlejava

Overview

Java has been around a really, really long time. Certainly it continues to evolve and has evolved. Java has always been a “can do anything” programming language. It has more frameworks and middleware than there are stars in the sky. It is portable anywhere and of course probably 8 out of 10 developers today know Java to some degree. Given all of this though is Java the path forward?

Looking forward I think the clear trend is microservices and beyond. Therefore the question is a lot simpler, is Java the best path forward for microservices?

Continue reading

Container Native Virtualization (Kubevirt): The Future for Virtual Machines is Here!

kubevirt_logo

Overview

Immediately after Solomon Hykes first showed Docker to the public at PyCon in 2013, in his now famous “docker run demo”, IT folk started asking, what does this mean for virtualization? We only spent the previous 10-15 years virtualizing, seemingly everything, so understandably people were slightly apprehensive. Industries had been built and careers established, clearly virtualization would be an important part of the future and not simply replaced, right?

In this article we will aim to understand the value of virtualization in a container-driven world, explore the current virtualization capabilities in Kubernetes and get started with Container Native Virtualization (Kubevirt) using Red Hat’s Kubernetes enterprise distribution, OpenShift.

Continue reading

It’s a PaaS: Vanilla Kubernetes vs OpenShift on OpenStack Lab Setup Guide

Kubernetes-logo is_not_4 OpenShift-LogoType.svg

Overview

Often a lot of people seem to confuse Kubernetes with OpenShift or a platform-as-a-service (PaaS). Kubernetes is of course on it’s own, not. It is an orchestration layer or technology for containers but a lot is missing to really call it a platform. OpenShift is Red Hat enterprise Kubernetes platform. It contains Kubernetes but also a whole lot more which make it a true platform. So which is right for you? It depends a lot on your requirements and what you are trying to achieve. The purpose of this article is to setup an environment for running a workshop that compares the Kubernetes experience with OpenShift in order to gain more insight and understanding in what you may actually need. Many people sit down with slides or at a whiteboard, but I really find that is not adequate and you really need to experience it, first hand.

Continue reading

Getting Started with Machine Learning

ml

source: https://news.sophos.com/en-us/2017/07/24/5-questions-to-ask-about-machine-learning/

Overview

In this article we will dive into machine learning. We will begin by understanding the concept, then look at some of the use cases, requirements and finally explore a real world scenario using a demo application.  Machine learning has the potential to dramatically change our lives, jobs and influence decision making on a scale that has never been seen before. It is one of the most exciting and also scary technological advancements to ever come around. It is the future but is also happening right now which is why there couldn’t be a better time to get started than today.

Continue reading

Building A Niche Cloud: A Pragmatic Approach

Teamwork-ants-building-a-house

source: https://innolectinc.com/how-smart-is-your-team/teamwork-ants-building-a-house/

Overview

Before getting started you might want to read about the birth of the niche cloud in the first part of this two part series.

We have all heard the saying, you cannot teach an old dog new tricks. Yes that is true, but we aren’t thankfully dogs. Learning to do something new of course, requires an open mind-set and a desire for change. Many organizations are getting left out of digital disruption these days because they keep falling back on old outdated ideas, behaviors and habits. Our minds are so full, so occupied and so tired we simply cannot grasp or don’t have the energy for anything new. We spend our time applying what is new to what we know, which is old.

In this article lets reset our minds and look at an approach to build a niche cloud from the ground up. Instead of pealing back the onion we will apply layer after layer until we have the onion itself. Of course I realize there is a lot more and this article is just scratching at the surface, nevertheless it is an approach, a basic rule-set and guideline for getting started.

Continue reading