Part 3: Deploying a Serverless Service to Knative

Serverless computing in action Install Knative and Istio, deploy your code, and invoke it from a React application.

Now that you've built and tested your service, it's time to put everything together. In this article, you'll use resources from Kamesh Sampath's excellent Knative tutorial to install Istio and Knative on top of Kubernetes. With that infrastructure in place, it's easy to deploy your service to Knative. After taking a look at your service in the OpenShift console, you'll invoke it from the command line. Finally, we'll look at a Knative proxy that lets the Don Schenck's React front end access your service as well. 

Doug Tidwell
Red Hat Developer Alumnus

Part 2: Building a Serverless Service

Serverless computing in action Take a look at the image manipulation code behind the photo booth, then look at a modern web app that uses it.

In this article, we take an in-depth look at the image manipulation code at the heart of the Coderland photo booth. After explaining the code, we run it and show how it creates the custom images we'll be selling at the Coderland Swag Shop. Finally, we'll look at a modern web application that lets us interact with the service directly. 

Doug Tidwell
Red Hat Developer Alumnus

Part 1: Introduction to Serverless with Knative

Serverless computing in action Read all about the Compile Driver photo booth and why it's such a good fit for serverless.

The Knative serverless environment lets you deploy code to Kubernetes, but no resources are consumed unless your code needs to do something. With Knative, you create a service by packaging your code as a Docker image and handing it to the system. Your code only runs when it needs to, with Knative starting and stopping instances automatically. 

This article introduces you to the Compile Driver, a new attraction at the Coderland theme park. To increase revenue, management has installed a camera next to the ride. It captures images of happy guests as they plunge through the air. Your assignment is to write a service that transforms those images into souvenir photos. The resulting pictures feature the Coderland logo, a message, and a date stamp.

Over the next two articles, you'll examine how the service works and you'll learn how to deploy that service to Knative. 

Doug Tidwell
Red Hat Developer Alumnus

Red Hat Developer Istio Video Series: Number 2 - Istio Pool Ejection

