Friday, June 29, 2007

Get the routing id for the OPMN

In order to get the routing ID that is used within OPMN issue the following command:

opmnctl status -app -l

Applications in Instance: as1013

application type: OC4J
-----+------------+---------+---------+----------+-------------+--------
pid | name | state | rtid | routable | appctx | parent
-----+------------+---------+---------+----------+-------------+--------
3184 | system | started | g_rt_id | true | |
3184 | default | started | g_rt_id | true |/.rmiTunnel| system
3184 | DaonEngine | started | g_rt_id | true | | default
3184 | ascontrol | stopped | g_rt_id | true | |
2852 | system | started | g_rt_id | true | |
2852 | default | started | g_rt_id | true | /.rmiTunnel | system
2852 | bc4j | started | g_rt_id | true | |
2852 | ascontrol | started | g_rt_id | true | | system

The rtid is the routing id. In the above example the routing id is the same for the complete environment.

WebCenter Wiki with 3rd party LDAP

Using a WebCenter Wiki with a 3rd party LDAP is possible but you have to make sure that the following two groups are present and populated in the LDAP:

  • users
  • oc4j-administrators
Also the group search definition must be on Nested.

The next picture shows the basic values for the 3rd party LDAP:

Thursday, June 28, 2007

Metalink statuses

Status Description
10 Description Phase
11 Code Bug (Response/Resolution)
12 To External (User Group) Review
13 Doc Bug (Response/Resolution)
14 Bug Assigned to Solution Partner
15 To Internal (Oracle) Review
16 Support bug screening
19 Approved for User Group Voting
20 To Requestor, Need More Info
21 Cost Required, To Development
22 Approved for Future Release
23 Scheduled for Future Release
30 Additional Information Requested
31 Could Not Reproduce. To Filer
32 Not a Bug. To Filer
33 Suspended, Req'd Info not Avail
35 To Filer for Review
36 Duplicate Bug. To Filer
37 To Filer for Review/Merge Required
39 Approved, waiting for codeline to open
40 Waiting for the base bug fix
43 Product/Platform Obsolete, to Filer
44 Not Feasible to fix, to Filer
45 Vendor OS Problem, to Filer
51 Support approved backport - to Dev
52 Pending approval by PL
53 Backport/Patchset Req Rejected
60 CM: Awaiting Promote
66 CM: Awaiting Deployment
70 Closed, data fix, cause - user error
71 Closed, data fix, cause - data import
72 Closed, data fix, cause - code error
73 Closed, data fix, cause - unknown
74 Closed, Verified by QA
75 Closed, code fix, not verified
80 Development to Q/A
81 Q/A to Dev/Patch or Workaround Avble
82 Q/A to Enhancement Evaluation
83 Closed, Product/Platform Obsolete
84 Closed, not feasible to fix
87 Fix verified/Merge Required
89 Tech Writer to Q/A
90 Closed, Verified by Filer
91 Closed, Could Not Reproduce
92 Closed, Not a Bug
93 Closed, Not Verified by Filer
94 Closed, Duplicate Enhancement
95 Closed, Vendor OS Problem
96 Closed, Duplicate Bug
97 Suggestion Rejected
98 Suggestion Implemented
99 Closed, Documentation Bug Fixed

OPMN log and debug configuration

Another gem I found when dealing with a problem. The following piece of code shows the configuration to modify the opmn debug level:

< xmlns="http://www.oracle.com/ias-instance">

< path="$ORACLE_HOME\opmn\logs\opmn.log" comp="internal;ons;pm" size="1500000">

< path="$ORACLE_HOME\opmn\logs\opmn.dbg" comp="internal;ons;pm" size="1500000">

...

< /opmn >


Now I need to find out which components exist besides internal, ons and pm.

Monday, June 25, 2007

I had run the chgiphost.bat on a Windows AS 10.1.3.0.0. The reason for this was the fact that the Windows machine was created from a Ghost image.
But after the script has been run successfully I saw that the hostname was still the same in the Application Server Control.

So I created a SR with Support. And today I received a very good answer. Normally Support gives you a statement that it does not work and that's that. But see for yourself what this friendly analyst did say:

The dcmctl setInstanceName is available from 9.0.4 onwards. This will change the instance name in the DCM Repository.
After this you may have to change the targets.xml file with the new instance name. Please note that the above command is not supported as this is not documented."


Ok, very good!
I will make sure that this guy gets an excellent review.

