openshift with eclipse tooling - eclipsecon 2012
DESCRIPTION
My talk at eclipsecon - focuses more on our eclipse toolingTRANSCRIPT
1
Eclipse Tooling for OpenShift
Steve Citron-PoustyPaaS Dust Spreader, Red HatMarch 20, 2012
2
Agenda
• What is OpenShift?
• Showing off the Awesomeness in Eclpise
• Questions
3
My Goal for today
1) Teach ya’ some cloud speak
2) Show you a little bit of OpenShift
3) Mostly to show off the power of what our engineers did to leverage and eclipse
4
Assumptions
1) You use Eclipse with Java
2) You use a datastore with your apps
3) You know SVN and you might know GIT
4) You are unfamiliar with PaaS
5
What is OpenShift?
Red Hat’s free platform as a service for applications in the cloud.
6
Kind of like Amazon, right? Nope.
7
What’s Infrastructure as a Service?
• Network, storage and compute offered as an on-demand service
• Basically, servers in the cloud
• You’re still on the hook to configure & manage the cloud & stack
• Example: Amazon EC2
“How do I use this?”
8
What’s Platform as a Service?
• It’s an application platform
• Basically, an app run-time environment in the cloud
• PaaS configures & manages the cloud & stack for you
• Example: OpenShift
“The cloud is now useful!”
9
What’s Software as a Service?
• It’s an on-demand application
• Nothing to install or configure
• Example: Salesforce, Gmail
“This is all my customers and users care about!”
10
So, why should I use a PaaS?
• Realize the benefits of the cloud quickly
• Let the PaaS configure, manage & scale the stack
• Make deployments to the cloud easy
• Focus on your app & users, not the stack
11
What’s supported?
12
Looks great, but how much does it cost?
• OpenShift is free-as-in-beer
• Five 512 MB RAM / 1 GB Storage instances
• Need more resources, just ask!
13
…and OpenShift rocks for Java
JBoss Tools and Eclipse
• Jenkins for Continuous Integration
Maven for Build Management
JBoss AS 7.1 delivers EE6 with CDI
14
How does it work?
• Install Jboss studio Version: 5.0.0.Beta2
• Sign up on the web site and create a domain
• Use the tools • Install the client tools
• Create a domain name
• Create an application
• Congrats! You are now in the cloud!
rhc-create-app –a my_app –t my_lang
15
But, First, Two Things….
Git
• Is used to push changes to apps on OpenShift
• Is a distributed revision control and source code management system
Github
• Is where you’ll find dozens of OpenShift quickstarts
• Pull and push these quickstart repos
• github.com/openshift
16
So, Let’s Get Started!
1. Sign up
2. Install Jboss Studio or Plugin
3. Create a domain name
4. Use the tools to get going
5. Create an application
17
DEMO – Finally!
18
So here are the steps1) Create an account and a domain on openshift.com using the web console
• Remember your domain has to be unique to the rhcloud.com namespace.
• It will be used in all your apps urls
2) Then go ahead and create an app using the eclipse plugin
• Make sure to add in your Database and the PHPAdmin
• Make sure to store the usernames and passwords for the DB and PHPAdmin
• The plugin will then prompt if you want to check out the source and create a project – SAY YES
3) You can now modify the source and then commit and push to remote repository
4) Any modifications after this you will need the command line tools
19
1. Sign Up!• openshift.com
• All it takes is an email address (register with your Accenture email address)
20
Let’s install the Eclipse Tool
1) Grab the lastest beta version – there is a lot of active work on the toolshttp://www.jboss.org/tools/download/dev
2) It has most of the functionality you will need
21
Steps to creating an application in eclipse
1
2
22
Next steps
3
23
Final Steps
4
24
When you will definitely need the Command line tools1) Port Fowarding (for getting MySQL Workbench on
your machine to talk to your OpenShift instance)
2) If you don’t want to use the Command line tools you can also SSH into the server for tasks
1) Non-standard user ID
2) Please don’t mess with Jboss server directly – use git to push code changes
25
Quick Tip: Client Tool Commands
rhc-* : prefix for all commands
rhc-create-domain : Create a namespace
rhc-create-app : Create an application
rhc-ctl-app : Control an app and embed components
rhc-snapshot : Backup and restore an application
26
4. Create an Application
$ rhc app create –a <your app name> -t jbossas-7
Password:
Wait! Let’s see that in eclipse!
27
FYI
Grabbing a project from GitHub and pushing it to your OpenShift Account
http://github.com/openshift
We are going to do the kitchen sink example.
28
Next Steps
• Ask Questions
• Go home and sign up to play
• Use code eclipsecon please
• Give us feedback
• Vote
• File bugs
• End of April you can download the code