BP2200: The Sonic Management Environment - PowerPoint PPT Presentation

1 / 34
About This Presentation
Title:

BP2200: The Sonic Management Environment

Description:

Introduction to the Sonic Management Environment. Configuration & Deployment ... Sonic Management Console. Familiar paradigm (Windows Explorer / MMC) ... – PowerPoint PPT presentation

Number of Views:70
Avg rating:3.0/5.0
Slides: 35
Provided by: andrewbram
Category:

less

Transcript and Presenter's Notes

Title: BP2200: The Sonic Management Environment


1
BP2200The Sonic Management Environment
  • Andrew Bramley (Architect) /
  • David Grigglestone (Architect)

2
Agenda
  • Introduction to the Sonic Management Environment
  • Configuration Deployment
  • Monitoring Control
  • Management APIs
  • Futures

3
IntroductionGoals (1)
  • Common management for
  • All Sonic products
  • Sonic-based applications (ESB services)
  • Centralized configuration monitoring
  • Practical management of large deployments
  • 100s of processes, 1,000s of resources
  • Standards conformance (JMX)
  • Sophisticated instrumentation of resources

4
IntroductionGoals (2)
  • Dramatic improvements in SonicMQ manageability
    vs. SonicMQ v4
  • Configuration
  • Deployment
  • Instrumentation more, more, more
  • Tools
  • Reliability

5
IntroductionWhats in there
  • JMX based management agent and APIs
  • Management Services
  • Directory Service centralized configuration
  • Agent Manager centralized monitoring
  • Activation Daemon process launcher
  • Reliable, SonicMQ based communications
  • New console to configure, monitor and control
  • Sonic JNDI SPI

6
IntroductionTerminolgy (1)
Component
7
IntroductionTerminolgy (2)
  • Components
  • Coarse grained manageable resources that provide
    either management or application level services
  • Containers
  • Host multiple components in an execution
    environment (JVM)
  • Domains
  • Deployment of containers with a common point of
    configuration, runtime management and
    communications
  • Collections
  • Logical grouping of either components or
    containers

8
IntroductionSonic Management Console
  • Familiar paradigm (Windows Explorer / MMC)
  • Left hand tree for navigation
  • Right hand table for contents
  • Toolbars / Popup menus etc.
  • Context sensitive menus on all tree / table items
  • Common operations duplicated on the toolbar
  • Two views
  • Configure and Manage
  • Use Goto operation to move between views
  • Stored user preferences

9
IntroductionIterative Management
Configure
Monitor
Control
10
IntroductionConfigure / Monitor / Control
Component
Container
Directory Service
Agent Manager
Directory Storage
11
Configuration DeploymentCreating
Configurations
  • Create configurations
  • New (select a type)
  • Reuse existing
  • Enter configuration data via custom dialogs
  • Required fields highlighted
  • Many fields have default values
  • Complex configurations have sub-nodes (e.g.
    SonicMQ)
  • Component configuration is independent of
    deployment

12
Configuration DeploymentConfiguration Reuse
(1)
  • Traditional Copy / Paste to create a look-alike
    configuration
  • Templates to create linked configurations
  • Create uniquely identified copies
  • Rename to suit

13
Configuration DeploymentConfiguration Reuse
(2)
14
Configuration DeploymentConfiguration Reuse
(3)
Component sees
Template
configuration only
configuration only
Modified Template
configuration template change
configuration only
15
Configuration DeploymentOrganizing Your Domain
  • User defined view tree
  • User defined folders
  • Cut and Paste to desired folder
  • Customize to suit your organization (e.g.
    geographic, business function, etc.)
  • User defined runtime Collections
  • Use multiple collections to suit needs
  • Observe aggregate collection state
  • Start / stop all items in a collection

16
Configuration DeploymentDeploying an Instance
  • Add component instance to container configuration
  • One component configuration can be deployed to
    multiple containers
  • Container loads instance and pulls configuration
  • Container caches configuration for
  • Performance
  • Fault-tolerance

17
Configuration DeploymentSummary
Disk Cache
Cache
Component
Directory Storage
Container2
Directory Service
Container1
18
Monitoring ControlRuntime State (1)
  • Containers components have state
  • Online, offline, unknown
  • State controlled via operations
  • Start, stop, shutdown
  • Agent Manager provides aggregate state of domain
    and collections

19
Monitoring ControlRuntime State (2)
Component
Container
Agent Manager
20
Monitoring ControlRuntime Properties
  • Containers components have runtime properties
  • Generic vs. specific
  • Read-only vs. read-write

21
Monitoring ControlNotifications
  • Containers components generate notifications
  • Generic state notifications
  • Component specific notifications for significant
    events
  • Notifications encapsulate event specific details
  • Management applications subscribe to
    notifications
  • Console provides notification watch windows

22
Monitoring ControlMetrics
  • Containers certain components support metrics
  • Dynamic enable/disable
  • Instance metrics for dynamic items
  • Clients enable metrics request metric values
  • Console provides watch plot windows

23
Monitoring ControlAlerts
  • Certain metrics support thresholds
  • Alert notifications are generated when thresholds
    are broken
  • High vs. low thresholds
  • Notifications encapsulate metric values when
    threshold was broken
  • Support for multiple thresholds
  • Otherwise, alerts are just like regular
    notifications

24
Monitoring ControlControl Examples (1)
  • Components are controlled via operations
  • E.g. start, stop, reload
  • Console presents most control aspects using a
    simple table
  • SonicMQ Example
  • Console displays list of queues
  • Allows operations to be performed on those queues

25
Monitoring ControlControl Examples (2)
  • Console presents complex control aspects using
    more sophisticated presentation
  • SonicMQ Example
  • Console displays list of users / durable
    subscriptions using multiple tables
  • Allows browsing of subscriptions using additional
    windows

26
Management APIs
  • ConfigAPI
  • Create and modify configurations
  • RuntimeAPI
  • Monitor and control deployed containers and
    components
  • JNDI
  • Create and modify JMS and other administered
    objects

27
Management APIsConfigAPI
  • JavaBean-like programming model
  • Use factory to create configuration beans
  • Java and JavaScript samples demonstrate common
    configuration tasks
  • See \samples\Management\configAPI

28
Management APIsConfigAPI
  • MQMgmtBeanFactory domain new MQMgmtBeanFactory()
  • domain.connect("Domain1", "tcp//localhost2506",
    Administrator",
  • "Administrator")
  • // Load the Broker Bean for /Brokers/Broker1
  • IBrokerBean broker domain.getBrokerBean("/Broker
    s/Broker1")
  • IQueuesBean.IQueuesSetType queues
    broker.getQueuesBean().getQueues()
  • IQueuesBean.IQueueAttributes queue
    queues.getQueue("SampleQ1")
  • // Now change some of the queue values
  • queue.setQueueMaxSize(12345)
  • queue.setReadExclusive(true)
  • // save bean
  • domain.saveBean(broker)

29
Management APIsRuntimeAPI
  • Programming models
  • Reflective / dynamic raw JMX APIs
  • Typed / static proxies built on top of JMX APIs
  • Use factory to create proxies
  • Samples demonstrate common monitoring / control
    tasks
  • Java and JavaScript samples use proxies
  • Generic CLI sample uses dynamic approach
  • See \samples\Management\runtimeAPI

30
Management APIsRuntimeAPI
  • Reflective approach
  • ArrayList connections
  • (ArrayList)connector.invoke(brokerName,
  • getConnections,
  • new Object
    null ,
  • new String
    String.class.getName() )
  • Attribute traceAttribute new Attribute(TraceMas
    k new Integer(5))
  • connector.setAttribute(brokerName,
    traceAttribute)
  • Typed approach
  • IBrokerProxy brokerProxy
  • MQProxyFactory.createBrokerProxy(connector,
    brokerName)
  • ..
  • ArrayList connections brokerProxy.getConnections
    (null)
  • brokerProxy.setTraceMask(5)

31
Management APIsJNDI
  • Sonic SPI is a basic Naming implementation
  • Leverages Directory Service storage
  • Provides for read-only and read-write roles
  • Integration with Sonic JMS Administered Objects
    tool
  • Sample CLI demonstrates SPI usage whilst
    providing useful functionality

32
Futures
  • Better monitoring and control of Sonic ESB
  • Fault-tolerance
  • System monitoring
  • Fathom integration
  • SNMP

33
Summary
  • Common environment breeds rapid development and
    familiarity
  • Advanced configuration and deployment features
    reduce volume and increase reliability and
    performance
  • Depth of monitoring and control makes management
    large scale deployments practical
  • Open, standards-based APIs allows rapid
    development of custom management applications

34
!
Allquestionsanswered
Write a Comment
User Comments (0)
About PowerShow.com