• No results found

JBoss Operations Network 1 Users Guide

N/A
N/A
Protected

Academic year: 2021

Share "JBoss Operations Network 1 Users Guide"

Copied!
182
0
0

Loading.... (view fulltext now)

Full text

(1)

Landmann

Users Guide

Users Guide for JBoss Operations Network 1.x

Edition 2

(2)

Users Guide for JBoss Operations Network 1.x

Edition 2

Landmann

(3)

This document is licensed by Red Hat under the Creative Commons Attribution-ShareAlike 3.0 Unported License. If you distribute this document, or a modified version of it, you must provide attribution to Red Hat, Inc. and provide a link to the original. If the document is modified, all Red Hat trademarks must be removed.

Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law.

Red Hat, Red Hat Enterprise Linux, the Shadowman logo, JBoss, MetaMatrix, Fedora, the Infinity Logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries. Linux ® is the registered trademark of Linus Torvalds in the United States and other countries. Java ® is a registered trademark of Oracle and/or its affiliates.

XFS ® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.

MySQL ® is a registered trademark of MySQL AB in the United States, the European Union and other countries.

Node.js ® is an official trademark of Joyent. Red Hat Software Collections is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.

The OpenStack ® Word Mark and OpenStack Logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation's permission. We are not affiliated with, endorsed or

sponsored by the OpenStack Foundation, or the OpenStack community. All other trademarks are the property of their respective owners.

Abstract

Installation, Inventory, Monitoring, Alerts, Managed Products, Response Time, Control, Administration, Developing Plugins.

(4)

. . . . . . . . . . . .

Table of Contents

Preface 1. Document Conventions 1.1. Typographic Conventions 1.2. Pull-quote Conventions 1.3. Notes and Warnings Chapter 1. Welcome

1.1. Overview of JBoss Operations Network 1.1.1. Auto Discovery 1.1.2. Monitor 1.1.3. Alert 1.1.4. Control 1.2. Architecture 1.3. Supported Platforms

1.3.1. Supported Platforms - JBoss ON the Road Chapter 2. Installation

2.1. Install Guide

2.1.1. Planning and Prerequisites 2.1.1.1. Sizing 2.1.1.2. X Libraries 2.1.1.3. Hardware 2.1.1.4. JRE 2.1.1.5. Clock Synchronization 2.1.2. Database Preparation 2.1.2.1. Oracle Preparation

2.1.2.1.1. Advanced Oracle Configuration 2.1.2.1.1.1. Oracle Asynchronous I/O 2.1.2.2. PostgreSQL Preparation

2.1.3. Installing JBoss Operations Network 2.1.3.1. Download JBoss ON

2.1.3.2. Available Distributions

2.1.3.2.1. Full Installer vs. Agent-Only Installer 2.1.3.2.2. Platforms

2.1.3.3. Windows GUI Installer 2.1.3.4. Text Installers

2.1.3.5. Components

2.1.3.6. JON Server Installation 2.1.3.7. JON Agent Installation 2.1.3.8. JON Shell Installation 2.1.3.9. JON Server Startup 2.1.3.10. JON Agent Startup 2.1.3.11. JON Agent Shutdown 2.1.4. Laptop Installations

2.2. QuickStart Guide

2.2.1. Check for supported platforms 2.2.2. Download JBoss ON

2.2.3. Unpack the JBoss ON package

2.2.4. Install the JBoss ON Server and Agent 2.2.5. Start up the JBoss ON Server

2.2.6. Start up the JBoss ON Agent

10 10 10 11 12 13 13 13 13 13 13 13 17 17 19 19 19 19 20 20 21 21 21 22 22 23 24 25 25 25 25 25 25 26 27 27 28 29 29 29 30 30 31 31 31 31 31 32 32

(5)

. . . .

. . . . 2.2.8. Import a new platform

2.2.9. View platform metrics 2.2.10. Complete

2.3. Agent-Only Installation

2.3.1. Agent-Only Install on Windows 2.3.2. Agent-Only Install on UNIX 2.3.3. General Notes

2.4. High Availability Installation 2.5. No-JRE Installer

2.5.1. Overview

2.5.2. Using the No-JRE JBoss ON Installer

2.5.3. PostgreSQL Server Installation and Configuration 2.6. Installing on a Laptop

2.6.1. What to do if not on a network 2.7. Uninstalling JBoss Operations Network Chapter 3. JBoss ON Inventory

3.1. Auto-Discovery 3.1.1. Helpful Hints 3.2. Platforms 3.3. Servers 3.4. Services 3.5. Groups 3.6. Application

3.7. Inventory XML Descriptor Syntax Chapter 4 . Monitoring

4.1. Monitoring Basics 4.1.1. Metrics 4.1.2. Baselines 4.1.3. Problem Metrics 4.1.4. Metric Display Range 4.2. Monitoring Visibility

4.2.1. Navigating to Current Health 4.2.2. Resources

4.2.2.1. Child Resources Health Portlets 4.2.2.2. Host Resources Health Portlet

4.2.2.3. Group Member Resources Health Portlet 4.2.2.4. Problem Metrics Portlet

4.2.3. Indicators

4.2.3.1. Availability and Timeline 4.2.3.2. Indicator Charts and Views 4.3. Managing Metric Data

4.3.1. Metric Categories 4.3.1.1. Availability 4.3.1.2. Usage 4.3.1.3. Performance 4.3.1.4. Utilization 4.3.2. Viewing Metrics 4.3.3. Modifying Metrics

4.3.4. Working With Autogroup Metrics 4.3.5. To Remove Metrics

4.4. Working with Baselines

4.4.1. To manually establish a metric baseline 4.5. Availability

4.6. Charting Metric Data

34 34 35 35 35 35 36 36 38 38 38 39 39 40 40 4 2 42 43 43 44 44 45 45 46 52 52 52 52 52 53 53 53 53 53 54 54 54 55 55 55 56 56 56 57 57 57 57 57 58 58 58 59 59 60

(6)

. . . .

. . . . 4.6.1. Chart Legend

Chapter 5. Alerts

5.1. Using Alerts to Manage Resources 5.2. Defining Alerts

5.3. Defining Recovery Alerts 5.4. SNMP Traps as Alert Actions

5.5. Tutorial on generating SNMP traps from JBoss ON alerts 5.5.1. Environment

5.5.2. Installing an SNMP client 5.5.3. Listening for traps

5.5.4. Configuring JBoss ON to generate SNMP traps 5.5.5. Common SNMP settings on the alert

5.5.6. SNMP v1 - Generic trap

5.5.7. SNMP v1 - Enterprise Specific trap 5.5.8. SNMP v2c - Generic trap

Chapter 6. Managed Products 6.1. Operating Systems

6.1.1. Linux Management Support 6.1.1.1. Linux Supported Versions 6.1.1.2. Linux Monitoring Specification 6.1.1.3. Linux Administration Specification 6.1.1.4. Linux Metrics

6.1.1.5. Linux Process Metrics 6.1.1.6. Linux User Metrics 6.1.1.7. Network Interface

6.1.1.8. Network IP Service Metrics 6.1.1.9. Filesystem Directory Metrics 6.1.1.10. FileSystem Mount 6.1.1.11. File Service 6.1.1.11.1. Overview 6.1.1.11.2. Configuration Properties 6.1.1.11.3. Metrics 6.1.1.11.4. Control Actions 6.1.2. HP-UX Management Support

6.1.2.1. HP-UX Supported Versions 6.1.2.2. HP-UX Monitoring Specification 6.1.2.3. HP-UX Administration Specification 6.1.2.4. HP/UX Metrics

6.1.2.5. HP/UX Process Metrics 6.1.2.6. HP UX User Metrics 6.1.2.7. Network Interface

6.1.2.8. Network IP Service Metrics 6.1.2.9. Filesystem Directory Metrics 6.1.2.10. FileSystem Mount 6.1.2.11. File Service 6.1.2.11.1. Overview 6.1.2.11.2. Configuration Properties 6.1.2.11.3. Metrics 6.1.2.11.4. Control Actions

