clarity technical know-how - ca technologies · pdf fileclarity technical know-how volume one...
Post on 06-Mar-2018
218 Views
Preview:
TRANSCRIPT
Clarity Technical Know-HowVolume One
Michael Hoefer
VP & Chief Architect, Clarity PPM
Terms of This Presentation
This presentation was based on current information and resource allocations as of October
2009 and is subject to change or withdrawal by CA at any time without notice.
Notwithstanding anything in this presentation to the contrary, this presentation shall not serve
to (i) affect the rights and/or obligations of CA or its licensees under any existing or future
written license agreement or services agreement relating to any CA software product; or (ii)
amend any product documentation or specifications for any CA software product. The
development, release and timing of any features or functionality described in this presentation
remain at CA’s sole discretion. Notwithstanding anything in this presentation to the contrary,
upon the general availability of any future CA product release referenced in this presentation,
CA will make such release available (i) for sale to new licensees of such product; and (ii) to
existing licensees of such product on a when and if-available basis as part of CA maintenance
and support, and in the form of a regularly scheduled major product release. Such releases
may be made available to current licensees of such product who are current subscribers to CA
maintenance and support on a when and if-available basis. In the event of a conflict between
the terms of this paragraph and any other information contained in this presentation, the
terms of this paragraph shall govern.
2 October 12th, 2009 Clarity Technical Know-How Volume 1 Copyright © 2009 CA
For Informational Purposes Only
Certain information in this presentation may outline CA’s general product direction. All
information in this presentation is for your informational purposes only and may not be
incorporated into any contract. CA assumes no responsibility for the accuracy or completeness
of the information. To the extent permitted by applicable law, CA provides this document “as
is” without warranty of any kind, including without limitation, any implied warranties or
merchantability, fitness for a particular purpose, or non-infringement. In no event will CA be
liable for any loss or damage, direct or indirect, from the use of this document, including,
without limitation, lost profits, lost investment, business interruption, goodwill, or lost data,
even if CA is expressly advised of the possibility of such damages.
3 October 12th, 2009 Clarity Technical Know-How Volume 1 Copyright © 2009 CA
4 October 12th, 2009 Clarity Technical Know-How Volume 1 Copyright © 2009 CA
Abstract
Clarity can be a large system with many moving parts. Have you
ever wondered what goes on under the hood? In NSA? Between
servers in a cluster? Do you wonder what a Beacon is for and what
it talks to, or why multicast is so important? How are jobs
scheduled and executed? How are business processes triggered?
And how does Clarity Studio manipulate the underlying database
schema?
Technical Know How – Volume 1 is designed to explain how Clarity
is built and functions, and includes a Q and A session with the Chief
Architect for CA Clarity.
5 October 12th, 2009 Clarity Technical Know-How Volume 1 Copyright © 2009 CA
Agenda
> Under The Hood
> Messaging
> Report Servers
> LDAP and SSO
> J2EE
> Studio Data Model
> Questions and Answers
Under the Hood
6October 12th, 2009 Clarity Technical Know-How Volume 1 Copyright © 2009 CA
System View
Beacons reside on servers,
optionally on some,
broadcasting their existence.
Sys Admin registers and
controls the Beacons.
Beacons control local
services, invoke commands,
retrieve log files and
distribute updated files.
If the Beacon or a required
third-party changes, manual
installation is required on
each node.
7 October 12th, 2009 Clarity Technical Know-How Volume 1 Copyright © 2009 CA
BO Server
ClarityBG
Server
ClarityApp
Server
Clarity Admin Server
Database Server
Beacon
Beacon
Runtime Dependency
Admin Dependency
Beacon
Beacon
Resource Usage
> Traffic
Provided: Stateless failover.
Required: Session affinity.
Sessions persist in database.
> Caches
Read-only populated from
database only.
Broadcast messages to
invalidate entries only.
Transactional data is not
cached.
8 October 12th, 2009 Clarity Technical Know-How Volume 1 Copyright © 2009 CA
Clarity App
Load Balancer
Clarity App
Clarity App
Clarity App
Clarity BG
Clarity BG
Clarity BG
Clarity BG
Database & Storage
> Thread Usage
Always pooled or singletons.
Guarded usage of ThreadLocal for session management,
transaction management, logging.
> Database Usage
Always pooled, never kept.
Proxool on Tomcat, native pooling on J2EE servers.
CA JDBC Drivers only. (From DataDirect.)
> Network Usage
Unicast to database, report server, mail server, etc.
Multicast from Clarity server to server using JGroups
(www.jgroups.org).
9 October 12th, 2009 Clarity Technical Know-How Volume 1 Copyright © 2009 CA
> Memory Usage
Heap space
– Stylesheet and Metadata caches
– Session data
– Transient data per thread
– Varies with usage and number of active users
Permanent space
– Class definitions and constants
– Internal JVM compiled code
– Varies very little with usage
Stack space
– Any data local to methods in the call stack
– Varies very little with usage
10 October 12th, 2009 Clarity Technical Know-How Volume 1 Copyright © 2009 CA
Messaging
11October 12th, 2009 Clarity Technical Know-How Volume 1 Copyright © 2009 CA
Messaging In System Administration
> Not much
Only for discovery of Beacon clients. The list of servers in
System Admin is populated via multicast.
Control of those servers is TCP unicast.
12 October 12th, 2009 Clarity Technical Know-How Volume 1 Copyright © 2009 CA
Messaging In Application
> Cache Consistency
Any time an instance in the Cache Controller changes, a
message is broadcast to all App and Background servers
to flush that item out of the cache.
To prevent inappropriate session timeouts, a background
thread runs periodically to broadcast active sessions to all
application servers.
– User hits server A and then is sent to server B for longer
than the official session timeout. If the user is sent back to
server A after that, server A must believe the user has
actually been active elsewhere or it will time the session
out.
13 October 12th, 2009 Clarity Technical Know-How Volume 1 Copyright © 2009 CA
> Job Scheduling
Simple: the schedulers, one per background server
instance, sleep and wait for either
a) A known start time for a scheduled job, or
b) A broadcast message waking them up to tell them to check
for something newly scheduled.
Whenever a schedule awakes, it runs anything that is
ready (acquiring a lock to synchronise properly).
If no schedulers are running when something is scheduled
(and a broadcast is sent), no problem. The schedulers
catch up when they start up.
14 October 12th, 2009 Clarity Technical Know-How Volume 1 Copyright © 2009 CA
> Process Events
More complicated: events are broadcast but also stored in
persistence, with a message timeout.
– Message Time to Live, system administration setting.
Default: 120 minutes.
– Important because different from schedulers, you do not
want an event message to be lost if no process engines are
running.
Events are subscription-based.
– Events are actually created only if a particular process
exists for a particular object (for Create events) or object
instance (for update events).
Broadcast messages are used to keep the process engine
moving “instantly”, and not polling.
15 October 12th, 2009 Clarity Technical Know-How Volume 1 Copyright © 2009 CA
Report Servers
16October 12th, 2009 Clarity Technical Know-How Volume 1 Copyright © 2009 CA
About Business Objects XI
> Packaged as CA Business Intelligence (CA BI 2.1)
BO XI R2 SP4
4GB DVD
CA-built installer shared by all CA products
(CA BI 2.0 with Business Objects XI R2 SP3 still supported)
> Supporting intersection of Business Objects XI PAS and
Clarity PAS
Solaris, Windows, AIX, Red Hat, SuSE
No HP-UX (yet)
Tomcat, WebLogic, WebSphere, Oracle, MS SQL
17 October 12th, 2009 Clarity Technical Know-How Volume 1 Copyright © 2009 CA
CA BI Server Integration
1. User schedules a report
2. BG server is notified
3. Job details are read and
the report is executed in
Business Objects via web
services
4. User clicks the report
output link in Clarity and
is redirected to the BO
web server.
5. Report is retrieved
6. User views the report
18 October 12th, 2009 Clarity Technical Know-How Volume 1 Copyright © 2009 CA
BO XI Server
ClarityBG
Server
BO InfoView
Server
ClarityApp
Server
Web Browser
Database Server
1
2
3
4
6
5
Security and Users in CA BI
1. User schedules a report.
2. BG server is notified.
3. Business Objects peer
user created on demand
with password known only
to Clarity and is
authenticated.
4. InfoView URL opened with
authentication token.
5. Report is retrieved.
6. User views the report.
19 October 12th, 2009 Clarity Technical Know-How Volume 1 Copyright © 2009 CA
BO XI Server
ClarityBG
Server
BO InfoView
Server
ClarityApp
Server
Web Browser
Database Server
1
2
3
4
6
5
> Complications
Do not currently prefix or otherwise
modify user names, so names can collide
if using the CA BI server for other
applications.
– abelincoln in Clarity is abelincoln in
Business Objects.
Trying to use your existing Business
Objects server? CA BI license is
unlimited. Yours may not be.
> Benefits
It is actually secure, down to the
individual user.
20 October 12th, 2009 Clarity Technical Know-How Volume 1 Copyright © 2009 CA
Cla
rity
Users
Report
Users
Actual internal user accounts created on CA BI Server
21 October 12th, 2009 Clarity Technical Know-How Volume 1 Copyright © 2009 CA
About Actuate
> Shipped separately
Has its own licensed product DVD, Actuate iServer for CA
Clarity PPM. Must copy the required Actuate files in the
correct location within Clarity.
> Integration is the same as its always been
We had a lousy hiccup in 8.1 SP1 where we changed the
integration to view reports outside of Clarity and
externalised security similar to CA BI. Bad idea.
As of 12.0 SP1 and 8.1 SP3 it is back to normal. Viewer is
embedded in Clarity, security is handled in Clarity.
LDAP and SSO
22October 12th, 2009 Clarity Technical Know-How Volume 1 Copyright © 2009 CA
LDAP and Clarity
> Why?
Users should never have to remember a password specific
to an application, nor keep changing it regularly to keep it
secure.
> Two parallel optional integrations
Authentication
– LDAP server and mapping information is provided.
– Use LDAP flag in system administration is selected.
User synchronisation
– LDAP server and mapping information is provided.
– Run the LDAP synchronisation Clarity jobs.
23 October 12th, 2009 Clarity Technical Know-How Volume 1 Copyright © 2009 CA
SSO and Clarity
> One step better than LDAP
Users should not have to re-enter the same credentials
when accessing different corporate applications.
> Great Green Book
Configuring CA SiteMinder for Clarity PPM, in progress.
Describes usage of recent enhancement to no longer
require separate application instances for browser vs.
non-browser clients.
24 October 12th, 2009 Clarity Technical Know-How Volume 1 Copyright © 2009 CA
> Staying Secure
Clarity with Use SSO flag is
completely unprotected
and must be locked tight
behind the SSO proxy.
Fancier, custom, unofficial
implementations are
possible.
Not hard-coded in any way
to CA SiteMinder
25 October 12th, 2009 Clarity Technical Know-How Volume 1 Copyright © 2009 CA
Web S
erv
er
Clarity
Bro
wser
Client
SO
AP C
lient
Schedule
r Client
CA S
iteM
inder
J2EE
26October 12th, 2009 Clarity Technical Know-How Volume 1 Copyright © 2009 CA
J2EE Integration
> Packaging
J2EE requires either web archives (.war) or application
archives (.ear). We choose the latter.
All of the code must be added to a large (~250mb+)
niku.ear. Websphere has a hard time with this.
> Session Management
Clarity manages its own sessions. The same on Tomcat,
WebLogic, WebSphere.
– J2EE HttpSession is not used. WebSphere memory
replication is not used. WebLogic’s equivalent is not used.
Session identified by our sessionid cookie. Not jsessionid.
27 October 12th, 2009 Clarity Technical Know-How Volume 1 Copyright © 2009 CA
Clarity System Administration and J2EE
> Common Misconception
Properties set in System Administration are not stored in
the application niku.ear. The application .ear does not
need to be repackaged and deployed when properties
change.
The same is true for the system admin application nsa.ear.
The nsa.ear does however hard code the path to the local
home directory where it can read and write to the master
properties file.
And yes, an .ear from one environment can be deployed
into a different environment.
28 October 12th, 2009 Clarity Technical Know-How Volume 1 Copyright © 2009 CA
Studio Data Model
29October 12th, 2009 Clarity Technical Know-How Volume 1 Copyright © 2009 CA
Custom Attributes and Objects
> Horizontal or Vertical Model?
Horizontal: Force.com
– Single underlying table with multiple columns for different
data types.
– Abstraction layer between application code and the
database, including a special query language. Fast,
predictable. No joins.
Vertical: Clarity
– More traditional usage of an RDBMS, with non-traditional
catch: schema is manipulated on the fly.
– The relational database is used as a relational database.
Fast or slow, depends on your queries.
30 October 12th, 2009 Clarity Technical Know-How Volume 1 Copyright © 2009 CA
> Stock Tables
SRM_RESOURCES, INV_PROJECTS
> Extension Tables
ODF_CA_RESOURCE, ODF_CA_PROJECT
> Simplified with Views
ODF_RESOURCE_V, ODF_PROJECT_V
> Custom Objects
No stock table, just ODF_CA table and views
– ODF_CA_APPLE, ODF_CA_ORANGE
– ODF_APPLE_V, ODF_ORANGE_V
Rights, Pages, Views, Actions & Links
31 October 12th, 2009 Clarity Technical Know-How Volume 1 Copyright © 2009 CA
Questions
32October 12th, 2009 Clarity Technical Know-How Volume 1 Copyright © 2009 CA
Summary
Under The Hood
– System views and resource usage
Messaging
– Where multicast, why multicast
Report Servers
– CA BI server integration
LDAP and SSO
– Staying secure
J2EE
– Properties are not stored in the .ear
Studio Data Model
– What is created where and why
33 October 12th, 2009 Clarity Technical Know-How Volume 1 Copyright © 2009 CA
top related