This video demonstrates how Istio Pool Ejection enables you to remove under- or non-performing pods from your kubernetes-based system. [Note: Yes, I know I hammer on the 'return' key much too hard. I'm working on that.]

service mesh istio kubernetes microservice OpenShift Containers Red Hat Developers 1 0 https://img.youtube.com/vi/OEo99GjUv6Q/hqdefault.jpg
39 Seconds
6 Minutes
Istio Pool Ejection allows you to temporarily block under- or non-performing pods from your system.

Red Hat Developer Istio Video Series: Number 1 - Istio Route Rules

This video demonstrates how Istio Route Rules work with kubernetes (and OpenShift) to route traffic between microservices without any code changes.

OpenShift Red Hat Developers 3 1

Red Hat OpenShift Container Platform

Empower development and operations to work quickly and efficiently
Main Content

Red Hat OpenShift is an open, hybrid cloud Kubernetes platform to build, run, and scale container-based applications. OpenShift includes everything you need to manage your development lifecycle, including standardized workflows, support for multiple environments, continuous integration, and release management.

Hide Get Started
Off
Url
Overview
Page Description
Red Hat OpenShift Container Platform
Video

Grant Shipley: Why OpenShift for application development. 

Download
Off

Get immediate hands-on experience with the Red Hat OpenShift Container Platform TestDrive Lab on Amazon Web Services (AWS) or start a 30-day free trial to evaluate Red Hat OpenShift Container Platform in your datacenter. 

Learn more

No Subscription Offering
Try out OpenShift
Url
Hello World
Alternate Getting Started Text

To build your first application on Red Hat OpenShift Container Platform:

  1. Visit learn.openshift.com 
  2. Select from one of the interactive learning scenarios. It is recommended that you start with the Getting Started with OpenShift for Developers scenario.
Hide Get Started
Hide Get Started
Page Description
Get Started with Red Hat OpenShift Container Platform
Url
Docs and APIs
Documents Links Section

There are many resources available for OpenShift Container Platform here on Red Hat Developer Program, and on the Red Hat Customer Portal. On this page, we highlight our pick of those resources.

OpenShift Container Platform 3.10

Release Notes

Release Notes for OpenShift 3.10

Getting Started

Getting Started with OpenShift Container Platform 3.10

Architecture

OpenShift Container Platform 3.10 Architecture Information

Cluster Administration

OpenShift Container Platform 3.10 Cluster Administration

Configuring Clusters

OpenShift Container Platform 3.10 Installation and Configuration

Container Security Guide

OpenShift Container Platform 3.10 Container Security Guide

Day Two Operations Guide

OpenShift Container Platform 3.10 Day Two Operations Guide

Installing Clusters

OpenShift Container Platform 3.10 Installing Clusters

Scaling and Performance Guide

OpenShift Container Platform 3.10 Scaling and Performance Guide

Upgrading Clusters

OpenShift Container Platform 3.10 Upgrading Clusters

Ansible Playbook Bundle Development Guide

Developing with Ansible Playbook Bundle (APB)

Creating Images

OpenShift Container Platform 3.10 Image Creation Guide

Developer Guide

OpenShift Container Platform 3.10 Developer Reference

Using Images

OpenShift Container Platform 3.10 Guide to Using Images

CLI Reference

OpenShift Container Platform 3.10 CLI Reference

Hide Get Started
Off
Page Description
Find documentation for OpenShift
Url
Help
Show Stack Overflow
Yes
Page Description
Get help with Red Hat OpenShift Container Platform
openshift OpenShift Application Development openshift Cloud Try it for free Off
https://i.ytimg.com/vi/stGqKaYlYRA/sddefault.jpg
24 Seconds
5 Minutes
This video demonstrates how Istio Route Rules work with kubernetes (and OpenShift) to route traffic between microservices without any code changes.

CDK 3: Build your first application using the OpenShift Console

A guide to creating a Node.js project on Red Hat OpenShift running inside the Red Hat CDK/minishift VM using the OpenShift web console.

This article will guide you through creating and deploying your first project on Red Hat OpenShift Container Platform, which is running inside the Red Hat CDK/minishift virtual machine. The project is a Node.js "Hello, World" application that displays the current hit count. A MongoDB database is used to store the hit count. Two pods will be created to run the application, one for the Node.js application and another for the database.

Fat JAR smackdown | DevNation Live

You've heard of Fat/Uber JARs and are probably building them today. But every time you build one, a tree is chopped down in the forest to power the compute, disk and networking resources needed to deploy it to your production systems. In this session, we'll explore the benefits and costs of Fat JAR packaging and demonstrate various options for slimming your apps and saving those trees using popular frameworks like Wildfly Swarm, Dropwizard, Spring Boot and Eclipse Vert.x. Github Repo Link: https://github.com/jamesfalkner/wfswarm-packaging-demo

webinar wildfly swarm OpenShift cloud native spring boot vert.x dropwizard JBoss DevNation Live James Falkner Burr Sutter 108 7

Red Hat OpenShift Application Runtimes

Cloud native application runtimes optimized for OpenShift
Main Content

In today’s digital world, software strategy is central to business strategy. To stay competitive, organizations need customized software applications to meet their unique needs—from customer engagements to new product and services development. Therefore, the need to speed up application development, testing, delivery, and deployment is becoming a necessary business competency. Red Hat® OpenShift Application Runtimes helps organizations use the cloud delivery model and simplify continuous delivery of applications and services on Red Hat® OpenShift platform, the cloud-native way. Built on proven open source technologies, Red Hat® OpenShift Application Runtimes also provides development teams multiple modernization options to enable a smooth transition to the cloud for existing applications.

Simply put, RHOAR offer developers flexibility and choices to build the right application with the right runtime, framework, language, and architectural style. 

Hide Get Started
Off
Url
Overview
Page Description
Containerized application runtimes for building new cloud native applications and cloud enable existing application optimized for OpenShift
Additional Content

Guided Choice

Red Hat® OpenShift Application Runtimes provides developer and IT choice, but guided choice, in choosing the best language, framework, runtime, and architectural style.

 

Microservices with Spring Boot

Spring Boot lets you create opinionated Spring-based stand-alone applications. The Spring Boot runtime also integrates with the OpenShift platform, allowing your services to externalize their configuration, implement health checks, provide resiliency and failover, and much more.

 

Reactive development with Vert.x

Eclipse Vert.x is a toolkit for building distributed and reactive applications on top of the Java virtual machine (JVM). Vert.x helps you build responsive applications and services capable of handling a large number of concurrent users and events. Vert.x uses an asynchronous development model, allowing reactive applications that ensure loose coupling, isolation, and location transparency. Easily scale up and down by adding or removing nodes—your applications will stay responsive

 

 

Rightsize bootable java development with Thorntail

Thorntail bundles everything you need to develop and run Java EE applications by packaging server runtime libraries with your application code.  It speeds up the transition from monoliths to microservices because it’s MicroProfile compatible, and takes advantage of the existing industry standard Java EE technologies.

 

High Performance JavaScript Microservices

Node.js provides an I/O model based on events and non-blocking operations that enables you to write high performance applications that are both lightweight and efficient. You can Node.js applications and services on OpenShift while providing all the advantages and conveniences of the OpenShift platform such as rolling updates, continuous delivery pipelines, service discovery, and canary deployments. OpenShift also makes it easier for your applications to implement common microservice patterns such as externalized configuration, health checks, circuit breakers, and automatic failover.

More runtimes for Java EE, Java Web, and JavaScript development

Red Hat® OpenShift Application Runtimes offers the flexibility developers need to pick the right runtimes for their development choices.

Red Hat JBoss® Enterprise Application Platform (EAP): JBoss EAP is a leading open source Java EE-based application runtime used for building, deploying, and executing highly transactional Java applications and services

Red Hat JBoss® Web Server (JWS): JWS is an embedded Tomcat container for use with Spring Boot applications.

 

 

Service Catalog Integration

Combined with the OpenShift service catalog, enterprise IT organizations can take full advantage of multi-cloud investments by integrating cloud-based services, for example those provided by the OpenShift AWS service integration, and capabilities developed in-house on Red Hat OpenShift Application Runtimes and provide portability and consistency of stateful and stateless, microservices-based applications across IT footprints.

Video
Product Feature Image and Text
Body

Red Hat® OpenShift Application Runtimes reduces the complexity of developing cloud-native applications by integrating OpenShift capabilities with the programming model of multiple runtimes, including service discovery, external configurations, and circuit breaker or fault tolerance. Red Hat® OpenShift Application Runtimes also includes a number of missions and boosters, such as creating HTTP application programming interfaces (APIs), interoperating with a database, or implementing the health check pattern to speed up application development.

Title
Simplified Development
Body

Red Hat® OpenShift Application Runtimes supports multiple runtimes, languages, frameworks, and architectures. Its certified interoperability with middleware services offers the choice and flexibility to pick the right services for the right job. In addition, applications developed with containerized Red Hat® OpenShift Application Runtimes can run on any cloud infrastructure where Red Hat® OpenShift Container Platform can run. It also supporsts hybrid cloud configurations, offering freedom from vendor lock-in.

Title
Strategic flexibility
Body

Due to its integration with Red Hat® OpenShift Container Platform, Red Hat® OpenShift Application Runtimes provides developers with a self-service platform for provisioning, building, and deploying applications and their components. It integrates with continuous integration and continuous delivery (CI/CD) tools like Git, Maven, and Jenkins. It also provides intuitive tooling to securely streamline Kubernetes workflows and enable application load-balancing and auto-scaling capabilities with policy-based control and automation.

Title
DevOps-ready

Red Hat® OpenShift Application Runtimes - Overview

RHOAR Marketecture  5

 

Download
Hide Get Started
No Subscription Offering

Red Hat OpenShift Runtimes is based on a number of upstream projects. Visit the community pages to learn more:

 

 

Download Red Hat OpenShift Application Runtimes
Url
Hello World
Alternate Getting Started Text

Red Hat OpenShift Application Runtimes (RHOAR) offers a guided getting started online experience where example applications for each runtime can be quickly deployed to your OpenShift Online account, including OpenShift Online Starter accounts (sign up for free), or deployed to your existing OpenShift infrastucture! The examples are also forked into your GitHub account so they can be perused, changed, and redeployed. To get started, just Launch!

Launch

Developer Interactive Learning Scenarios

Our Interactive Learning Scenarios provide you with a pre-configured OpenShift instance, accessible from your browser without any downloads or configuration. Use it to experiment, learn about specific technologies within RHOAR and see how its helps solve real-world problems.

Eclipse Vert.x Thorntail Node.js Spring

Learn more from leading technology authors

Free e-books that cover trending technologies related to Red Hat OpenShift Application Runtimes. Sign in or join now (it’s free) to download the full books!

Yanaga microservice db ebook cover
Migrating to Microservice Databases: From Relational Monolith to Distributed Data

Code is easy, State is hard. Learning how to deal with your monolithic relational databases in a microservices structure is key to keeping pace in a quickly changing workplace.  There are many approaches and in this book, author Edson Yanaga, takes you through nine different strategies for integrating data from your monolithic application to a microservice architecture.

 

Modern JEE ebook cover
Modern Java EE Design Patterns

With the ascent of DevOps, microservices, containers, and cloud-based development platforms, the gap between state-of-the-art solutions and the technology that enterprises typically support has greatly increased. But as explained in this O’Reilly report, some enterprises are now looking to bridge that gap by building microservice-based architectures on top of Java EE.

 

Reactive ebook cover
Building Reactive Microservices in Java

With the ascent of DevOps, microservices, containers, and cloud-based development platforms, the gap between state-of-the-art solutions and the technology that enterprises typically support has greatly increased. But as explained in this O’Reilly report, some enterprises are now looking to bridge that gap by building microservice-based architectures on top of Java EE.

Hide Get Started
Hide Get Started
Tabs
Blue Sections
Body

Visit developers.redhat.com and click on REGISTER to create a developer account and verify your email address. Free to join, the Red Hat Developer Program Community delivers the resources and ecosystem of experts to help professional programmers to be more productive and get ahead of the curve as they build great applications.

Once registered, you'll have access to Red Hat Developer downloads including OpenShift Container Development Kit and Red Hat OpenShift Application Runtimes.

Title
Register as a Red Hat Developer
Minutes to Complete
5minutes
Body

Red Hat Container Development Kit is a personal container development environment using new tooling based on Minishift to streamline installation and development. The easiest way to install Red Hat Container Development Kit is to use the Red Hat Development Suite installer, a single download for installing some of the best Red Hat development tools. 

  1. Navigate to Container Development Kit Hello World page
  2. Follow the instructions to download the installer and install Red Hat Container Development Kit.
  3. TODO
Title
Download Red Hat Container Development Kit
Minutes to Complete
15minutes
Body

TODO

Title
Choose your Runtime, Mission, and run your first project
Page Description
Launch Application Runtimes on OpenShift
Url
Docs and APIs
Documents Links Section

The full suite of Red Hat OpenShift Application Runtimes documentation is also available on the Red Hat Customer Portal.

Red Hat OpenShift Application Runtimes

Red Hat OpenShift Application Runtimes Release Notes
Getting Started with Red Hat OpenShift Application Runtimes
Install and Configure the Fabric8 Launcher Tool
Eclipse Vert.x Runtime Guide
Spring Boot Runtime Guide
Thorntail Runtime Guide
Node.js Runtime Guide
 
Hide Get Started
Off
More Resources
Red Hat OpenShift Application Runtimes - Middleware Blog

A collection of useful blog posts regarding Red Hat OpenShift Application Runtimes.

Page Description
Find documentation, videos, articles, and other resources available for Red Hat OpenShift Application Runtimes.
Url
Help
Hide Get Started
Off
Show Stack Overflow
Yes
Page Description
Red Hat OpenShift Application Runtimes (RHOAR) provides a highly productive and  prescriptive developer experience for creating new cloud-native and cloud-enabled applications using microservices and containerization
Url
Community
Hide Get Started
Off
Display Projects
No
Page Description
Learn more about the open source communities powering Red Hat OpenShift Application Runtimes
rhoar OpenShift Application Runtimes Application Development rhoar Accelerated Development And Management Join the waitlist Off
https://i.ytimg.com/vi/5dqgGj_uuIo/default.jpg
11 Seconds
32 Minutes
/slideshow/embed_code/key/1SNN7EIMEMoIQR A DevNation Live session.