6.1.3. Sun Solaris Management Support 6.1.3.1. Solaris Supported Versions 6.1.3.2. Solaris Monitoring Specification 6.1.3.3. Solaris Administration Specification

61 62 62 62 65 65 66 66 66 67 67 67 68 68 69 71 71 71 71 71 71 71 72 72 72 73 73 73 74 74 74 74 74 74 74 74 75 75 75 76 76 76 77 77 77 77 77 78 78 78 78 78 78

(7)

6.1.3.5. Solaris Process Metrics 6.1.3.6. Solaris User Metrics 6.1.3.7. Network Interface

6.1.3.8. Network IP Service Metrics 6.1.3.9. Filesystem Directory Metrics 6.1.3.10. FileSystem Mount 6.1.3.11. File Service 6.1.3.11.1. Overview 6.1.3.11.2. Configuration Properties 6.1.3.11.3. Metrics 6.1.3.11.4. Control Actions 6.1.4. IBM AIX Management Support

6.1.4.1. IBM AIX Supported Versions 6.1.4.2. IBM AIX Monitoring Specification 6.1.4.3. IBM AIX Administration Specification 6.1.4.4. IMB AIX Metrics

6.1.4.5. IBM AIX Process Metrics 6.1.4.6. IBM AIX User Metrics 6.1.4.7. Network Interface

6.1.4.8. Network IP Service Metrics 6.1.4.9. Filesystem Directory Metrics 6.1.4.10. FileSystem Mount 6.1.4.11. File Service 6.1.4.11.1. Overview 6.1.4.11.2. Configuration Properties 6.1.4.11.3. Metrics 6.1.4.11.4. Control Actions

6.1.5. Microsoft Windows Management Support 6.1.5.1. Windows Supported Versions

6.1.5.2. Windows Monitoring Specification 6.1.5.3. Windows Administration Specification 6.1.5.4. Windows Metrics

6.1.5.5. Windows Process Metrics 6.1.5.6. Network Interface

6.1.5.7. Network IP Service Metrics 6.1.5.8. Filesystem Directory Metrics 6.1.5.9. FileSystem Mount 6.1.5.10. File Service 6.1.5.10.1. Overview 6.1.5.10.2. Configuration Properties 6.1.5.10.3. Metrics 6.1.5.10.4. Control Actions 6.1.5.11. Windows Service Metrics 6.1.5.12. Defining a Windows Service.

6.1.5.12.1. Windows Service Control 6.2. JEMS Products

6.2.1. JBoss AS Management Support 6.2.1.1. JBoss AS Supported Versions 6.2.1.2. JBoss Monitoring Specification 6.2.1.3. JBoss Administration Specification 6.2.1.4. Autodetection

6.2.1.5. General Server Metrics 6.2.1.6. JMS Destinations 6.2.1.6.1. JMS Destination Metrics 6.2.1.6.2. Administering JMS Destinations 79 79 80 80 80 81 81 81 81 81 82 82 82 82 82 82 83 83 83 84 84 84 85 85 85 85 85 85 85 86 86 86 86 87 87 87 88 88 88 88 88 89 89 89 89 89 89 89 89 90 90 90 90 90 91

(8)

6.2.1.6.2.1. Restrictions 6.2.1.6.2.2. Features

6.2.1.6.2.3. Updates to configuration files 6.2.1.6.3. Messages in Queue

6.2.1.6.4. Messages in Topic 6.2.1.6.5. Availability

6.2.1.6.6. Receivers Count 6.2.1.6.7. Subscriptions Count 6.2.1.7. Entity EJB Metrics

6.2.1.8. Stateless Session EJB Metrics] 6.2.1.9. Stateful Session EJB Metrics 6.2.1.10. Message Driven EJB Metrics 6.2.1.11. JCA Connection Pool Metrics 6.2.1.12. JCA DataSources

6.2.1.12.1. JCA DataSource Metrics

6.2.1.12.2. Administering JCA DataSources 6.2.1.12.3. Restrictions

6.2.1.12.4. Features

6.2.1.12.5. Updates to configuration files 6.2.1.13. Hibernate Support

6.2.1.13.1. JBoss AS Supported Versions 6.2.1.13.2. Hibernate Monitoring Specification 6.2.1.14. JGroups Support

6.2.1.14.1. JGroups Supported Versions 6.2.1.14.2. JGroups Monitoring Specification 6.2.1.15. Control Actions

6.2.1.16. Configuration Actions 6.2.1.17. Dynamic JBoss Launcher

6.2.1.17.1. Java Service Wrapper

6.2.1.17.2. Install JBoss Launcher Service 6.2.1.17.3. Start JBoss Launcher Service 6.2.1.17.4. Stop JBoss Launcher Service 6.2.1.17.5. Uninstall JBoss Launcher Service 6.2.1.18. File Deployment Actions

6.2.1.18.1. Deploy File 6.2.1.18.2. Undeploy File 6.2.1.18.3. List Deployed Files 6.2.1.18.4. Undeploy Selected File 6.2.2. Tomcat Management Support

6.2.2.1. Tomcat Supported Versions 6.2.2.2. Tomcat Monitoring Specification 6.2.2.3. Tomcat Administration Specification 6.2.2.4. General Server Metrics

6.2.2.5. Reliability Metrics

6.2.2.6. Resource Utilization Metrics 6.2.2.7. Connector Metrics

6.2.2.8. Webapp Metrics 6.2.2.9. Servlet Metrics 6.2.2.10. Control Actions 6.2.3. Hibernate Support

6.2.3.1. JBoss AS Supported Versions 6.2.3.2. Hibernate Monitoring Specification 6.2.4. JGroups Support

6.2.4.1. JGroups Supported Versions

91 92 93 93 93 93 94 94 94 94 94 95 95 95 95 95 95 96 97 97 97 98 99 99 99 99 99 99 100 100 101 101 101 102 102 102 102 102 103 103 103 103 103 103 103 104 104 105 105 105 105 105 106 106

(9)

6.3. Web Servers

6.3.1. Apache Management Support 6.3.1.1. Apache Supported Versions 6.3.1.2. Apache Monitoring Specification 6.3.1.3. Apache Administration Specification 6.3.1.4. Apache Product Configuration 6.3.1.5. Resource Utilization Metrics 6.3.1.6. Reliability Metrics 6.3.1.7. Throughput Metrics 6.3.1.8. Request Metrics 6.3.1.9. Response Metrics 6.3.1.10. VHost Metrics 6.3.1.11. Control Actions

6.3.2. Microsoft IIS Management Support 6.3.2.1. Microsoft IIS Supported Versions 6.3.2.2. Microsoft IIS Monitoring Specification 6.3.2.3. Microsoft IIS Administration Specification 6.3.2.4. Reliability Metrics 6.3.2.5. Connection Metrics 6.3.2.6. Transaction Metrics 6.3.2.7. Performance Metrics 6.3.2.8. Session Metrics 6.3.2.9. I/O Metrics 6.3.2.10. Throughput Metrics

6.3.2.11. Request Processing Metrics 6.3.2.12. VHost Metrics

6.3.3. iPlanet/SunONE Management Support 6.3.3.1. iPlanet/SunONE Supported Versions 6.3.3.2. iPlanet/SunONE Monitoring Specification 6.3.3.3. iPlanet/SunONE Administration Specification 6.3.3.4. Reliability Metrics

6.3.3.5. Connnection Queue Metrics 6.3.3.6. Resource Utilization Metrics 6.3.3.7. Process Metrics

6.3.3.8. Throughput Metrics 6.3.3.9. Thread Pool and VHost 6.4. File System Services

6.4.1. FileSystem Mount

6.4.2. Filesystem Directory Metrics 6.4.3. File Service 6.4.3.1. Overview 6.4.3.2. Configuration Properties 6.4.3.3. Metrics 6.4.3.4. Control Actions 6.5. Network Services 6.5.1. Network Interface

