Getting Started with
OpenShift
David Blado
PaaS Evangelist Red Hat OpenShift
1
Agenda
What's a PaaS?
Introducing OpenShift
Demo: OpenShift Express
Demo: OpenShift Flex
Next Steps
What is a PaaS?
A Platform-as-a-Service runs on top of Infrastructureas-a-Service
Automation for deployment, management, and scaling
the cloud
Enables developers to focus on code
Different levels of control, automation and ease-of-use
Why use a PaaS?
Speed - deploy to cloud quickly
Automation - less scripts to write and maintain
Management versioning, rollbacks & upgrades
Monitoring - performance, logs and uptime
Auto-scaling on-demand resources
Introducing OpenShift
A free auto-scaling PaaS from Red Hat
Supports multiple frameworks, languages, middleware
and clouds
Fast on-ramp to the cloud...upload code and go!
OpenShift Express
Free-as-in-Beer app hosting
Fastest on-ramp to the cloud
Easy-to-use command-line tools
Java, PHP, Perl, Python & Ruby
MySQL & SQLite
Deploy & update via Git
Shared-hosting model
Linux Control Groups (cgroups)
SELinux-based security
OpenShift Flex
30 hrs of free EC2 time to get started
Browser-based UI
Java EE (EE6, jruby, jython, jperl (just kidding
although it does exist)), and PHP
JBoss, Tomcat, Apache
MySQL, MongoDB, Memcached, Membase
Cloud server provisioning
Application deployment, versioning & rollback
Performance monitoring
Log management
Auto-scaling
Express Demo
Install client tools
Create a subdomain
Create an application
Add application files
Commit changes
Deploy to the cloud
Step 1: Sign Up
openshift.com/try-it
Step 2: Install the Client Tools
> Fedora / RHEL:
> Download openshift.repo
> The rest (OSX, Ubuntu, Cygwin):
> gem install rhc
Requires 'ruby' and 'gem'
http://rubyforge.org/projects/rubygems
> Move openshift.repo to yum.repos.d
$ sudo mv ~Downloads/openshift.repo \
/etc/yum.repos.d/
> Install the client tools
$ sudo yum install rhc
10
Step 3: Create a Domain Name
> Use the rhc-create-domain command
$ rhc-create-domain -n mydomain -l openshiftlogin
> OR use the Express console
11
Step 4: Create an Application
> Name your app and define its type
$ rhc-create-app -a appname -t apptype -l openshiftlogin
> Add your app to the local Git repository
$ git add -A
> Commit your changes
$ git commit -a -m comment
12
Step 5: Deploy to the Cloud
> Push the local Git repo to Express
$ git push
> Congratulations, your app is in the cloud!
13
OpenShift Flex Demo
14
Setup Cloud Account
Provision cloud servers
Build stack
Upload application code
Configure components
Deploy application
Versioning and Rollbacks
Performance monitoring
Log management
Auto-scaling
Step 1: Login
> Log into Flex
15
Step 2: Setup your Cloud Account
> Try it for free!
> OR input your credentials
16
Step 3: Create a Cluster
> Click Add Cluster
> Define your cluster
> Check cluster creation status in Events view
17
Step 4: Cluster and Server Views
> Cluster view
> Server view
18
Step 5: Deploy an Application
> Click Add Application in the Applications view
> Name and version your app
19
Step 5: Deploy an Application
> Click on your app
> Select components
20
Step 5: Deploy an Application
> Upload application code
21
Step 5: Deploy an Application
> Configure components
22
Step 5: Deploy an Application
> Review changes and deploy
23
Step 5: Deploy an Application
> Congratulations, your app is in the cloud!
24
Step 6: Performance Monitoring
> Cluster to transaction-level monitoring
> Point-in-time and compare
25
Step 7: Log Management
> Component and application log archiving
> Search logs regardless of current state or size of cluster
26
Step 8: Auto-Scaling
> Click on Auto-Scaling tab
> Define scaling strategy
27
Next Steps
Sign up It's free!
Example Git Repos You Can Deploy NOW!
28
http://www.openshift.com - click Try it!
https://www.github.com/openshift
Help?
IRC: freenode #openshift
Forums: http://www.redhat.com/openshift/forums
Email: openshift at redhat dot com