Session # BP201 – Assemble 'n Go: Integrate Data and ...Domino Directory - need to update IBM Connections Domino Directory - need to update LotusLive Other uses with Notes databases
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Session # BP201 – Assemble 'n Go: Integrate Data and Directories with Tivoli Directory Integrator (#TDI)Marie Scott | Director, E-mail Services | Virginia Commonwealth University (@marie_scott)Thomas Duff | Developer | Cambia Health(@duffbert)
What Is Tivoli Directory Integrator?■ Helps organizations build an authoritative data infrastructure, enabling consistent data across
multiple identity or generic data resources.■ Transforms, moves and synchronizes generic and identity data residing in heterogeneous
directories, databases, files, collaborative systems and applications, with real-time automated updates to the authoritative data source
■ Enhances the security, accuracy and integrity of generic and user identity data, while facilitating data migration, transformation to other file formats, and synchronization between two or more systems
■ Provides a simplified interface to develop point-to-point integration; ability to visually step through data processed by an AssemblyLine; providing Tivoli Directory Integrator as a service using the Representational State Transfer interface
■ Provides an intuitive graphical user interface for development, deployment and maintenance of synchronization rules, as well as a scalable, Web-based operations monitoring administrative console
■ Provides an open synchronization architecture that supports multivendor IT infrastructures with ease of use, ease of deployment, and rapid time to value, while flexibly scaling from small to very large deployments
“Tivoli Directory Integrator (TDI) is a graphical integration toolkit for accessing and detecting changes in practically any type of system, data store, protocol, or API. It also lets you transform, filter, and validate this data before driving it to the output targets of your choosing.”
Source: Redpaper IBM Lotus Domino Integration Using IBM Tivoli Directory Integrator
● Use for migration of data between IBM Lotus® Domino® and other data sources
● Use for integration and synchronization of data and directories between Domino and other data sources, such as Microsoft® Active Directory®
Possibilities■ Domino Directory - need to update from corporate LDAP directory (or Active
Directory)■ Domino Directory - need to update from Corporate HR directory■ Domino app - need to keep synched with Oracle database■ Domino app - need to update with xml file downloaded from app each night on
schedule■ Domino Directory - need to update IBM Connections■ Domino Directory - need to update LotusLive■ Other uses with Notes databases (we think developers might like)
─Connect to Microsoft SQL Server® database (or other relational database) to update Domino web page or database (scheduled or event driven)
─Notes db to Notes database (one time event)─SAP or Peoplesoft connectors─Output Notes to XML with data scrubbing
TDI Definitions And Concepts: Part 1■ AssemblyLine – just like a factory assembly line!
─ TDI uses AssemblyLines to push, pull, move, transform or sync data─Can have multiple AssemblyLines running at same time
■ Data Source – data system or group of data objects
■ Connector – Device used to connect Data Sources to AssemblyLines─Set up authentication─Set up attribute mapping─Connect to services like LDAP, AD, JDBC, Domino─Batch or event-driven─You can write your own
TDI Definitions And Concepts: Part 3■ Connector Modes
─Iterator mode: iterate thru each entry, reads values of attributes, provides values of attributes to AssemblyLine
─Lookup mode: used to join data from different sources─AddOnly mode: add new data entries to a data source─Update mode: add or modify data in a data source─Delete mode: delete data from a data source─Delta mode: used to track incremental modifications to
You Might See This...This seems to be quite common on install, even when I think I have everything “cleaned up”. So long as you're not upgrading, you can ignore it.
Installing Everything (Disk Space Is Cheap!)A true server installation would leave out Javadocs, examples, and IEHS. I'm installing here so that I have access to everything locally.
Choose Your Solutions Directory...You will have a chance to change this when you start up TDI. Your AssemblyLines and jobs will be stored in this directory.
If You Want To Have Console Start At Bootup...This would be useful if you were installing this on a server and wanted TDI to start up automatically on server startup.
If All Goes Well, You're Good To Go!Since we're going directly into testing to see if TDI starts up, the Start the Configuration Editor option can remain selected.
Starting Up TDI & Selecting Solution DirectoryThis is where you can change your solution directory, aka the “Workspace”. This can be useful if you want to have separate workspaces for different customers or jobs.
And We're There!If all goes well, this is the screen we'll first see. Once you select the Go to Workbench option, you'll open up to that screen when you start up in subsequent sessions.
Job #1 After Install... Install Fix Packs!http://www.ibm.com/support/fixcentral/
As I learned, admins get really peeved if you don't do this. Fix Central is very easy to navigate, and should be a “must visit” site for the IBM software that you run and maintain.
And To Connect To Domino...In order to connect to IBM Lotus Domino with TDI, you will need to copy the Notes.jar file from your IBM Lotus Notes installation...
Into The TDI Directory...… into the TDI installation under /IBM/TDI/V7.0/jars/3rdparty/IBM. Without this, you'll get Java errors when trying to connect.
Using TDI To Move IBM DB2® Data To Notes...■ Loosely based on an example in my work environment■ Using old version of Axceler Notrix® to move data from Oracle to Notes■ Runs nightly to load employee database that feeds other databases■ Goal is to replace Notrix with a tool we already have at no additional cost■ This would also work with Microsoft SQL Server or other RDBMS
Details For LDAP Connections■ Know your LDAP schema (or work with your LDAP team).■ You'll need the following:
─ LDAP userid that can read and/or write to the LDAP directory.‒ Organizational Unit‒ OrgClass
■ Another invaluable tool is Softerra's LDAP Browser (FREE!)http://www.softerra.com/download.htm
■ If you considering an assembly line to create Lotus Notes accounts:LDAP connection will not create full Notes users─Use Lotus Domino Users Connector in order to provision new accounts
Why Should You Care About LDAP or AD Details?■ Search Base – use the O or OU level qualifier for what you want to search for. If
you only need to run the AssemblyLine for an OU rather than O qualifier, don't use the O qualifier – extra overhead.
■ Search Filter – use a search filter so that you don't get objects you don't want (especially if your LDAP or AD contains many customized objects). The more specific the search filter, the fewer “junk” items you'll retrieve.
■ Credentials - sure you are logging in with credentials that has access to all O's or OU's and containers, so the AssemblyLine can process the work and run successfully.
Browsing LDAP Data: How & Why■ Click the Connect button. Once you’ve established a connection you can begin
to browse your data.■ Review each record by clicking Next to review the data in each attribute.■ This allows you to determine if you need to make any editing changes when
performing an update or data match.■ You'll also see what attributes are available in the schema.
So How Are We Going To Do All That?■ Create a project■ Create “template” connectors■ Create a new AssemblyLine■ Create Feed connector based on template connector■ Create IF ELSE logic
Create Your Connector “Templates”■ Create the connectors you will use throughout the Assembly line■ ADChanges – based on ActiveDirectoryChangeDetector■ DominoUsers – based on DominoUsersConnector
■ Create an AssemblyLine with data feed and data flow■ Map attributes that will match between AD and Domino■ Include any exception processes■ Create scripts or IF/Else/IF/ElseIF logic
■ You can take this type of AssemblyLine and build a process to provision Notes accounts.
■ See this document for more information regarding the specific objects you need to pass to adminp to set up accounts.─ http://www.tdi-users.org/twiki/pub/Integrator/HowTo/IntegratingDominowithTDIv1.1.pdf
Make changes to your ibmdiservice.props file■ servicename= <unique name of Windows TDI service>
■ assemblylines=<names of AssemblyLine(s) that are to start when the Windows Service starts> ─You can can multiple start, by separating the AssemblyLines by commas in
http://www.redbooks.ibm.com/cgi-bin/searchsite.cgi?query=tivoli+AND+directory+AND+integrator■ And Marie and Tom have done a series of TDI articles on at: http://www.crashtestchix.com■ Thanks to Eddie Hartman “TDI Story Teller” ([email protected])
■ Thanks also to Mitch Cohen (@curiousmitch) who helped us with the Connections information
The information contained in this publication is provided for informational purposes only. While efforts were made to verify the completeness and accuracy of the information contained in this publication, it is provided AS IS without warranty of any kind, express or implied. In addition, this information is based on IBM’s current product plans and strategy, which are subject to change by IBM without notice. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, this publication or any other materials. Nothing contained in this publication is intended to, nor shall have the effect of, creating any warranties or representations from IBM or its suppliers or licensors, or altering the terms and conditions of the applicable license agreement governing the use of IBM software.
References in this presentation to IBM products, programs, or services do not imply that they will be available in all countries in which IBM operates. Product release dates and/or capabilities referenced in this presentation may change at any time at IBM’s sole discretion based on market opportunities or other factors, and are not intended to be a commitment to future product or feature availability in any way. Nothing contained in these materials is intended to, nor shall have the effect of, stating or implying that any activities undertaken by you will result in any specific sales, revenue growth or other results.
Performance is based on measurements and projections using standard IBM benchmarks in a controlled environment. The actual throughput or performance that any user will experience will vary depending upon many factors, including considerations such as the amount of multiprogramming in the user's job stream, the I/O configuration, the storage configuration, and the workload processed. Therefore, no assurance can be given that an individual user will achieve results similar to those stated here.
All customer examples described are presented as illustrations of how those customers have used IBM products and the results they may have achieved. Actual environmental costs and performance characteristics may vary by customer.
IBM, the IBM logo, Lotus, Lotus Notes, Notes, Domino, Quickr, Sametime, WebSphere, UC2, PartnerWorld and Lotusphere are trademarks of International Business Machines Corporation in the United States, other countries, or both. Unyte is a trademark of WebDialogs, Inc., in the United States, other countries, or both.
Adobe, the Adobe logo, PostScript, and the PostScript logo are either registered trademarks or trademarks of Adobe Systems Incorporated in the United States, and/or other countries.
Java and all Java-based trademarks are trademarks of Sun Microsystems, Inc. in the United States, other countries, or both.
Microsoft and Windows are trademarks of Microsoft Corporation in the United States, other countries, or both.
Intel, Intel Centrino, Celeron, Intel Xeon, Intel SpeedStep, Itanium, and Pentium are trademarks or registered trademarks of Intel Corporation or its subsidiaries in the United States and other countries.
UNIX is a registered trademark of The Open Group in the United States and other countries.
Linux is a registered trademark of Linus Torvalds in the United States, other countries, or both. Other company, product, or service names may be trademarks or service marks of others.
All references to topchefs.com refer to a fictitious company and are used for illustration purposes only.