6.5.2. Network IP Service Metrics 6.6. System Process Services

6.6.1. MultiProcess Metrics 6.6.2. Process Metrics

6.6.3. Windows Service Metrics 6.7. Script Services 6.7.1. Script Service 6.7.1.1. Overview 6.7.1.2. Configuration Properties 107 107 107 107 107 107 110 110 110 110 110 111 112 113 113 113 113 113 113 113 114 114 114 114 116 117 119 119 119 119 119 119 119 120 120 121 121 121 121 122 122 122 122 122 122 122 123 123 123 123 124 124 124 124 124

(10)

. . . .

. . . . . . . .

6.7.1.3. Metrics

6.7.1.4. Control Actions 6.7.2. Nagios Plugin Service

6.7.2.1. Overview

6.7.2.2. Configuration Properties 6.7.2.3. Metrics

6.7.2.4. Control Actions Chapter 7. Response Time

7.1. What is Response Time? 7.2. Configuring Response Time

7.2.1. Apache 7.2.2. Servlet

7.3. Charting Response Time Chapter 8. Control

8.1. Controlling Resources Chapter 9. Administration

9.1. JBoss Operations Network Administration 9.2. JBoss ON Users and Roles

9.3. Server Configuration

9.3.1. JON Base URL Configuration Properties 9.3.2. JON Email Configuration Properties 9.3.3. Data Manager Configuration Properties 9.3.4. Automatic Baseline Configuration Properties 9.3.5. LDAP Configuration Properties

9.3.6. SNMP Server Configuration Properties 9.4. Monitoring Defaults Configuration

9.5. Agent Configuration 9.6. License Management 9.7. Patch Installation

9.7.1. What is a Cumulative Patch (CP)? 9.7.2. Current Limitations

9.7.3. Installing a Patch

9.7.3.1. Review the Installation Steps

9.7.3.1.1. Installing a Patch on a server that has previously been patched 9.7.3.1.2. Installing a Patch on a server with multiple configurations 9.7.3.1.3. Example patch installation instructions

9.7.3.2. View the Result of Installation 9.7.3.3. Performing Manual Steps 9.7.3.4. Uninstall the patch if necessary 9.7.4. Manually Uninstalling a Patch

9.7.4.1. Uninstalling a patch

9.7.4.1.1. Uninstalling a patch from a server with multiple configurations 9.7.4.2. How to reverse each step

9.7.4.2.1. Reversing a successful "Backup and replace" step 9.7.4.2.2. Reversing a skipped "Backup and replace" step 9.7.4.2.3. Reversing a failed "Backup and replace" step 9.7.4.2.4. Reversing a successful "Stop server" step 9.7.4.2.5. Reversing a failed "Stop server" step 9.7.4.2.6. Reversing a successful "Start server" step 9.7.4.2.7. Reversing a failed "Start server" step 9.7.4.2.8. Reversing the "Download file" step 9.7.4.2.9. Reversing the "Calculate digest" step

124 124 125 125 125 125 125 126 126 126 126 126 127 128 128 129 129 129 129 129 130 130 131 131 133 133 133 135 137 137 138 139 140 140 140 140 141 141 141 141 141 141 142 142 142 142 142 142 142 142 142 143

(11)

. . . . 9.7.5. Viewing Past Patch Installation Attempts

9.7.6. Securing Patch Installation

9.7.7. Troubleshooting Patch Installation Example

Chapter 10. Developing Plugins 10.1. Plugin Overview

10.1.1. Product Plugin Component 10.1.2. Measurement Plugin Component

10.1.2.1. Introduction

10.1.2.2. Measurement XML Attributes

10.1.2.3. MeasurementPlugin.getValue Method 10.1.3. Control Plugin Component

10.1.3.1. Introduction

10.1.3.2. ControlPlugin.doAction Method 10.1.4. Autoinventory Plugin Component

10.1.4.1. Overview

10.1.4.2. Simple autoinventory 10.2. Plugin Components

10.3. Plugin XML Descriptor

10.3.1. Plugins are supported in the following formats: 10.3.2. Top-level plugin Tag

10.3.3. server and service plugin Tag 10.3.4. Config Schema 10.3.5. Plugin Classpath 10.3.6. filter Tag 10.3.7. property Tag 10.3.8. metrics Tag 10.3.9. help Tag 10.3.10. server Tag 10.3.11. scan Tag 10.3.12. service Tag

10.3.13. Plugin XML Descriptor Syntax 10.4. Invoking Plugins Standalone

10.4.1. Examples 10.5. Plugin Build Script

10.6. Adding an MBean attribute as a JBoss Server Metric 10.7. Adding a New JBoss Service via the JON PDK

143 144 144 144 14 6 146 146 146 146 147 148 150 150 151 152 152 152 152 152 152 152 153 153 154 154 155 155 156 156 157 157 157 174 176 176 177 178

(12)
(13)

Preface

1. Document Conventions

This manual uses several conventions to highlight certain words and phrases and draw attention to specific pieces of information.

In PDF and paper editions, this manual uses typefaces drawn from the Liberation Fonts set. The

Liberation Fonts set is also used in HTML editions if the set is installed on your system. If not, alternative but equivalent typefaces are displayed. Note: Red Hat Enterprise Linux 5 and later include the Liberation Fonts set by default.

1.1. Typographic Conventions

Four typographic conventions are used to call attention to specific words and phrases. These conventions, and the circumstances they apply to, are as follows.

Mono-spaced Bold

Used to highlight system input, including shell commands, file names and paths. Also used to highlight keys and key combinations. For example:

To see the contents of the file my_next_bestselling_novel in your current working directory, enter the cat my_next_bestselling_novel command at the shell prompt and press Enter to execute the command.

The above includes a file name, a shell command and a key, all presented in mono-spaced bold and all distinguishable thanks to context.

Key combinations can be distinguished from an individual key by the plus sign that connects each part of a key combination. For example:

Press Enter to execute the command.

Press Ctrl+Alt+F2 to switch to a virtual terminal.

The first example highlights a particular key to press. The second example highlights a key combination: a set of three keys pressed simultaneously.

If source code is discussed, class names, methods, functions, variable names and returned values mentioned within a paragraph will be presented as above, in mono-spaced bold. For example:

File-related classes include filesystem for file systems, file for files, and dir for directories. Each class has its own associated set of permissions.

Proportional Bold

This denotes words or phrases encountered on a system, including application names; dialog box text; labeled buttons; check-box and radio button labels; menu titles and sub-menu titles. For example:

Choose System → Preferences → Mouse from the main menu bar to launch Mouse Preferences. In the Buttons tab, select the Left-handed mouse check box and click Close to switch the primary mouse button from the left to the right (making the mouse suitable for use in the left hand).

(14)

To insert a special character into a gedit file, choose Applications → Accessories → Character Map from the main menu bar. Next, choose Search → Find… from the Character Map menu bar, type the name of the character in the Search field and click Next. The character you sought will be highlighted in the Character T able. Double-click this highlighted character to place it in the Text to copy field and then click the Copy button. Now switch back to your document and choose Edit → Paste from the gedit menu bar.

The above text includes application names; system-wide menu names and items; application-specific menu names; and buttons and text found within a GUI interface, all presented in proportional bold and all distinguishable by context.

Mono-spaced Bold Italic or Proportional Bold Italic

Whether mono-spaced bold or proportional bold, the addition of italics indicates replaceable or variable text. Italics denotes text you do not input literally or displayed text that changes depending on

circumstance. For example:

To connect to a remote machine using ssh, type ssh [email protected] at a shell prompt. If the remote machine is example.com and your username on that machine is john, type ssh [email protected].

The mount -o remount file-system command remounts the named file system. For example, to remount the /home file system, the command is mount -o remount /home. To see the version of a currently installed package, use the rpm -q package command. It will return a result as follows: package-version-release.

