Tel:  +44 (0)2920 02 04 05
e-Mail: info@planitcpm.com

IBM Cognos Technical Blog

August 23, 2011

Say No to multiple Admin Servers

Recently a customer requested that we review their self-installed IBM Cognos Planning environment due to poor performance and regular job failures.  There were a number of installation, configuration and sizing issues with the environment (which was on a vastly underpowered VMware platform), but one of the key recommendations that we made was to disable the Planning Administration Console Service on all but one of the Application Servers.

Additional CPU’s were added, but beyond that most of our recommendations are yet to be implemented.  In the meantime the environment continues to perform poorly and job failures are almost as frequent.

One of the latest issues that has been reported to us is that during the copy-load-prepare process, once you have completed the “copy” stage and switch to the “load” tab they are finding that different cubes are displayed each time.

  • Copy five files, switch to the load tab and find that cubes “A, C, D” show.
  • Try again with the same five files and find that cubes “D and E” show.
This is a typical symptom of having multiple Administration Servers configured in the environment, what is happening here is that a different Admin Server is processing each of the file copies, then when switching to the “load” tab just one of the servers is being used and so only a selection of the copied files are being detected.
The fix for this is a simple one, disable the Planning Administration Console Service on all but one of the Application Servers in your Planning server environment.

August 4, 2011

Running an IBM Cognos Analyst Macro from a Contributor Macro

Filed under: administrator,Cognos Planning,Contributor,IBM Cognos,IBM Cognos 8,Macros — Blog Admin @ 10:41 am

The usual way to run an IBM Cognos Analyst macro from within a Contributor macro is to use the “Execute Analyst Macro” step, however for some customers this seems to fail without logging any good reasons.  The error logging is minimal, though you will typically find errors such as:

Unable to execute macro 'ApplicationName.MacroName'.
The return code was 1107.

One alternative I find to work more robustly is to use the “Execute Command Line” macro step, we can use this step to launch an Analyst Batch Utility job just like in the “good old days”.  This method seems to be a bit more reliable and also logs a little bit more detail.

To maximise the success rate the wizard to create the batch job should be  run on the Admin Server.  The wizard creates two files in the c:\Program Files\cognos\c8\bin (or equivalent IBM Cognos 10 location) and are called:

  • bujobs.bin
  • bulibmap.lut
If the wizard is run on a machine other than the Admin Server they can be copied to the relevant location on the Admin Server to allow the Batch Job to be called by the macro.

To set up the Batch Utility job, open Analyst and to to the “Tools” menu.  Near the bottom you can select the option “Batch Utility Wizard”.

The Wizard Welcome Page will be shown, click “Next”.

Select “Create a new batch job”.

On the “Select a macro” screen, choose your Library and Macro from the drop-down menus and then give a descriptive name for this batch job.

You can also enter the name of the Namespace you want the batch-job to use.

Finally set up a log file location so you can review the Batch Job’s status.

The completion screen gives you the options to run the job right away or to print a summary of the job.

Click “Finish” to exit the Wizard.

The command line for the Batch Utility job will be copied to the clipboard automatically, this will be useful as we can use this when we set up the Contributor Macro to call it.

Open the Contributor Administration Console and navigate to “Macros” in the tree on the left.

Then click “New” to create a new macro.

You will be prompted to enter a name for the macro.

Then you will be given a list of macro step types.  Select the “Execute Command Line” macro step.

You will need to name the macro step, a descriptive name is best here, some people find it useful to prefix the step names with a code to indicate what type of macro step it is for example “ECL” for Execute Command Line, or “EAL” for Execute Administration Link”.

Place your cursor into the “Command to execute” text box and use CTRL-V on the keyboard to paste in the command line that was generated by the Batch Utility Wizard.

Finally you can chose to either enter a success code, typically success is determined by a code of “0″ (Zero).

With the macro created you can now execute this and check that it works as expected.

 

March 19, 2010

