Release Notes

JBoss Operations Network 3.0.1

for release information

Logo

Ella Deon Lackey

March 18, 2012

Abstract

These release notes contain important information about fixed bugs, known issues, and other technical notes available at the time that JBoss Operations Network 3.0.1 was released.
JBoss Operations Network 3.0.1 is a bug fix release which addresses numerous issues from JBoss ON 3.0.

1. Notable Changes in 3.0.1

While JBoss ON 3.0.1 is primarily a bug fix release, there have been some changes in JBoss ON functionality related to those bug fixes and that address recent security updates.

1.1. Improved Version and Package Management

Packages are uniquely identified in JBoss ON based on their version number Before JBoss ON 3.0.1, the method to calculate the package version ID number was a combination of the package name and the package version, where the package version could be derived from the package manifest or from a user-supplied value. However, this method of calculating the version could be inconsistent and could easily lead to collisions that prevented packages from being properly uploaded and deployed. Yet, the version number itself is critical to maintaining package data.
Starting in JBoss ON 3.0.1, there are two package version numbers:
  • A display version number, a user-friendly string that is used to identify the package in the UI and CLI but which does not have to be unique.
  • A unique internal version number. This string is a calculated SHA-256 checksum based on the package contents and, optionally, the specification and implementation versions given in the META-INF/MANIFEST.MF file.

Note

Existing packages are automatically updated to use the new version scheme. The agent re-discovers all of the content and then generates the appropriate version number based on the SHA-256 hash and the relevant information in the package's META-INF/MANIFEST.MF file.
A version number for the package looks like this:
SpecificationVersion(ImplementationVersion)[sha256=abcd1234]
If the META-INF/MANIFEST.MF file does not contain either the specification version or the implementation version, then only one is used. If neither exists, the SHA is used.

Important

For unexploded (archived) content, the checksum is recalculated with every package discovery scan and compared to the checksum in inventory.
For exploded WARs and EARs, the calculated SHA-256 checksum is added to the MANIFEST.MF file. This allows the agent to check the file during discovery scans to verify the version of the package quickly.
Manifest-Version: 1.0
Created-By: Apache Maven
RHQ-Sha256: 570f196c4a1025a717269d16d11d6f37
...
Because the content deployment process edits the META-INF/MANIFEST.MF file, the deployed content is not exactly identical to the content packages that were uploaded.
Versioning only matters to content knit with a resource, like EARs and WARs. Other types of content stored in content sources (like CLI scripts used for alerting) do not track versions. Content deployed in bundles handles versioning through the bundle definition, not the content system.

1.2. Changes to Agent Registration

When the JBoss ON agent starts up, it registers with the JBoss ON server. The JBoss ON server creates an entry based on the given agent name, IP address, and port number. The JBoss ON server also creates a randomly-generated string, a security token, which is also associated with the agent name and with the IP address and port number pair. The agent sends its security token to the server when it restarts as a form of pseudo-authentication.
Prior to JBoss ON 3.0.1, the server allowed an agent to re-register using the same agent name, from a different IP address and port, without the security token. An unapproved agent could use the name and identity of an approved agent. The JBoss ON server simply treated the new agent as if it were the original agent.
The JBoss ON server now verifies the agent identity through the security token before allowing registration changes:
  • An agent cannot re-register with an existing agent name without the corresponding security token.
  • An agent cannot re-register with an existing IP address/port combination without the corresponding security token.
The agent security token is persisted in the agent's Java preferences and remains even if the agent is restarted or uninstalled. The agent command-line options have been updated to help manage the security token in the agent preferences:
  • The --cleanconfig has been been changed so that it clears all agent configuration, except the security token. This allows the agent to be re-registered easily at a later time.
  • The --fullcleanconfig has been added to clean all configuration, including the security token.

1.3. New and Changed Remote API Methods

The ContentManagerRemote interface has been updated to accommodate the changes in how the content system handles version numbers. One method is deprecated (void deployPackages), and two new methods have been added (PackageVersion createPackageWithDisplayVersion and void deployPackagesWithNote).
The details of changes between 3.0.0 and 3.0.1 is available with the API at https://access.redhat.com/documentation/en-US/Red_Hat_JBoss_Operations_Network/3.1/html/API/index.html.

1.4. CLI Changes

Some improvements have been made to the way that the CLI works:
  • The CLI (in interactive mode) now properly accepts and interprets arguments with spaces.
  • The updateBackingContent method for now accepts a defined version number to use with the uploaded package.
Red Hat logoGithubRedditYoutubeTwitter

Learn

Try, buy, & sell

Communities

About Red Hat Documentation

We help Red Hat users innovate and achieve their goals with our products and services with content they can trust.

Making open source more inclusive

Red Hat is committed to replacing problematic language in our code, documentation, and web properties. For more details, see the Red Hat Blog.

About Red Hat

We deliver hardened solutions that make it easier for enterprises to work across platforms and environments, from the core datacenter to the network edge.

© 2024 Red Hat, Inc.