Note the words in bold italics above — username, domain.name, file-system, package, version and release. Each word is a placeholder, either for text you enter when issuing a command or for text displayed by the system.

Aside from standard usage for presenting the title of a work, italics denotes the first use of a new and important term. For example:

Publican is a DocBook publishing system.

1.2. Pull-quote Conventions

Terminal output and source code listings are set off visually from the surrounding text. Output sent to a terminal is set in mono-spaced roman and presented thus:

books Desktop documentation drafts mss photos stuff svn books_tests Desktop1 downloads images notes scripts svgs

(15)

package org.jboss.book.jca.ex1; import javax.naming.InitialContext; public class ExClient

{

public static void main(String args[]) throws Exception

{

InitialContext iniCtx = new InitialContext();

Object ref = iniCtx.lookup("EchoBean"); EchoHome home = (EchoHome) ref;

Echo echo = home.create(); System.out.println("Created Echo");

System.out.println("Echo.echo('Hello') = " + echo.echo("Hello")); }

}

1.3. Notes and Warnings

Finally, we use three visual styles to draw attention to information that might otherwise be overlooked.

Note

Notes are tips, shortcuts or alternative approaches to the task at hand. Ignoring a note should have no negative consequences, but you might miss out on a trick that makes your life easier.

Important

Important boxes detail things that are easily missed: configuration changes that only apply to the current session, or services that need restarting before an update will apply. Ignoring a box labeled 'Important' will not cause data loss but may cause irritation and frustration.

Warning

(16)

Chapter 1. Welcome

1.1. Overview of JBoss Operations Network

JBoss Operations Network is an IT management framework which gives its users the ability to manage many different types of technologies from a single interface.

1.1.1. Auto Discovery

Auto-discover resources (Platforms, Servers and Services, refer to Chapter 3, JBoss ON Inventory) Define Applications and view supporting resource maps (refer to Section 3.6, “Application”)

Manage platform, server, service, and application inventories

1.1.2. Monitor

Measure end-to-end application service levels

Track performance, availability, resource utilization, throughput and events

Identify root cause of application problems by drilling down through resource hierarchies Correlate cause and effect

Analyze historical data

1.1.3. Alert

Alert on problems as soon as they occur Configure multi-condition alerts

Send alerts to email, cell phone or pager

Setup auto-recovery alerts that are linked to control actions

1.1.4. Control

Centrally exercise a full range of resource specific commands Perform pre/post control impact analysis

Perform one-to-many corrective actions over groups of resources Auto-recover from service level outages and degradations

1.2. Architecture

JBoss Operations Network is a distributed infrastructure management system. The major pieces of the system architecture are shown below.

JON Repository

The data repository forms the bedrock of the JON system. It stores all JON-related data in a relational schema and is responsible for ensuring data integrity and coordinating concurrent access to data. Access to the data repository is regulated by the Management Server.

(17)

As JON's central nervous system, the JON server coordinates all system functions, including: Processing incoming monitoring data

Detecting alert conditions and sending out alerts

Managing inventory, including merging auto-discovery information into current inventory Enforcing security

Maintaining JON operational schedules (for control actions and auto-discovery scans) Processing user-driven actions initiated via the GUI Console or command line interface

In large environments, the management server can be clustered for enhanced fault tolerance and to share the overall system load across multiple machines.

JON Agent

Acting as the sensory facilities of the management system, agents are deployed throughout the network infrastructure to provide points-of-presence for discovering inventory, gathering data, controlling

software, and other "in the trenches" tasks. JON GUI Console

The web-based graphical user interface makes it easy to manage your infrastructure from anywhere. The console interacts with the management server and exposes server functionality through a rich, user-friendly web-based interface. The console is implemented as a portal, which makes it easy to customize the content and look-and-feel on a per-user basis.

JON Command Line

The command line interface (CLI) provides a text-based interface to the management server. The command line can be driven programmatically, giving power users the ability to automate JON activities by writing shell scripts.

JON Agent Plugins

A plugin-oriented design allows JON to support a wide variety of products and platforms. Each plugin allows JON agents to interface with a specific product.

Plugins are packaged as a single ".jar" file, for ease of deployment. Each plugin has a declarative

component and a functional component. The declarative component is deployed within the JON Server to describe how the product's organizational concepts fit into the JON data model, and what kinds of

metrics and control actions are supported. The functional component is deployed within the agent and is responsible for the actual product-specific work of auto-discovery, metric collection and resource control. JON Topology

JON seamlessly monitors, manages, and controls the various servers in the enterprise. Below are two views of the same topology, to help illustrate how the product does this.

The User View The Component View

<-->

On the left we have what JON would look like from a user's point of view. The JON Web Console is gathering metrics and executing certain controls on the servers it know's about. The diagram on the right shows how the JON Server communicates with these servers in the enterprise.

(18)

discover resources - platforms, servers, and services - installed on that machine by using its plugins as delegates. Information flows from the plugins through the agent and up to the JON server. Likewise, information from the JON server will flow down to the agent, which will distribute the request to the appropriate plugin.

By default, the agent comes pre-packaged with all of our standard product plugins. The diagram above simply emphasizes the plugins that would be active on each particular machine in that particular 3-tier topology. However, it's perfectly possible to have multiple products installed on the same machine, and the JON Agent will successfully handle those scenarios as well.

Things to note

The JON Agent is J2SE only, not a full-blown J2EE application.

The JON Server installation process is self-contained; it does not require an existing application server

(19)
(20)

1.3. Supported Platforms

Platform Server Agent

Windows (refer to Section 6.1.5, “Microsoft Windows

Management Support”)

.MSI, .ZIP .MSI, .ZIP

Linux (refer to Section 6.1.1, “Linux Management Support”)

.tar w/setup .tar w/ setup, deploy tool(ssh) Solaris (refer to Section 6.1.3,

“Sun Solaris Management Support”)

.tar w/setup .tar w/ setup, deploy tool(ssh)

HP-UX (refer to Section 6.1.2, “HP-UX Management Support”)

.tar w/ setup .tar w/setup, deploy tool(ssh) AIX (refer to Section 6.1.4, “IBM

AIX Management Support”)

not supported .tar w/ setup, deploy tool(ssh)

Warning

Click on a platform name for information on exactly which architectures and OS versions are supported for that platform.

1.3.1. Supported Platforms - JBoss ON the Road

JBoss ON the Road is a day-long hands-on workshop presented by the JBoss ON team. In order to run the labs, attendees will need to bring a laptop with the following specifications:

(21)

and NOT Windows Vista.

(A full list of supported platforms is listed in Table 3.1, “Supported Platforms”, however not all installers are available at the workshop.)

A CD-rom drive to install the JBoss Operations Network software. 600MB of free hard disk spce.

A wireless network adaptor (WiFi)

It is recommended for optimal performance to have at least 512Mb of RAM and a 1GHz or faster processor

To find out about upcoming JBoss ON the Road Workshops visit JBoss ON the Road registration or contact JBoss Sales.

(22)

Chapter 2. Installation

2.1. Install Guide

JBoss Operations Network is software designed to be quickly installed and integrated into your existing IT infrastructure. This chapter is the installation guide and will give a complete overview on the JON installer.

Tip: To get up and running quickly, see Section 2.2, “QuickStart Guide” The activities associated with installing JBoss Operations Network are:

1. Planning and Prerequisites

2. Database preparation (If necessary) 3. Install JBoss Operations Network

2.1.1. Planning and Prerequisites

2.1.1.1. Sizing

Prior to installing JBoss ON, there are some planning and prerequisite activities that should be undertaken.

First, the size of the infrastructure environment to be managed should be considered. A small

environment would consist of 2-5 platforms (hosts) running 5-15 servers, a medium sized environment is up to 25 platforms, and a large environment is anything larger.

The size of the environment is one factor in determining which backend database will best suit the JBoss ON installation for your particular environment. Other factors include personal preference and existing infrastructure. The JON built-in embedded database is the easiest to install.

