25
Reproducible development to live applications With Java and Red Hat CDK Andrew Lee Rubinger Middleware Developer Experience Lalatendu Mohanty Red Hat CDK Team 2nd May 2017

Reproducible development to live applications with Red Hat CDK and Red Hat OpenShift Application Runtime

Embed Size (px)

Citation preview

Page 1: Reproducible development to live applications with Red Hat CDK and Red Hat OpenShift Application Runtime

Reproducible development to live applicationsWith Java and Red Hat CDK

Andrew Lee RubingerMiddleware Developer Experience

Lalatendu MohantyRed Hat CDK Team

2nd May 2017

Page 2: Reproducible development to live applications with Red Hat CDK and Red Hat OpenShift Application Runtime

“It Works On My Machine”

Page 3: Reproducible development to live applications with Red Hat CDK and Red Hat OpenShift Application Runtime

Environment Differences Have Got to GoIt ain’t 2007 anymore

● Containers have brought the promise of easily deployable standard runtimes

● But we’re application developers; we don’t *want* to deal with more layers!

Page 4: Reproducible development to live applications with Red Hat CDK and Red Hat OpenShift Application Runtime

The ChallengeMake the container abstractions transparent

● Focus on your business logic● Use a known build and deployment environment● Start with continuous delivery and evolve from there

Page 5: Reproducible development to live applications with Red Hat CDK and Red Hat OpenShift Application Runtime

Getting StartedContinuous Delivery in the cloud, from the start

● Pick a use case you’re looking to fulfill● Select your runtime (from RHOAR - Vert.x, WildFly Swarm, Spring

Boot)● Launch to GitHub and OpenShift Online

Page 6: Reproducible development to live applications with Red Hat CDK and Red Hat OpenShift Application Runtime

Red Hat Container Development Kit (CDK)

Page 7: Reproducible development to live applications with Red Hat CDK and Red Hat OpenShift Application Runtime

Red Hat CDKThe value proposition

● Development environment similar to production environment● Develop/build Microservices, containers● Same user experience across different operating systems

○ Red Hat Enterprise Linux○ Microsoft Windows○ mac OS

Page 8: Reproducible development to live applications with Red Hat CDK and Red Hat OpenShift Application Runtime

Red Hat CDKThe objective

Enable application developers to develop container based applications locally using OpenShift.● OpenShift as the container platform● RHEL for running containers

Page 9: Reproducible development to live applications with Red Hat CDK and Red Hat OpenShift Application Runtime

For the uninitiatedWhat is CDK?

CDK provides a local OpenShift Container Platform (OCP) instance on top of RHEL 7

Page 10: Reproducible development to live applications with Red Hat CDK and Red Hat OpenShift Application Runtime

CDK VersionsLittle bit of past and present

● CDK 2.4 (Generally available (GA))● CDK 3 Beta

Page 11: Reproducible development to live applications with Red Hat CDK and Red Hat OpenShift Application Runtime

CDK Version 2.x

Components

● A RHEL 7 Vagrant Box for supported hypervisor● Vagrant plugins● Vagrant files

Provides

● Openshift container platform instance● Single node Kubernetes setup

Page 12: Reproducible development to live applications with Red Hat CDK and Red Hat OpenShift Application Runtime

CDK Version 3

CDK 3 contains:● Customized RHEL 7 ISO● Minishift binary● OC command line binary

Provides

● Openshift container platform instance

Page 13: Reproducible development to live applications with Red Hat CDK and Red Hat OpenShift Application Runtime

What’s New?In CDK version 3

● Better user experience● Easier installation steps

○ Just one binary for CDK● Support for all native hypervisors

○ KVM, Hyper-V, Xhyve and Virtualbox● Awesomenes!

Note: CDK 3 Beta is available for to use now.

Page 14: Reproducible development to live applications with Red Hat CDK and Red Hat OpenShift Application Runtime

Red Hat OpenShift Application Runtime Demo

Page 15: Reproducible development to live applications with Red Hat CDK and Red Hat OpenShift Application Runtime

launch.openshift.io

Page 16: Reproducible development to live applications with Red Hat CDK and Red Hat OpenShift Application Runtime

Installing launch.openshift.io into MinishiftLaunch new applications, built and deployed by OpenShift, in minutes

● http://appdev.openshift.io/docs/minishift-installation.html

Page 17: Reproducible development to live applications with Red Hat CDK and Red Hat OpenShift Application Runtime

MinishiftUpstream project for CDK

● Replaces All-in-one Origin vagrant and Atomic Developer Bundle● Users have choice between CentOS 7 and Boot2Docker ISO● Documentation :

https://docs.openshift.org/latest/minishift/index.html

*We released the version 1.0.0 today!*

Page 18: Reproducible development to live applications with Red Hat CDK and Red Hat OpenShift Application Runtime

Minishift Quick start

● Install a Minishift supported hypervisor on your operating system● $ minishift start

Or● $ minishift start --vm-driver virtualbox

Note: For Xhyve and KVM you need to install an additional driver

Page 19: Reproducible development to live applications with Red Hat CDK and Red Hat OpenShift Application Runtime

MinishiftFeatures

● User can choose OpenShift Origin version● Addons (i.e. $ minishift addons --help)

○ Anyuid○ admin-user

● oc-env● openshift

Page 20: Reproducible development to live applications with Red Hat CDK and Red Hat OpenShift Application Runtime

Minishift command line

addons Manages Minishift add-ons config Modifies Minishift configuration properties. console Opens or displays the OpenShift Web Console URL. docker-env Sets Docker environment variables. hostfolder Manages host folders for use by the OpenShift cluster. oc-env Sets path of 'oc' binary. openshift Interact with an Openshift Cluster. ssh Log in to or run a command on a Minishift VM with SSH.

Page 21: Reproducible development to live applications with Red Hat CDK and Red Hat OpenShift Application Runtime

Minishift communityUpstream project for CDK

● In Github: Minishift● IRC: #minishift (Freenode)

Page 22: Reproducible development to live applications with Red Hat CDK and Red Hat OpenShift Application Runtime

Under the hoodOf Minishift project

● Forked from Minikube project● Uses “oc cluster up” to provision OpenShift● Uses libmachine to provision the Virtual machine

Page 23: Reproducible development to live applications with Red Hat CDK and Red Hat OpenShift Application Runtime

How do I get access to Red Hat CDK?It is part of no-Cost RHEL developer subscription● Register in https://developers.redhat.com● Download it for free.

Page 25: Reproducible development to live applications with Red Hat CDK and Red Hat OpenShift Application Runtime

THANK YOUplus.google.com/+RedHat

linkedin.com/company/red-hat

youtube.com/user/RedHatVideos

facebook.com/redhatinc

twitter.com/RedHatNews

THANK YOUplus.google.com/+RedHat

linkedin.com/company/red-hat

youtube.com/user/RedHatVideos

facebook.com/redhatinc

twitter.com/RedHatNews