IBM Cognos 8 on Windows 2008 – Ouch.

Filed under: Configuration,IBM Cognos 8,IIS 7,Windows 2008 — Blog Admin @ 8:22 pm

After just two years it seems the IT world is beginning to wake up to Windows 2008 Server, and I suppose its a good thing that its taken this long, particularly for Cognos users who have had to wait until version 8.4 to get support on the OS.

Microsoft seem to have taken note of all those who complained that IIS security is too relaxed out of the box and as a result seem to have set it up so that in IIS7, everything is disabled by default.
I would say this is a good thing, because it is.  Except if you are the poor Technical Consultant who has to keep installing on this version.  Because it is not straight forward.

Like most things, the more you do it, the easier it becomes, but gone it seems are the days where you simply create a bunch of Virtual Directories and enable “All Unknown ISAPI Extensions”, or if you are feeling a little more security conscious then set up the specific .cgi or dll required to get Cognos going.

So what I can offer is a list of steps that can be used to get the IBM Cognos 8 BI or Planning suite up and running on Windows 2008 with IIS 7.  What I am still trying to work out is if I am doing this for the benefit of anyone who finds this post, or if its just so I know where to find the instructions the next time I am scratching my head over why its not working the way I expect it to.

Steps:

  1. Open IIS Manager
  2. In the left Connections pane, open the server level, open Sites then right-click on Default Website, and click “Add Virtual Directory”
  3. Enter “cognos8″ for the alias and enter the path to the x:\Program Files\Cognos\c8\webcontent directory in Physical Path and then click on OK.
  4. Right click on the cognos8 virtual directory and click “Add Virtual Directory” (this will create a sub-directory to cognos8)
  5. Input “cgi-bin” for the Alias and enter the path to x:\Program Files\Cognos\c8\cgi-bin directory in Physical Path. Click OK.
  6. Right click on the cognos8 virtual directory and again click “Add Virtual Directory”
  7. Enter “help” for the Alias and enter the path to the x:\Program Files\Cognos\c8\webcontent\documentation directory in Physical Path. Click OK.  You will now have the basic structure we are used to for Cognos 8
  8. In the left Connections pane, select the server node, then double-click ISAPI and CGI Restrictions in the right hand side.
  9. In the Actions section to the right, click Add, enter the path to either cognosisapi.dll or cognos.cgi depending on which you will use (it is recommended to use cognosisapi.dll for IIS installations as it provides better performance) ensure you have ticked the “Allow extension path to execute” box, then click OK.
  10. In the left Connections pane, select the cgi-bin virtual directory, then double-click Handler Mappings in the right pane.
  11. In the Actions pane click Add Module Mapping, then enter either “cognos.cgi” or “cognosisapi.dll” for the Request Path, choose either CGIModule or ISAPIModule for the Module, give it an identifiable name like “CGI-cognos” then click OK.
  12. In order for Cognos Administration to function properly, the directive added to the IIS configuration file by step 11 has to be edited manually. Depending on how IIS is set up, this will have been written either to C:\Windows\System32\inetsrv\config\applicationhost.config or to “<cognos_home>/c8/cgi-bin/web.config. Check those files for the following entry:<add modules=”CgiModule” name=”CGI-cognos” path=”*.cgi” resourcetype=”Unspecified” />

    add allowPathInfo=”true” to it like this:

    <add name=”CGI-cognos” path=”*.cgi” verb=”*” modules=”CgiModule” resourceType=”Unspecified” allowPathInfo=”true” />

  13. Optionally, if appropriate, in addition to the above steps, when running IIS on a Windows 2008 Server 64-bit installation, you will need to configure the default application pool for the Cognos cgi-bin directory that permits 32-bit applications to execute.Right hand click on “Default Application Pool” and select “Advanced Settings”, when the window opens up, change the property for “Enable 32-bit Applications” to “True”.

So as you can see, its hardly rocket science, but then it is a hell of a lot more hard work than it used to be under Windows 2003.