Next, check that the machines and operating systems you are installing JBoss ON onto are supported. See Section 1.3, “Supported Platforms” for a detailed breakdown.

Embedded Database on MS-Windows

If you are installing on Windows in your production environment, you should not use the embedded database option. Currently, there is no way to upgrade this setup with a new JBoss ON. It is possible this limitation will be removed in future versions of JBoss ON, but as it stands, if you use the embedded database on Windows and you want to upgrade to a newer version of JBoss ON, you will lose all data in your database, including inventory, users/roles, metric data, etc. Actually, this may be a little strongly worded - you could upgrade if you take a pg_dump of your embedded database and transfer it to a standalone database that will be used by the new version, but most people don't want to go through the hassle.

If you are evaluating the product, it is highly recommended that you use the embedded database option to get up and running as quickly as possible. However, if your infrastructure already includes installed and configured Oracle or PostgreSQL database servers, these can be used just as easily. If the administrator's personal preference is to maintain separate hosts to run JBoss ON and the database server, that is also a supported configuration. In special case environments that are especially

(23)

Regardless of the size of your environment, your JBoss ON performance can be greatly enhanced with multiple processors and higher memory.

2.1.1.2. X Libraries

UNIX X Windows Requirement

If the machine that is to run the ON server runs a UNIX-based operating system, an important prerequisite for that machine is that it have the X libraries installed. A fully functional X Windows system is not necessary, but the X libraries need to be available so that ON can create the charts and graphs on the monitoring pages.

Make sure all of these libraries exist on your system.

The X libraries are are almost certainly available as a package for your Linux distro. Here are the packages required for some of the more common distros:

RHEL 5 and Fedora Core 8: libXp package

RHEL 4: xorg-x11-deprecated-libs package (v6.8.1 or later) RHEL 3: XFree86-devel package

Fedora Core 2: xorg-x11-devel package Debian: xlibs-dev package

Note: If you have installed JON using a non-64-bit distribution onto a machine with a 64-bit architecture, you should make sure that the 32-bit versions of the X libraries are installed. Note: If you have a base install of RHEL5, with NO X installed (e.g. prepping for a headless server) then you need to install more than just the libXp package. You also need to install: libX11, libICE, libSM, libXt, libXext, libXtst, libXau and libXdmcp

Here are the specific X shared libraries that the Sun JDK for Linux x86 (specifically, libawt.so) is linked against: /usr/X11R6/lib/libXp.so.6 /usr/X11R6/lib/libXt.so.6 /usr/X11R6/lib/libXext.so.6 /usr/X11R6/lib/libXtst.so.6 /usr/X11R6/lib/libX11.so.6 /usr/X11R6/lib/libSM.so.6 /usr/X11R6/lib/libICE.so.6 2.1.1.3. Hardware

Next, hardware must be allocated to run the ON server. Minimum system requirements are listed in the tables below:

(24)

Table 2.1. Hardware Requirements (Small Deployment)

Type Description

Operating System Linux, Solaris, HP/UX, Windows

Processor 1 x 1GHz x86 or 1 x 450MHz SPARC or 1 x

440MHz PA-8800

Memory 512 MB

Storage 1 GB

Table 2.2. Hardware Requirements (Medium Deployment)

Type Description

Operating System Linux, Solaris, HP/UX, Windows

Processor 2 x 2Ghz x86 or 2 x 450MHz SPARC or 2 x

440MHz PA-8800

Memory 1 GB

Storage 1 GB

2.1.1.4 . JRE

If you are installing JBoss ON with an external JRE instead of the embedded JRE, ON requires the following versions:

Table 2.3. JRE Requirements

JBoss ON JRE version

Server JRE 1.4.2

Agent JRE 1.4.2 or JRE 1.5

2.1.1.5. Clock Synchronization

All Clocks Must Be In Sync

You must make sure that all platforms to be imported into your environment must have their clocks in sync with each other and with the ON Server. If the times are off, metric values/graphs will be skewed and problems will occur when you attempt to import resources into your inventory.

2.1.2. Database Preparation

The options for a backend database for ON are:

1. JON Built-in database (i.e. the embedded Postgres DB) 2. Oracle 8

3. Oracle 9i/10g 4. PostgreSQL 8

(25)

to be used, this section can be skipped.

2.1.2.1. Oracle Preparation

Three things need to be done for Oracle for use with JBoss ON. More preparation is necessary if the advanced Oracle setup will be used.

1. Create or determine an Oracle instance to be used for the JBoss ON database.

It is recommended that the Oracle server to be used by JBoss ON be running on its own hardware. Install Oracle on the machine to be used, and create a database (you can name the database whatever you want). The Oracle instance will be ready for the next step.

2. Create the user JBoss ON will use to access Oracle.

There are several ways to create a user in Oracle. One way is with SQL*Plus. First, log into the Oracle instance as the system user with SQL*Plus, then issue the CREATE USER command:

SQL> CREATE USER jon IDENTIFIED BY jon;

The above command would create a user named 'jon' with a password of 'jon'. 3. Grant the required permissions to the Oracle user.

The Oracle user must possess the connect and resource roles. This can be easily done in SQL*Plus with the GRANT command:

SQL> GRANT connect, resource TO jon;

Oracle is now ready to accept a JBoss ON installation.

2.1.2.1.1. Advanced Oracle Configuration

This is optional configuration that can help Oracle perform very well with very large JBoss ON

environments. This configuration is not necessary for small to medium environments. An example of an environment where this type of configuration would help performance is an environment with hundreds of JON Agents.

Warning

If you follow the recommended advanced Oracle instructions below, you must utilize the

"Advanced Database Install" option within the installer. If you don't use this option, all tables will be placed into the Oracle user's default tablespace and the installation will fail.

1. Create a new database using Oracle Database Configuration Assistant. Select New Database (Includes datafiles = No). Decline to install the Example Schemas to save space.

2. If this advanced configuration is being used, Oracle should be installed on a dedicated host. So select Typical Memory configuration. Select OLTP as the type of database sizing to use. Allocate as high a percentage of system resources as you can afford. This should be 70-90%, ideally in the higher range. 3. Create the following tablespaces:

(26)

RESOURCE_IDX_01 (with 2 x 512MB datafiles) - used for indexes on above data METRIC_01 (with 4 x 1024MB datafiles) - used for all metrics (including response-time) METRIC_IDX_01 (with 4 x 2048MB datafiles) - used for all metric related indexes

Locally Managed Freelists

All tablespaces should have locally managed freelists. The default behavior is automatically managed freelists, and that has an adverse effect on our ability to do concurrent inserts. So set Manual Segment Space Management.

Redo Logging should be turned OFF for all of these tablespaces, by specifying the NOLOGGING clause when creating the tablespaces. In fact, Redo Logging should be turned off for ALL the tablespaces in the same database. This is a major bottleneck for the database, and, in our scenario, we need high

throughput, which comes at the expense of recoverability. In other words, export data and back it up when you want to recover.

4. For each of the datafiles created:

For RESOURCE_01 and RESOURCE_IDX_01 datafiles, set AUTOEXTEND ON and increment by 128MB

For METRIC_01 and METRIC_IDX_01 datafiles, set AUTOEXTEND ON and increment by 256MB 5. Create the JBoss ON user. Not all JBoss ON tables specify a tablespace at install time, those that do not will end up in the default tablespace for the user. Therefore, make sure to set RESOURCE_01 as the default tablespace when the user is created:

CREATE USER jon IDENTIFIED BY jon DEFAULT TABLESPACE RESOURCE_01; 6. Grant permissions to the new user:

GRANT CONNECT, RESOURCE TO jon;

2.1.2.1.1.1. Oracle Asynchronous I/O

Async I/O

Asynchronous I/O is yet another optional configuration that can further increase the performance

of an Oracle database serving a large JBoss ON environment. Follow the instructions in this section to enable it.

