/rosaworkshop

Hosts the files for a Red Hat OpenShift Service on AWS workshop.

Primary LanguageShell

What is Red Hat OpenShift Service on AWS (ROSA)?

ROSA is a fully managed Red Hat OpenShift cluster running natively on Amazon Web Services (AWS), which allows customers to quickly and easily build, deploy, and manage Kubernetes applications on the industry’s most comprehensive Kubernetes platform in the AWS public cloud.

The latest version of ROSA makes use of AWS Secure Token Service (STS) for the ROSA cluster components. AWS STS is a global web service that allows the creation of temporary credentials for IAM users or federated users. ROSA uses this to assign IAM roles short-term, limited-privilege, security credentials. These credentials are associated with IAM roles that are specific to each component that makes AWS API calls. This better aligns with principals of least privilege and is much better aligned to secure practices in cloud service resource management. The ROSA CLI tool manages the STS credentials that are assigned for unique tasks and takes action upon AWS resources as part of OpenShift functionality. One limitation of using STS is that roles must be created for each ROSA cluster.

A listing of the account-wide and per-cluster roles is provided in the documentation.

What information is on this site?

These pages are split into three sections. One contains the steps to getting started on ROSA ("Getting started with ROSA"). Another is about deploying an application to ROSA to get better familiar with the internals of OpenShift ("Deploy the application"). While the last is a summary of a few key OpenShift concepts that will be used in the workshop.

What will we do in this workshop?

In this workshop, you’ll go through a set of tasks that will help you understand the concepts of deploying and using container based applications on top of ROSA.

Some of the things you’ll be going through:

  • Deploy a ROSA cluster using STS
  • Deploy a node.js based app via S2I and Kubernetes Deployment objects
  • Set up an continuous delivery pipeline to automatically push changes to the source code
  • Explore logging
  • Experience self healing of applications
  • Explore configuration management through configmaps, secrets and environment variables
  • Use persistent storage to share data across pod restarts
  • Explore networking within Kubernetes and applications
  • Familiarization with OpenShift and Kubernetes functionality
  • Automatically scale pods based on load via the Horizontal Pod Autoscaler

If you'd like a preview of the cluster deployment process, you can watch a short demo:

Deploying our first app on a ROSA cluster

Creating your first ROSA Cluster

If you'd like an easy to follow guide for creating your first ROSA cluster you've come to the right place.

  1. Please review the prerequisites which contains important information about the AWS account requirements.
  2. Visit the "Getting Started with ROSA" tutorial for Setting up your account.

Resources

Note: Anytime "ROSA" is used in this lab it stands for Red Hat OpenShift Service on AWS. The ROSA acronym will be used mostly.