The iSeries blog - A Search400.com blog

The iSeries blog:

 

A Search400.com blog


The latest iSeries opinions on systems management, programming, Web development, recovery, security and more.

Necessity leads to iSeries Watchdog development

Necessity is the mother of invention. And so, many System i shops will find themselves inventing new applications to perform necessary business functions. This practice is not limited to end-users, but includes vendors using the AS400 to develop applications and provide support for businesses running i. First Option Inc. is one such shop. In “spare time,” the company developed a java-based monitoring application that collects key health indicators of an AS400. Released in April 2008, the iSeries Watchdog application’s evolution and development story is shared here in a Q&A with First Option president, Paul Fuller.

Could you describe the specific circumstances of the internal problem that your company was having that led to the development of the Watchdog program?

We have service level agreements (SLAs) that require our iSeries box to be up 24 x 7 x 365, and we need to ensure that if there is a problem we address it immediately. There are financial penalties if we do not resolve problems in a specific period of time. Prior to Watchdog, the systems were checked manually. This presented two problems: 1) Operators were involved in the manual checking rather than other billable activities — resulting in reduced revenue. 2) The manual method was not scalable (i.e., more boxes mean more people). We looked at the existing packages on the market and they were too expensive. We had a very basic need and we did not want to purchase additional products in order to make the monitoring software run. We are a software development shop, so why not build it ourselves!

Why Java? Was this the immediate solution, or did it just happen to work well? Did you consider other options?

Java was the immediate solution for the front end interface. We had in-house expertise and it is platform independent. Using Java also allowed us to work with open source tools. We had not worked with Java Persistence API (JPA), Spring or LDAP on the iSeries but had been reading a lot about them in the Trades. Since we are a Java/RPG shop, we wanted to try out some new technologies and frameworks. So, this was a perfect opportunity to solve an internal need and further develop our consulting skill set.

For the back end, the programs that gather key health indicators are RPG service programs. In terms of data access, we let the iSeries do what it does best, crunch data. Additionally, the type of information we needed to gather was iSeries-specific so it did not make a lot of sense to use Java because it was already tied to the platform.

How long did it take to develop the Watchdog program?

We started in November 2007 of last year. The application was developed on nights and weekends so we did not finish it until March 2008. Had we been working on it full-time, it probably would have taken a couple of months.

What problems did you encounter along the way? (Were there work-arounds or problems that you had to deal with?)

We did have a few problems. We wanted to use a tool to generate JPA entities from SQL tables. The tool needed to run on the latest version of Eclipse so we had to abandon WebSphere development studio client (WDSC) and go with Eclipse in order to use the tool. We also used the IBM Interrogated application server released in January of 2008. There was not a lot of documentation and/or knowledge regarding this product. So, we had to engage IBM in order to resolve some of these problems. The LDAP web based interface was not available on WebSphere 6.1 so we had to find an alternate tool to create schemas and enter test data.

There are similar products available — why didn’t you invest in one of the competitor’s products instead of spending the time and energy developing your own?

There are definitely some very good products on the market that have some of the same functionality. As I mentioned above, we thought the products were too expensive and did not like the front end. The interface to the user was either green screen or a very difficult to read dashboard. Also, you had to purchase the software that had a traditional price based model — the larger the model and processing group, the more expensive the software. We would have had to purchase software maintenance in addition to the upfront cost. Some of the products also required purchasing additional third-party products in order from them to work.

What size company is Watchdog preferable for?

We are providing this software as a service (SaaS). We will establish a secured connection to the customer, install a client on their iSeries which will gather the monitoring data and configure the alert system as well as provide the Web Services to send the data to a First Option Inc. server. We charge a monthly fee that includes rental of the client software and the graphical front end. The rental fee is not based on the iSeries model or processor group and you do not have to buy software maintenance.

We think this will appeal to small- to medium-sized businesses that require a solid monitoring system for a price that makes business sense. We can also bundle a remote monitoring service that will respond and resolve problems on the iSeries. This allows small- to medium-sized businesses to focus on their core business not running a System Operations Group.

I started in the software development business writing code on a S36. The most overwhelming change over the past 20 years is the number of options available to develop and deploy software. From the creation of the development environment to the deployment of the application on a production server, there are a number of products to install and integrate. It’s easy to get lost in the technology and lose focus on the business need. It is extremely important to engage an experienced development team who understands that the requirement is always a superior software product to support your business need.