However there is now cmctl in 10.1.3.0.0 and also no targets.xml :-(

But actually the idea was clear to me.

I went to have a look at the opmn.xml file.

When I changed
< id="as1013.OLDHOSTNAME.mymachine.local" name="as1013.OLDHOSTNAME.mymachine.local">

to

< id="as1013.NEWHOSTNAME.mymachine.local" name="as1013.NEWHOSTNAME.mymachine.local">

everything worked as I expected it to do.


Scripts for RAC backup

Just want to store them here for myself, but if others use them - well feel free (and drop me a note).

The script for the Cluster Registry

#!/bin/ksh

# Author: Andreas Chatziantoniou, Accenture Technology Solutions
# Date : 25-JUN-2007
#
# Purpose:
# Create a backup of the Oracle Cluster Registry regularly
#
# Usage:
# ./backup_oracle_crs.sh
#
# This script should be used from the cron in regular intervals
#
# Results:
# The backupfile of the Oracle Cluster Registry will be created in the /tmp
# directory. The filename will contain the hostname and the time that
# the backup was created.

OCRBCK=/tmp/ocrbackup.`hostname`.`date +"%Y%m%d%H%M"`
/opt/oracle/crs/bin/ocrconfig -export $OCRBCK

And here is the script for the Voting Disk
#!/bin/ksh

# Author: Andreas Chatziantoniou, Accenture Technology Solutions
# Date : 25-JUN-2007
#
# Purpose:
# Create a backup of the Oracle Voting Disk regularly
#
# Usage:
# ./backup_oracle_voting_disk.sh
#
# This script should be used from the cron in regular intervals
#
# Results:
# The backupfile of the Oracle Voting Disk will be created in the /tmp
# directory. The filename will contain the hostname and the time that the
# backup was created.
#
# TODO:
# If you have more than one voting disk make sure that each is copied.

OVDBCK=/tmp/ovdbackup.`hostname`.`date +"%Y%m%d%H%M"`
dd if=/dev/rhdiskpower2 of=$OVDBCK

Tuesday, June 19, 2007

CRS information was lost

Due to a crash a part of the CRS information was lost. Until now I have not found out how this could happen in the first place.
The effects were strange. The instances would not start and there was no indication of an error in the alert_log.

Doing some research in the CRS revealed that the ora.ORCL.db was gone while the ora.ORACL.oracl1.inst was still there.

Creating a new file in the CRS profiles and using crs_register did do the trick.

Such a file should look like this:

NAME=ora.ORCL.db
TYPE=application
ACTION_SCRIPT=/opt/oracle/crs/bin/racgwrap
PLACEMENT=balanced
CHECK_INTERVAL=600
RESTART_ATTEMPTS=1
FAILOVER_DELAY=0
FAILURE_INTERVAL=60
FAILURE_THRESHOLD=1
AUTO_START=1
SCRIPT_TIMEOUT=600
ACTIVE_PLACEMENT=0
OPTIONAL_RESOURCES=
REQUIRED_RESOURCES=
RESTART_ATTEMPTS=1
STOP_TIMEOUT=0
UPTIME_THRESHOLD=7d
HOSTING_MEMBERS=
USR_ORA_ALERT_NAME=
USR_ORA_CHECK_TIMEOUT=0
USR_ORA_CONNECT_STR=/ as sysdba
USR_ORA_DEBUG=0
USR_ORA_DISCONNECT=false
USR_ORA_FLAGS=
USR_ORA_IF=
USR_ORA_INST_NOT_SHUTDOWN=
USR_ORA_LANG=
USR_ORA_NETMASK=
USR_ORA_OPEN_MODE=
USR_ORA_OPI=false
USR_ORA_PFILE=
USR_ORA_PRECONNECT=none
USR_ORA_SRV=
USR_ORA_START_TIMEOUT=0
USR_ORA_STOP_MODE=immediate
USR_ORA_STOP_TIMEOUT=0
USR_ORA_VIP=

Thursday, June 14, 2007

Adding users to the system-jazn-data.xml

In another posting I described how to edit the system-jazn-data.xml in order to create a user.

To my astonishment there seems to be a possibility to create these users using the Application Server Control.

Here are the steps:

In the ASC cluster topology click on the OC4J that contains the javasso.

Click on Applications

Select javasso

Click on the module javasso-web

Click on Security provider

Select Realms

In the realm jazn.com click on the number in the users column.

In this screen you can create users!

Adding the license for the Oracle Webcenter Discussions

It is obvious again that new products that Oracle offers are not always that integrated.

Take for example the Oracle Webcenter Discussions. Although it is from Jives it seems to be fully licensed with the Webcenter.

However the license needs to be provided before the setup can be completed.

Luckily the license is stored in the file jive.license - so just copy and paste it into the webpage.

Thursday, June 07, 2007

Add a user to the JavaSSO

In AS 10.1.3.x Oracle came up with the JavaSSO. Seems to be (from a high level perspective) a poor man's version of the SSO from the AS 10.1.2.x.

Having said this it strikes me how little documentation is available for this feature.

But we're explorers, aren't we?

JavaSSO is based on a file based security provider. The two main files are:
- jazn.xml
- system-jazn-data.xml

Both exist in the $OH/j2ee/ directory. This means that if you have more than one OC4J instance you need to edit both.

The most basic task is to add a user. You can - of course try to do this by editing the xml files, but luckily Oracle provides the jazn.jar tool.

Make sure that you use the correct java executable and start it:

java -jar jazn.jar -adduser jazn.com andreas welcome1

You will be asked for the AbstractLoginModule username (oc4jadmin) and its password.

Now we have a user but usually this has to be added to a role before it can do something useful:

java -jar jazn.jar -grantrole users jazn.com andreas

Now the user is added and we will prevent the ugly errors - such as:



Wednesday, June 06, 2007

Application Server Control just gets better

Deployment of an ear file with the Application Server Control usually required to have the ear file on your local host.
Very often this is not the case as your Application Server machine will be humming in the Data Center while you sit comfortable behind your PC or laptop.

But I just found out that the ASC offers a new functionality: specify the location on the host where the ASC is running.

The following screen shot shows this - while I was deploying the Wiki of the Oracle WebCenter:



It even gets better - during the deployment instead of the small clock the messages are displayed: