SlideShare a Scribd company logo
What's new in JBoss Operations
Network
Heiko W. Rupp, Alan Santos, Thomas Segismont
Red Hat
Agenda
Overview
New Charts
New Storage Nodes
Finer Bundle Permissions
REST-API
Outlook to JBossON 3.3
Overview
Let us ask some questions first
Who knows JBoss ON ?
Who uses JBoss ON?
What version?
•3.2
•3.1
•other
Did you know?
JBoss ON has an Open Source upstream project called RHQ?
http://jboss.org/rhq
You can reach the developers in
#rhq on
Irc.freenode.net
Architecture 100.000 feet
Architecture 10.000 feet
New charts
New charts
New charts
Storage nodes
Metrics storage scalability
Runtime data in JON
•Traits (ex: Platform CPU architecture)
•Events (ex: Error reported in a log file)
•Call-time (ex: Servlet response time)
•Metrics (ex: Swap usage)
Metric definitions
•Per resource type
•Some enabled by default
Enabling collection
Collection process
•Agent plugin collects data
•Sends measurement report to JON server
•Server stores raw values
Data usage
•Display in UI (tables and graphs)
•Retrieval through REST API / CLI / Remote API
•Calculate baselines
•Trigger alerts
Raw metrics model
•Schedule id ~ Resource id + Metric Definition id
•Data (value collected)
•Time stamp
Aggregates
•Retention period: cannot keep data indefinitely
•Storage efficiency at the cost of precision loss
•Raw data -> 1h data
•1h -> 6h
•6h -> 24h 24 hours aggregates
6 hours aggregates 6 hours aggregates
1 hour 1 hour 1 hour 1 hour
Raw Raw Raw Raw Raw Raw Raw Raw
Metrics storage before 3.2
•Everything in the relational database
•Simple to access from JON server (@Resource)
•No extra deployment
So, what's the problem with metric storage?
Consider a large deployment
•3 metrics enabled per resource type on average
•1000 resources per agent
•1000 managed servers
=> 3 million raw data points every 30 seconds
Scale-up?
•Top-class hardware
•Top-class database
•... and a top-notch DBA!
There must be a better approach
Scale-out with NoSQL
•Hybrid model (SQL + NoSQL)
•Incremental approach (only metrics)
•For a fraction of a cost
Solution criteria
•Management and support
•Solution needs to be black boxed, self-managed
•Performance and scalability
•No single point of failure
•Support single machine install
We created JBoss ON Storage Node
•Based on Cassandra
•Well suited for time series data
•Intensive write loads optimized
•Usual management tools (JMX)
User perspective
•'Just' another JON component
•Install with rhqctl
•Add new nodes on demand
JBoss ON Server
JBoss ON
Storage Node
JBoss ON
Storage Node
JBoss ON
Storage Node
JBoss ON
Storage Node
gossip
cql
Storage node management
•Agent plugin => requires an agent!
•Auto-imported in inventory
•Dedicated console in the admin pages
Simulator
Server Raw Metrics / Minute Heap
Blade Server
iSCSI
2 Storage Nodes
680K 512M per node
Slower due to virtualized
environment
Bare Metal
SSD
2 Storage Nodes
1M 512M per node Higher number of agents
Adding a new storage node demo
Fine grained bundle permissions
Enabling complex provisioning workflows
What is a bundle?
Simply put, a zip file:
•With at least a recipe
•And (optionally) a set of files
010101010
010101010
010101010
Files?
•Standalone application
•Web application alone
•Web application, static resources, and configuration files
•Full application server!
•... etc
Pluggable provisioning
Out of the box:
•ANT bundles (powerful)
•File template (very basic)
Create your own!
Template engine
•Can process any of the bundle files
•@@my.property.to.replace@@
•Built-in variables
•rhq.system.hostname
•rhq.system.cpu.count
•rhq.system.sysprop.line.separator
•... etc
Deployment
•To a group of resources (bundle targets)
•From a base location to a destination
Old security model
•Global MANAGE_BUNDLE permission
•Create / Delete / Deploy any bundle
•Kept in JON 3.2
•Non critical environments
•Beginners
Secure the system with bundle permissions
Groups
BUNDLE GROUPS
|
v
RESOURCE GROUPS ---> ROLES <--- USERS
^
|
permissions
Permission details
•View (implied)
•Create / Delete
•Assign / Unassign
•Deploy
Use cases
•Team leader creates, members deploy
•Team members create and deploy on specific resource group
•Dev team creates, Op team deploys
Flexible enough for your organization
The demo example
Human Resources
Environment
Finance
Environment
HR
Bundles
Finance
Bundles
Developers Operators
ANT Bundle demo
REST-API
REST-API
Fully supported
•For Output AND Input
•Will be used more (by JBossON) in the future
REST-API: External Out-of-Band processing
REST-API: External Out-of-Band processing
Demo
Outlook
● JBoss ON 3.2.CP1
● Coming in JBoss ON 3.3
3.2.CP1
•Bug fix update for 3.2
•Cumulative patch
•Not full release
3.3: Reduced Agent footprint
•Agent uses less heap
•Inventory sync is less costy on the server
•Internal algorithms tuned
3.3 : Better support for EAP 6
•Communication via https
•Bundles and Drift for Domain Mode
•Patching
•Better align JBoss ON groups ↔ EAP groups
3.3 : Integration with Access.redhat.com
•Open cases from within JBoss ON
•Access Knowledge Base
•For JBoss ON
•For Managed EAP
Thanks for your attention
Questions?
There is a BOF @6pm – join us!

More Related Content

What's new in JBoss ON 3.2