System i system management: Where to start?

IBM often touts System i as an easy-to-manage platform, and for good reason. But still, IT gets more complex, and complexity can breed chaos without some level of control.

MC Press Online, which just recently redesigned its site, has a good article about systems management of System i. The article is by Andy Kowalsky, a senior product manager at Vision Solutions, so those of you who aren’t crazy about Vision’s customer service may take it with a grain of salt. Still, the article goes into a significant amount of detail on System i systems management, and it’s worth a look. Here’s an overview from the article:

The value of optimization and tighter management of System i is clear, but where should you begin? Start with the tasks that will deliver the utmost impact, with the least effort. This article examines the following five areas that typically provide the greatest benefits:

  • Compression
  • Physical file reorganization
  • QSYS and IFS object clean-up
  • Logical file optimization
  • Data, CPU, and I/O usage monitoring

Database automation software boasts minimal configuration

In a recent conversation with software provider GridApp about the release of the latest version of GridApp’s flagship database automation software, Clarity 4.0, CEO Rob Gardos and Chief Scientist Matthew Zito described their product as “out-of-the-box.” But does anyone really believe that there is such thing as a true out of the box tool? As the briefing went on, it became clear that GridApp is getting closer to such a deployment with their online model-based best practices configuration.

Essentially, admins must create profiles (models) of their existing configuration and when Clarity runs, it lets you know what isn’t set up correctly according to their online best practices support, which you can then correct. And that’s it. Your database management is automated. Of course, I’m simplifying, but the point remains that although System i admins do not need to create and maintain any new scripts (thus, the out-of-the-box tagline), they still need to do some system modification.

Gardos and Zito said that Clarity is for organization that need to manage a minimum of 50 databases and that the product is intended for a enterprise-level organizations. But they point out that it’s not uncommon and it doesn’t take long for businesses to reach the 1000 database threshold.Clarity is cross-platform software, meaning that it can be used on Windows, Linux, Solaris, System i, pretty much anything. There are a few systems that aren’t yet fully functional, though. Support for zLinux isnt’ ready . . . yet.

If you use Clarity or any other database automation software, we’d like to know about it. You can always post comments to this blog or send me an email. We’d be interested to know your experience with automation or any other systems management tools and strategies.

IBM continues to target SMBs, this time with Rational and Tivoli

Big Blue wants its smaller companies to have (and pay for) the same tools that it offers to its larger companies, so it recently announced new Rational and Tivoli software for SMBs.

There have been past attempts by IBM to do this sort of thing, but the major complaint was that the smaller version of the software was just a watered-down version of the original with fewer features and less pop. More appealing would be a version that catered specifically to the needs of the smaller market. IBM says the new software does that, but that remains to be seen.

IBM has built a special site just to sell this small-market software, which includes development and management software that has room to grow as a small business grows.

iSeries user accountability help from Search400.com reader

After reading Establishing user accountability in AS400, the iSeries security expert response from Carol Woodbury, one reader sent us this comment to round out her answer. Thanks, Tom!


Especially with QSECOFR, it’s difficult to guarantee full accountability. Whatever QSECOFR can put in place, QSECOFR can remove. There are potential items that can help though.

For interactive work, for example, a routing program might intercept the job and prompt for an individual’s identification. This might consist of a user/password prompt that could be tested against actual user/password via perhaps the Get Profile Handle (QSYGETPH) API, followed by Release Profile Handle (QSYRLSPH) API if successful.

The routing program might continue by setting job logging levels or various audit attributes before transferring control to QSYS/QCMD (or your own request-processing program). Before transferring control, it might send scope messages to ensure that end-of-job logging also occurred or set condition handlers for similar purposes.

None of that *guarantees* anything. But it can help when an auditor asks what’s been done.

System i and the green skeptic

One of the claims made by IBM and System i users is that it is more is energy efficient per workload than the equivalent computing power of scaled-out x86 boxes. Writing in the context of mainframes, immediate past president of the IBM user group Share, Robert Rosen, says that scale-out is horrible for energy efficiency because utilization is so low. Of course, the System i isn’t a mainframe, but does the utilization logic apply? Is looking at scaled-out clusters and the System i (or mainframe for that matter) in terms of energy efficiency an apples-to-apples comparison?

