I am trying to learn how to create Integration Profile for OID. I want
to export stuff into a ldif-file that is going to be used by an agent.
How ever. I have created a profile and a mapping file and installed it
in Directory Integration and Provisioning Server Administration. I
have set it to enabled, and I have started somthing called the DIP
server. But when I check my profil under the status-tab it is allways
status NOT EXECUTED YET.
I have looked here:
http://www.oracle.com/technology/products/oid/oidhtml/sec_idm_training/html_masters/basics02.htm
But I can't find any help.
Any ideas??
/ Mattias
You may have to start the dip-server ODISRV (or an extra instance) with
configset=1
oidctl host=... connect=... server=odisrv instance=2 configset=1 start
Also check if oidmon is running.
To check your current configset that is running, use
oidctl host=... connect=... status
Shakespeare
I give the command:
# oidctl connect=mm server=odisrv instance=2 config=1
flags="port=3060" status
And the result shows that oidmon, oidldapd and odisrv are all
active. OIDREPLD is not configurated.
I also tested the sampe profile for LDIF-export. I created an entry
under dn: dc=mtldif02,dc=com as described in the mapping file
ldifexp.map.sample :
# Sample file for mapping LDIF files to OID
# This file is for importing data from a LDIF file to OID
# All the entries in the LDIF file are within the domain
'dc=mtldif02,dc=com'
# Attributes are mapped one to one
DomainRules
dc=mtldif02,dc=com:
AttributeRules
uid: : :person:uid
cn: : :person:cn
sn: : :person:sn
birthday: : :organizationalperson
mail: : :inetOrgperson
employeenumber: : :inetOrgperson
c: : :country
ssn: : :person
sex: : :person
title: : :organizationalperson
postaladdress: : :person
telephonenumber: : :person
l: : :locality
I made changes to my entry, but nothing was exported. Not even a file
created in the export directory. An status is allways NOT EXECUTED
YET. Note also that the comment in this file must be wrong, this is a
mapping file for OID to LDIF, not the other way around as stated in
the comment.
So, to sum up, I still cant get my synchornization profile to start
executing.
> I made changes to my entry, but nothing was exported. Not even a file
> created in the export directory. An status is allways NOT EXECUTED
> YET.
Did you bootstrap successfully? You do need a bootstrap before you
can run the server.
--
Regards,
Frank van Bortel
Top-posting in UseNet newsgroups is one way to shut me up
You might be right about dip-server not needed here, but I wonder how you
would have your export to start otherwise... I use dip for import only, so
you could be right here.
Dip server is not 'listening'. It's getting kicked off by oidmon every now
and then and starts to read the other directory to check for changes (using
the last change number).
BUt to see how it works, I just tried it. With dip-server on, and the
profile enabled (did you do that?) it fired after 60 seconds and fires every
minute.... so it does use odisrv.
If you look in OID manager, you hav to refresh your providers to see the
actual result (the screen does not update automatically)
And also important: you only get CHANGED entries in your LDIF, so if nothing
changes, no output! If you want the initial content, you'll have to
bootstrap your profile!
(dipassistant bs... etc)
Shakespeare
You can check your logfiles at oracle_home/ldap/odi/log/<profilename>.trc to
see what happened....
Shakespeare
dn: dc=tz
dc: tz
objectclass: top
objectclass: domain
dn: cn=Hans,dc=tz
cn: Hans
sn: Malmgren
objectclass: top
objectclass: person
objectclass: organizationalperson
telephonenumber: 1
Then I made a LDIF-file to change the telephonenumber:
dn: cn=Hans ,dc=tz
changetype: modify
replace: telephonenumber
telephonenumber: 15
Every time I run the change LDIF-file I also change the
telephonenumber to 16, 17, 18... and so on. I can see in the OID-
manager (in the entry management) that the telephonenumber changes
when I run the modifying LDIF-file.
I have an old installation of OID. I get this to work in the old
istallation on another machine. But I can't get it to work in in the
new one. So there must be something missing in how the servers are
configurated.
I have found out that the export LDIF-file must be deleted before any
new changes are expordet.
I think the DIP-server is necessary. I guess that it is the DIP-server
that "listen" for changes and trigger the export.
I don't think bootstraping is necessary for exporting to a LDIF-file.
At least it worked in the old server without bootstraping.
I have my profile set "enabled".
So I guess the key to success is to start the DIP-server in the right
way. This is my start up command:
oidctl connect=mm server=odisrv instance=1 config=1 flags="port=3060"
start
(mm = my tns name)
What about the parameters instace=1 and config=1 ?? What do they
refere to? In various documentation I have often seen this command
with the parameters
instance=2 config=1 flags="port=3060"
Why instance=2 ???
Also I have checked that I have a process running called oidmon.exe,
so I guess that the oidmon is running.
I made a few screen dumps:
http://www.freefarm.se/oid/
There are no files at all in:
C:\OraHome_1\ldap\odi\log
Any ideas?
Is telephone number an attribute in your export-mapping?
>
> I have an old installation of OID. I get this to work in the old
> istallation on another machine. But I can't get it to work in in the
> new one. So there must be something missing in how the servers are
> configurated.
>
> I have found out that the export LDIF-file must be deleted before any
> new changes are expordet.
That's correct, if this was not the case you would loose changes by
overwriting the previous file
>
> I think the DIP-server is necessary. I guess that it is the DIP-server
> that "listen" for changes and trigger the export.
>
> I don't think bootstraping is necessary for exporting to a LDIF-file.
> At least it worked in the old server without bootstraping.
Bootstrapping updates the last change number AND is a way to test your
profile: if you don't get output, there must be something wrong with your
profiles.
>
> I have my profile set "enabled".
>
> So I guess the key to success is to start the DIP-server in the right
> way. This is my start up command:
>
> oidctl connect=mm server=odisrv instance=1 config=1 flags="port=3060"
> start
>
> (mm = my tns name)
>
> What about the parameters instace=1 and config=1 ?? What do they
> refere to? In various documentation I have often seen this command
> with the parameters
> instance=2 config=1 flags="port=3060"
Instance is not important. You can run several instances of one server
(OIDLDAPD, ODISRV) and they must have different instance numbers per server
(so instance=1 is allowed on ldapd and odisrv at the same time).
Config is important. Profiles you create run in a certain configset in OID.
You can check in your OID manager what the config number is. For these
profiles, normally it would be 1.
>
> Why instance=2 ???
Because you MAY already have an instance=1, running with configset 0 (a
hidden, default configset, used e.g. for portal account caching) If not use
instance=1.
>
> Also I have checked that I have a process running called oidmon.exe,
> so I guess that the oidmon is running.
>
> I made a few screen dumps:
> http://www.freefarm.se/oid/
And they show the cause! Your server is running at port 389, not 3060.. So
leave out the port parameter.
For clarity: could you also show the 'execution' tab?
>
> There are no files at all in:
> C:\OraHome_1\ldap\odi\log
That is a sign it's not working, you should at least get trace files there.
(.TRC)
>
> Any ideas?
Yes!
Shakepeare
One more idea: your last change number in your profile is higher than the
lcn in oid. So it won't export anything until you reach the lacn of your
profile. Bootstrapping will correct this (or just set it to 0).
Shakespeare
When I changed my start-command for the DIP-server like this:
oidctl connect=mm server=odisrv instance=2 config=1 start
and omitted the portnumer (so it defaulted to 389) evrything worked
fine!
(I also had to stop the previously wrong started DIP-servers using a
command similar to this:
oidctl connect=mm server=odisrv instance=1 config=1 stop
Also I reinstalled my sync profile, but I am not sure if that was
realy necessary)
I will add a few notes to the URL http://www.freefarm.se/oid/ so it
includes the whole example I have made. Just in case if others may be
interested in a simple example to get started with OID synchronization
profiles using LDIF-files.
Many thanks for helping me with this!!
/ Mattias