Asynchronous I/O configuration is only supported by Oracle 9i. On Linux, Oracle 9i supports

asynchronous I/O but it is disabled by default because some Linux distributions do not have libaio by default. For Solaris, the following configuration is not required - skip down to the section on enabling asynchronous I/O.

On Linux, the Oracle binary needs to be relinked to enable asynchronous I/O. The first thing to do is shutdown the Oracle server. After Oracle has shutdown, follow the instructions from here:

(27)

Note for RedHat 9

Download the src rpm for libaio (libaio-0.3.93-4.src.rpm) and patch it with

Redhat Patch before building and installing. Then, relink Oracle as described above and follow the rest of the instructions to enable asynchronous I/O.

There are two initialization parameters for asynchronous I/O:

disk_asynch_io = true # This parameter defaults to true filesystemio_options = asynch # This parameter defaults to unset

The second parameter may only apply if you use the file system rather than raw partitions. If your

installation uses the init.ora file, or init_yourdatabasename_.ora, add the above parameters to it and start the database.

Alternatively, if your installation uses the spfile mechanism, which is new in Oracle 9, you have to start the server, log in as SYSDBA through sqlplus, then give the following command:

SQL> ALTER SYSTEM SET filesystemio_options = ASYNCH;

This default invocation changes the parameter value both in memory and on disk in the actual spfile (this is assumed to take effect immediately). Display a parameter's value by using the SHOW PARAMETER parametername; command. You will know that your installation uses spfiles if:

Editing init.ora doesn't accomplish anything

there is a file named spfileyourdatabasename.ora in \${ORACLE_HOME}/dbs

2.1.2.2. PostgreSQL Preparation

PostgreSQL requires a few changes to the database configuration. Edit the postgresql.conf file and change or add the following:

## not necessary if the database is started with the -i flag tcpip_socket = true

## performance changes for JBoss ON fsync = false

shared_buffers = 10000 work_mem = 2048

statement_timeout = 30000 checkpoint_segments = 10

Additionally, depending on the OS you are using, you may need to adjust some kernel parameters as described here.

You will need to create a role that JBoss ON will use to connect to PostgreSQL. For more details of how to do that see here.

Finally you'll need to update the pg_hba.conf file to allow the role you just created to connect from the machine the JBoss ON Server will be installed on, e.g. localhost. For more details of how to do that see here

(28)

installation.

2.1.3. Installing JBoss Operations Network

2.1.3.1. Download JBoss ON

The first step is to download JBoss ON from the JBoss Network Customer Support Portal. Once you've logged in, choose Software and then Operations Network from the menu on the left. From the list of software which is shown, choose the distributions which are appropriate for your environment. The various distributions that are available are described below.

2.1.3.2. Available Distributions

2.1.3.2.1. Full Installer vs. Agent-Only Installer

The full installer includes all three components of JON - the server, the agent, and the shell. It is intended to be run on the machine that will act as the JON server (in the standard JON architecture, there is a single server and one or more agents). The server component also includes the JON GUI, which is Web-based. The shell component is a command-line interface to the JON server. It is provided as an optional alternative to the Web GUI.

The agent-only installer is intended to be run on each machine that you want to be managed by JON. It is not necessary to run the agent-only installer on the server machine, since the full installer includes the agent, as well as the server. Refer to Section 2.3, “Agent-Only Installation”

2.1.3.2.2. Platforms

JON is supported on Windows, Linux, Solaris, and HP-UX (PA-RISC). For full details, see

Section 2.1.3.2.2, “Platforms”. There is a separate installer for each supported platform. Choose the installer that corresponds to your target platform.

If you are installing the JON server, v1.2-SP1 or later, on Windows, you can choose between two installers - a GUI installer or a text-based installer. The GUI installer is recommended for most cases, since, unlike the text installer, it configures Windows services for the JON server and agent. However, if you are upgrading a previous installation that used the embedded PostgreSQL database, the text installer must be used. If you are installing JON, v1.2 or earlier, the Windows text installer is not available.

If you are installing JON on a UNIX platform, you will always use a text-based installer.

Each platform-specific JON installer is bundled with a JRE and a PostgreSQL database that is built for the corresponding platform. In most cases, these installers should suffice. However, if you prefer to use your own JRE (v1.4.1 or later) instead of a bundled JRE, you can choose to use the no-JRE installer instead of a platform-specific installer. Note, this means you will also need to use an external database, since the no-JRE installer does not include a database. Refer to Section 2.5, “No-JRE Installer”

2.1.3.3. Windows GUI Installer

Run the installer executable to start it. Upon acceptance of the terms of the license, specify an install path and then select to either install everything (JON Server, JON Agent and JON Shell) or select

custom to select specific components. It is recommended that you always install the agent component on the server machine, in addition to the server component. Next, the options are either to use the default installation settings (quick install) or be interviewed for the custom install. Most of the fields are the same as the text installer fields, which are described below.

(29)

2.1.3.4 . Text Installers

Unzip the installer zipfile to a temporary directory. Open a command prompt, and start the installer by running setup.bat on Windows or setup.sh on UNIX. The following is a table that documents the available options when running the setup script:

option description

-upgrade This argument will start the installer in upgrade

mode. The installer will ask for the full path to the JON Server to be upgraded. This option will only upgrade a JON Server. To upgrade agents, simply install a new agent and configure it to connect to the new server.

-oracle This argument will invoke the installer in quick

install mode for oracle.

-postgresql This argument will invoke the installer in quick

install mode for standalone PostgreSQL. NOTE: The above arguments will not overwrite an existing JON database if one exists on the target database instance. For upgrades and database overwrites, use -full.

-full This argument will cause the installer to prompt

for almost everything. Ports to use, JON admin user name, what type of database to use, etc. NOTE: This argument should be used for standalone JON Server upgrades

-highavail This argument will cause the installer to prompt

for everything above and will have an additional prompt for the high availability server installation options. NOTE: This argument should be used for new high availability JON Server installations. No argument passed to setup.sh will invoke the installer in quick install mode for the built-in database. As there are minimal prompts, this is the option to get JON up and running as fast as possible.

In all cases, the first thing the installer prompts for is what components to install. Choose any or all of JON Server, JON Agent or JON Shell depending on what the installation requirements are. It is

recommended that you always install the agent component on the server machine, in addition to the server component.

Do not use a custom Ant environment (applies only to versions of JON

prior to 1.2.SP1)

Make sure you do not override Apache Ant settings via system or user-level Ant configuration files. This can break the Ant scripts that are used by the installer. If you have an /etc/ant.conf,

$HOME/.antrc, $HOME/.ant/ant.conf or other Ant configuration file, move them out of the way

(30)

2.1.3.5. Components

The JBoss ON components available to install are JON Server, JON Agent and JON Shell. The JON Server is the heart of JBoss Operations Network and must be installed in one location. The JON Agent is an agent that sits on each managed platform and reports to the server. The JON Agent is installed in at least one location. The JON Shell is a command line interface to JBoss ON. It is useful for scripting multiple operations and general JBoss ON access from a command line environment. The JON Shell does not need to be installed for JBoss ON to run, it is purely to facilitate access to the server. It is capable of connecting to the server remotely and can therefore be installed anywhere.

2.1.3.6. JON Server Installation

When installing the JON Server using the -full

option, a series of questions are asked to aid in configuration. These are detailed below: High Availability

This is only an option if the UNIX installer is invoked with -highavail. This allows for installation of a distributed JBoss ON Server environment and requires an Oracle backend database (Postgres can be tried but may not be capable of handling the load in the typical environment in which this -highavail installation is needed).

Create JON Database

This will create a new JON database. If this is an upgrade of a JBoss ON installation with an Oracle backend, the correct answer would be 'no' so that the existing database will be used. This option defaults to yes.

JON Server HTTP Port

Allows for specification of an alternate HTTP port. Defaults to 7080. JON Server HTTPS Port

Allows for specification of an alternate HTTPS port. Defaults to 7443. JON Server JNP Port

Allows for specification of an alternate JNP port. Defaults to 2099. Any changes to this setting are currently ignored by the Windows Installer.

JON Server MBean Port

Allows for specification of an alternate MBean server port. Defaults to 8083. Any changes to this setting are currently ignored by the Windows Installer.

JON Server Base URL

Allows for specification of the URL used to access the JON Server. This value is used in alert notification emails. This value can also be changed from the Server Administration page by an JON administrator after the product is installed. Defaults to http://hostname:http_port/.

(31)

JON Server Alert Notification sender email

This is the 'From:' address on alert notification emails sent from JBoss ON. Note that some mail servers require a valid domain name in the From field.

JON Backend Database

Select the backend database JON Server will use. Options are the JON built-in database (PostgreSQL 8.1), Oracle 8, 9i, 10g and PostgreSQL. This option defaults to Built-in Database. JON Administrator username

Allows for specification of the username of the original JON administrator (the "root" user). Default is 'jonadmin'. If you are upgrading, be sure to enter the existing admin's username. JON Administrator password

Specify a password for the JON administrator. The installer will not echo the password and will prompt for it twice so it can be verified. The default is only for use when the installer is invoked with one of the quick installation options. If -full or -highavail is used, there is no default and a password must be entered, otherwise the default is 'jonadmin'. If you are upgrading, be sure to enter the existing admin's password.

JON Administrator email address

This is the email address assigned to the JON administrator. This is the address alert

notifications will be sent to if the administrator user gets configured to receive alert notifications. JON Server Authentication data source

This allows specification of an alternate LDAP data source for the JON user authentication. The default is the JON Database.

2.1.3.7. JON Agent Installation

For UNIX installations, the only questions the agent installer will ask is where to install the agent. If an agent installation exists in that location, the installer will ask if you want to overwrite it. However, the first time the JON Agent is started, there are some questions to be answered. The agent needs to know how to contact the JON Server, so that information must be supplied to it.

For Windows installations, the installer asks where you want to install the JON Agent and, if you are doing an agent-only install, it also asks for all the JON Server connection information. For a full install (JON Server and JON Agent), the installer automatically configures the JON Agent to connect to the Server.

Firewall Issue

If you are doing an agent-only install on Windows and the Windows Firewall is active, open port 2144 in the firewall before installing the JON agent (2144 is the default port the agent will listen to).

(32)

opening a DOS Command Shell and from the JON install directory agent-x.x.x directory run jon-agent.exe setup

The above command only works if the JON Agent is running. If it is not running, start it from the Windows Service Manager first.

2.1.3.8. JON Shell Installation

The only question the shell installation will ask is the location to install.

After all questions have been correctly answered, the installer will install the selected JBoss ON components.

2.1.3.9. JON Server Startup

Once the installer successfully installs the server, it requires no post-installation tasks; it can immediately be started. The Windows installer starts the server automatically upon successful

installation. The JON Server and Agent both get installed as Windows services, so starts and stops can be managed from the Windows Service Manager. UNIX users start the server by executing 'server-x.x.x/bin/jon-server.sh start'. The script backgrounds itself immediately, but will display some startup information on stdout. Both Windows and UNIX users can see the full server log (along with verbose startup information) at server-x.x.x/logs/server.log. When the server has started, the log will display that information and UNIX users will see a message displayed on stdout.

2.1.3.10. JON Agent Startup

This section will cover the questions to be answered during the first start of an agent. But be aware that the JON Server must already be running before starting an agent for the first time.

Windows users start the agent service in the Windows Service Manager. Starting the agent the first time is not necessary as the Windows GUI Installer does that automatically following a successful installation. When using the Windows Text Installer, it is necessary to first start the JON Server, configure the JON Agent, install it as a service and then start the service:

start the JON Server (see Section 2.1.3.9, “JON Server Startup”) configure the JON Agent: agent-x.x.x/jon-agent.exe -start after setup is complete, press Ctrl+C to stop the agent.

install the JON Agent as service: agent-x.x.x/jon-agent.exe -i start the new JON Agent through the Windows Services tab

On UNIX, the JON Server does not get started after installation, it must be started manually. If the server is not running yet, see the JON Server Startup section above. UNIX users start the agent by executing:

agent-x.x.x/jon-agent.sh start

When the JON Agent starts up for the first time, a series of questions are given to establish network communications with the JON Server. These are detailed below:

JON Server IP Address

Supply the IP address of the running JON Server. If the agent is on the same host as the server, the answer can be 127.0.0.1 to communicate on the loopback interface.

(33)

Server <-> Agent secure communication

This option tells the Agent to communicate with the Server over HTTPS. If secure

communication is not necessary (for instance, if the agent and server are on a private network), saying 'no' here will increase the performance of agent/server communication. The default is to use secure communication.

JON Server Port

Supply the port that the JON Agent will communicate to the JON Server on. If the answer for the previous question was 'yes' to communicate securely, the HTTPS port must be supplied. If the answer was 'no' (not to communicate securely), the HTTP port must be supplied.

JON Login

Supply the username of a JON user with sufficient permissions to create resources in JON. The JON administrator has such permissions.

JON Password

Supply the password for the username entered above. JON Agent IP Address

Supply the IP address that the JON Server will use to contact this agent. If the agent is on the same host as the server, the answer can be 127.0.0.1 to communicate on the loopback

interface. If there is a firewall between the JON Server and Agent, this would be the IP address of the firewall.

JON Agent Port

Similar to the previous question, this is the port the JON Server will communicate to the agent on. Note that changing this value will not change the port that the agent binds to on the

machine. The port that the agent binds to is set in the agent.properties file. The property to set is agent.listenPort. There is no agent.listenPort specified by default, so the agent listens on 2144 by default. If the agent.listenPort is changed, this question must be answered accordingly.

2.1.3.11. JON Agent Shutdown

The JON Agent can be shutdown by executing agent-x.x.x/jon-agent.sh stop

Connection information can be displayed from a running agent by executing agent-x.x.x/jon-agent.sh status

2.1.4. Laptop Installations

If you installed JBoss ON on a laptop or other computer that regularly disconnects from the network, dynamically obtains new IP addresses, connects to a VPN or experiences other network addressing changes then please see Section 2.1.4, “Laptop Installations” for additional setup that is required. Do so prior to starting the JON server or agent.

(34)

2.2. QuickStart Guide

JBoss Operations Network is designed to be management software that can be quickly installed and integrated into your existing IT infrastructure. This document will detail how to get JBoss Operations Network up and working for you as quickly as possible.

2.2.1. Check for supported platforms

See Table 3.1, “Supported Platforms” for a list of platforms on which we support the JBoss ON Server and Agents.

2.2.2. Download JBoss ON

The first step is to download JBoss ON from the JBoss Network Customer Support Portal Download Page. Once you've logged in, choose Software and then Operations Network from the menu on the left. From the list of software which is shown choose the distributions which you want and which are

appropriate for your environment. The "Full" distributions include the JBoss ON Server, Agent and Shell. The JBoss Operations Network requires a Java Runtime Environment to run, so it comes bundled with platform specific JREs. If you already have a JRE (1.4.1 or higher), and want to use that, you can download the noJRE or "Platform Neutral" version. If you are using the noJRE package, be sure that your JAVA_HOME environment variable is set correctly. If you have a particular JRE you want JBoss ON to run on, you can also set JAVA_HOME to point to it.

2.2.3. Unpack the JBoss ON package

Now that you have downloaded the package, you must unpack it. The .tgz packages are gnuzipped tar archive files and can be unpacked using gnu tar:

tar zxvf <jon-installer.tgz file>

Windows .zip files can be unpacked using any Windows zip utility. Windows .exe binaries can be executed directly on Windows.

2.2.4. Install the JBoss ON Server and Agent

Unix platforms start the JBoss Operations Network installer with this command: ./jon-installer/setup.sh

On Windows, with the noJRE JBoss ON package, you can execute setup.bat in a command shell: ./jon-installer/setup.bat

or double click the JBoss ON Windows installer executable. The following instructions will explain the command line installation in detail. For Windows graphical installation, refer to the Install Guide .

Initializing JBoss Operations Network Installation... Choose which software to install:

1: JON Server 2: JON Shell 3: JON Agent

(35)

1,3

Next, you need to decide where to install the JBoss ON Server: JON server installation path [default '/usr/local']:

Install JBoss ON to any location you wish - you must have write access to that location, of course and the directory must already exist.

JBoss ON agent installation path [default '/usr/local']:

The agent install path can be the same as the server install path (they install themselves to different subdirectories). At this point, the installer will begin installing the JBoss Operations Network Server and Agent. When the installation has completed, the installer will exit and you can move on to the next step.

2.2.5. Start up the JBoss ON Server

When the installer has successfully exited from the previous step, it will display the full path to the startup script. The command to start the JBoss ON Server will be:

/usr/local/server-*/bin/jon-server.sh start

Of course, if the install directory was not /usr/local, the path will be whatever the install directory was set to. Windows users can execute

jon-server.exe start

If the Windows graphical installer was used, there will be a Windows Service for the JBoss ON Server that will have been started automatically when the installer finished. For a successful command line startup, you should see this output after executing the startup script:

Starting JON server...

Initializing JON server configuration... Starting JON built-in database...

JON built-in database started. Booting the JON server... JON server booted.

Login to JON at: http://127.0.0.1:7080/

That should be displayed relatively quickly, and the server will start up in the background. Depending on the hardware, the JBoss ON Server can take several minutes to completely boot. The JBoss ON URL will display startup status until the server is completely booted and then it will display the login page. When the JBoss ON Server has booted, the next step is to start the JBoss ON Agent.

2.2.6. Start up the JBoss ON Agent

Start up the JBoss ON Agent using the jon-agent.sh (or .bat) startup script: /usr/local/agent-*/bin/jon-agent.sh start

The first time you start the JBoss ON Agent, it will ask you some questions so it knows how to connect to the JBoss ON Server:

(36)

Starting agent

- Unable to load agent token file. Generating a new one ... Done - Invoking agent

Agent successfully started [ Running agent setup ]

What is the JBoss ON server IP address:

This Quick Start Guide is assuming the JBoss ON Server and JBoss ON Agent are installed on the same machine. Therefore, the correct answer to this question is

127.0.0.1

Next, you must determine if the agent will communicate to the server via SSL.

Should Agent communications to JBoss ON always be secure [default=no]:

It is generally safe to take the default of 'no' here. In this case, since the agent and server are on the same machine, it is very safe to say 'no'. SSL would be useful if you agent and server needed to use the open internet to communicate to each other.

What is the JBoss ON server port [default=7080]:

7080 is the default HTTP port for JBoss ON. Press enter to accept the default. - Testing insecure connection ... Success

What is your JBoss ON login [default=jonadmin]: What is your JBoss ON password:

The default username for JBoss ON is 'jonadmin' and the default password is also 'jonadmin'. Enter that information here.

What IP should JBoss ON use to contact the agent [default=127.0.0.1]:

Depending on the host configuration, the default here may be the IP address of the machine. Since the agent and server are on the same machine, communication over the loopback device is the most efficent. Enter

127.0.0.1

Then continue on with the installation:

What port should JBoss ON use to contact the agent [default=2144]:

(37)

- Received temporary auth token from agent - Registering agent with JBoss ON

- JBoss ON gave us the following agent token

1104817706987-8534327776788402831-4021000845020676153 - Informing agent of new JBoss ON server

- Validating

- Successfully setup agent

The JBoss Operations Network Server and Agent are now up and running.

2.2.7. Login to JBoss ON

Using a web browser, navigate to port 7080 of the host you installed JBoss ON on. An example might be http://localhost:7080/. You will be presented with the JBoss ON Login screen. Enter the default JBoss ON Administrator username and password of jonadmin and jonadmin

Upon successful login, you will be at the JBoss ON Start page. Refer to the "JBoss Operations Network Start page" section in the JBoss Operations Network 1 Reference Guide available from

http://docs.redhat.com/. From there various sections of the console can be reached. Hitting the Dashboard link will bring up a page from where the following can be performed:

2.2.8. Import a new platform

The Dashboard consists of several portlets that provide different types of information. The one portlet that will stick out is the Auto-Discovery portlet. It will have several entries for the newly registered Agent on the local machine. The radio button next to this host should be selected. If there are other entries and the radio button is not selected, please select it. Now click IMPORT to import the platform and it's

servers. The process adds the platform and servers to the JBoss ON inventory as well as enables the default metrics for collection on the newly imported resources. You will know this process has been started when you see the hostname for the platform in the Recently Added Resources dashboard portlet.

2.2.9. View platform metrics

The default metric collection intervals for platform metrics range between 1 minute and 10 minutes depending on the metric. So since we just scheduled these metrics for collection, we need to give it a few minutes to collect the first data points. After the first metrics have been collected, we can view them from the platform metrics page.

To view the metric data, it is necessary to navigate to the platform current health page. There are

several ways to do this. One way is to click the Browse Resources link at the top of most any page. Next click on the link of the platform you wish to view the metrics for. This is the Platform Current Health page. This page displays a wealth of information on the health of the current resource (in this case, a platform) as well as information on resources related to this resource. To get more specific metrics for this

platform, click on the METRIC DATA mini-tab.

This list of metrics represents all the metrics for which JBoss ON has data for in the display range. In our case, we just started metric collection a few minutes ago, so there will be very little metric data here. There are still a few things you can do to explore the possibilities in JBoss ON. Each metric has an info icon

(38)

metric. You can chart the data for any metric by clicking the chart icon to the right of each metric name or simply clicking on the metric name itself. Alternately, you chart multiple metrics at the same time by checking the checkbox next to the desired metrics and clicking CHART SELECTED METRICS .

2.2.10. Complete

JBoss Operations Network is now up and running for your environment. At this point, you can add more resources to your JBoss ON Inventory (refer to Chapter 3, JBoss ON Inventory), install more JBoss ON Agents on other machines to import more platforms, configure metrics (refer to Section 4.3, “Managing Metric Data”) and alerts (refer to Chapter 5, Alerts for your resources, control your servers (refer to Chapter 5, Alerts) and the list goes on. Continue reading this documentation for more on how JBoss ON can help manage your resources.

2.3. Agent-Only Installation

JBoss ON provides agent-only packages to make it easier to deploy agents to multiple machines. The packages are considerably smaller than the full install package, so you don't have to copy a huge installer around to your machines if you only want to install the agent.

The agent-only installation is meant to be very quick and easy.

2.3.1. Agent-Only Install on Windows

To install a JON Agent on Windows using the agent-only installer, simply download the agent-only package for windows from the JBoss Customer Support Portal and run the .exe binary. Enter the necessary information so the agent can communicate with the JON Server and click OK to install.

Note

The values entered in the agent-only installer are not validated in any way before the agent is installed. They are simply put into the agent.properties configuration file so the agent can use them when it starts up. If the values need to be edited after the install, simply open

agent.properties in a text editor and scroll to the bottom of the file. Another thing to be aware of is

that changing the agent connection port from 2144 to another value does not change the port the agent actually listens on. It only changes the port the JON Server will use to contact the agent. This is useful if you have a different number port on a firewall between the server and agent mapped to port 2144 of your agent machine. To change the port the agent listens on, add a line like this to your agent.properties:

agent.listenPort = 2555

Start the agent by executing "jon-agent.exe start" from the agent installation directory.

2.3.2. Agent-Only Install on UNIX

To install a JON Agent on any UNIX platform using the only installer, simply download the agent-only package for the platform you wish to install on from the JBoss Customer Support Portal and unpack the .tgz to the location you wish to install to.

References

Related documents