The issue of power efficiency and the System i was taken up recently by Chris Maxcer in the System i Network. He wonders how concerned a System i shop needs to be about their environmental contributions, because energy-saving strategies such as virtualization via LPAR allocation or proprietary software, is such a prominent part of the System i architecture.

Furthermore, if the System i is so efficient (and if you have the data that says it is, we’d love to see it), does it matter that IBM is investing in efforts like Project Green or The Green Grid? Sure, IBM has their x-series, blades and other products that could use some greening up in terms of energy efficiency, but what does it mean for System i users?

Speaking of those initiatives, does anyone really believe that IBM’s endeavors are environmentally altruistic? Or do most people recognize that it’s about the economics of power and the electricity bill that pops up on the CIO’s or CFO’s desk every month? One way to assess the integrity of these initiatives is to look at Gartner’s recent analysis of The Green Grid’s work. The consortium’s membership is heavy on vendors and light on end-user representation, meaning that the motives could point to self-interest. In other words, under the rubric of environmentally responsible green computing, who’s to say that a group of manufacturers, including System i creators IBM, aren’t just offering products that they deem energy efficient without the accountability of user feedback?

In all fairness, IBM did recently offer the new Power6 processor, which comes a premium price. The chip is twice as fast as the previous generation using almost no more energy. That is putting your R&D where your mouth is, isn’t it? The corporate skeptic in me, though, looks at the price and questions whether IBM isn’t just profiteering from the green computing craze. It’s hard to blame them, though. They are a business after all. Who says being green isn’t profitable?

Setting the SISGID permission bit ON

I’ve always been unhappy with how the default owner of an object in the IFS is determined.

When a new object is created the ownership is, by default,  the creating user’s profile name.

When objects are shared amoung a group of profiles (Group Profile Membership), this can lead to problems, especially if someone in the group has to delete an object created by another group member.

I have learned that if a directory object has the S_ISGID permission bit set ON, then whenever a new object is created in that directory the owner of the object will be the same as the directory’s PRIMARY GROUP OWNER.

The S_ISGID permission bit can be set on a couple of different ways.

You can use the CHGATR command… For example:

 CHGATR OBJ('/PRDCIS/INBOUND') ATR(*SETGID) VALUE(*YES)

or, via the Properties/Security tab within iSeries Navigator:

propsecurity.jpg

Kenneth

i5/OS Server Names

Have you ever wondered what all the server jobs running on your server do?

IBM has put together a great reference page describing them…

http://publib.boulder.ibm.com/iseries/v5r2/ic2924/info/rzaks/rzaksserverjobcheattable.xml

Take a look…

Kenneth 

SOA insights from CIOs and CTOs

Is SOA on the top of your priority list?  You may have heard that “Almost everything you once knew about business computing has changed with SOA.” According to insights from CIOs and CTOs collected by the Object Management Group’s (OMG) SOA Consortium.  

Monitoring for *Escape messages in AJS (Advanced Job Scheduler)

A lot of System Administrators utilize BRMS and IBM’s Advanced Job Scheduler to backup thier systems.  

In the past, one of the major drawbacks to the AJS was the fact that you couldn’t directly monitor for *Escape messages within the AJS command definitions. You had to create a CLP shell in order to do this.

Well… I don’t know when this changed, but I was looking through the AJS documentation the other day and stumbled across this:

Monitor for messages with Advanced Job Scheduler

Add message identifiers to any command within the command list of a job to monitor messages.

Each command in the command list of a job can have message identifiers that will be used for monitoring. When the job runs and an error message is issued that matches one of the messages entered for the selected command, the job logs the error but continues processing with the next command in the list.

If zeros are specified in either two or all four of the rightmost positions, such as ppmm00, a generic message identifier is specified. For example, if CPF0000 is specified, all the CPF messages are monitored.

To add message identifiers to a command, follow these steps:

  1. Open Work Management from your iSeries™ Navigator window.
  2. Right-click Advanced Job Scheduler.
  3. Click Scheduled Jobs to list jobs.
  4. Right-click the scheduled job and click Properties.
  5. Select the command from the list and click Properties.
  6. Click Messages.
  7. Enter the message identifiers to monitor and click Add.

This feature is not available via the Green Screen interface to AJS. That is why I didn’t run into this a long time ago! One more reason to start using the iSeries navigator GUI interface!

Check it out…

 Kenneth