100% found this document useful (1 vote)
65 views9 pages

Architectural Best Practices For P8

FileNet Architectural Best Practices

Uploaded by

eddieyan
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
100% found this document useful (1 vote)
65 views9 pages

Architectural Best Practices For P8

FileNet Architectural Best Practices

Uploaded by

eddieyan
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 9

IBM Software Solutions | Enterprise Content Management Software

Architectural Best Practices for P8

Enterprise Content Management

© 2016 IBM Corporation


Enterprise Content Management

Architecture – High Level


▪ The High Level view shows that all of the components are Highly Available and is part of the
key to having an environment that is resilient
– Being able to add multiple nodes or servers also allows the environment to scale and
must be accounted for if a server goes down so the workload can be managed with a
reasonable response time

DMZ Restricted Zone

IBM Content
Navigator
CPE
(WAS ND)
(WAS ND)
User
Load Balancer
IIOP
HTTPS HTTPS
LDAPS

LDAP

HTTPS JDBC JDBC Proprietary


Protocol
(SSL)

CSS

IBM HTTP DB2


Servers (HA/DR Active/Standby)

2 © 2016
2011 IBM Corporation
Enterprise Content Management

Architecture - Physical
▪ Physical Layout
– Physical Servers should have redundant components
• ie. Multiple power supplies, network interfaces, etc
– Ensure the same types of servers are running on a different physical host machine
• If a physical server is lost the environment will continue to run
• Virtualization software can in many cases move or restart images on a different
server in a cluster
Very important to ensure that a virtualization environment can sustain a loss of a
physical server and continue to service requests with a response time that meets
the requirements of any SLA’s that might be in place with the business or clients

3 © 2016
2011 IBM Corporation
Enterprise Content Management

Architecture - Physical
Physical Host A Physical Host B

Hypervisor Hypervisor

Content Search Services IBM HTTP Server IBM HTTP Server Content Search Services
(Index /Search) (Index / Search)
CPU: 4 cores CPU: 1 core CPU: 1 core CPU: 4 cores
Memory: 12 GB Memory: 4 GB Memory: 4 GB Memory: 12 GB
Disk: 50 GB (boot), 50 GB (data), 120 Disk: 50 GB (boot), 50 GB (data) Disk: 50 GB (boot), 50 GB (data) Disk: 50 GB (boot), 50 GB (data), 120
GB Shared Storage OS: Windows 2012 R2 OS: Windows 2012 R2 GB Shared Storage
OS: Windows 2012 R2 Software: Software: OS: Windows 2012 R2
Software: IBM HTTP Server IBM HTTP Server Software:
CSS (5.2.1) CSS (5.2.1)

DB2 (Active) ICN Server (Active) ICN (Active) DB2 (Standby)

CPU: 6 cores CPU: 6 cores CPU: 6 cores CPU: 6 cores


Memory: 16 GB Memory: 8 GB Memory: 8 GB Memory: 16 GB
Disk: 50 GB (boot), 250 GB (data) Disk: 50 GB (boot), 50 GB (data), 10 Disk: 50 GB (boot), 50 GB (data), 10 Disk: 50 GB (boot), 250 GB (data)
OS: Windows 2012 R2 GB Shared Storage GB Shared Storage OS: Windows 2012 R2
Software: OS: Windows 2012 R2 OS: Windows 2012 R2 Software:
DB2 Software: Software: DB2
HADR IBM Content Navigator (2.0.3) IBM Content Navigator (2.0.3) HADR
WebSphere ND WebSphere ND

IBM Content Navigator Cluster

ICN JVM ICN JVM


Active Directory 2012 R2 (Active) Heap: 4 GB (nursery size 2 GB) Heap: 4 GB (nursery size 2 GB) Active Directory 2012 R2 (Active)

CPU: 1 core CPU: 1 core


Memory: 8 GB Memory: 8 GB
Disk: 50 GB (boot), 50 GB (data) Disk: 50 GB (boot), 50 GB (data)
OS: Windows 2012 R2 OS: Windows 2012 R2
Software: Software:
Active Directory CPE Server (Active) CPE Server (Active) Active Directory

CPU: 6 cores CPU: 6 cores


Memory: 8 GB Memory: 8 GB
Disk: 50 GB (boot), 50 GB (data), 370 Disk: 50 GB (boot), 50 GB (data), 370
GB Shared Storage GB Shared Storage
OS: Windows 2012 R2 OS: Windows 2012 R2
Software: Software:
Content Platform Engine (5.2.1) Content Platform Engine (5.2.1)
WebSphere ND WebSphere ND
Deployment Manager (8.5.5 ND)

Content Platform Engine Cluster

CPE JVM CPE JVM


Heap: 4 GB (nursery size 2 GB) Heap: 4 GB (nursery size 2 GB)

4 © 2016
2011 IBM Corporation
Enterprise Content Management

Architecture – Core Components


▪ When at all possible and within budgetary constraints we should strive to have Active /
Active Components at all levels
– This is not always possible but can be driven based on the criticality of the application
– Different tiers will have options such as clusters or farms, but a system is only as strong
as its weakest link, look to avoid Single Points of Failure
▪ Load Balancers
– Some hardware Load Balancers support an Active / Active configuration while others do
not, as many times the Load Balancers are the first hop to our service we would want
this to be configured in a Highly Available configuration
– Active / Active would be preferred, but sometimes Active / Passive is the only alternative
that is available in the environment, this could mean that users would see a delay in their
access to a service while the Passive node takes over
– In most cases a Load Balancer will be shared with multiple applications, but it is
important to make sure it can support the workload
▪ IBM HTTP Servers
– When ever possible IBM HTTP Servers should be placed in front of any WebSphere
server for two reasons, the first reason is to isolate traffic in a DMZ in order to ensure
only traffic getting to the WebSphere Servers is from the IBM HTTP Servers via HTTP /
HTTPS, and the second reason is that the plugins within the IBM HTTP Servers that
connect to WebSphere are designed with an Application Server in mind, where graceful
identification of a running service are determined. Load Balancers typically put
5
additional stress on the Application Servers, and the IBM HTTP Server is built ©to2016 handle
2011 IBM Corporation
this type of stress
Enterprise Content Management

Architecture – Core Components


▪ Content Platform Engine
– The Web Service Listener and EJB layers are
referred to as the two transport layers of Content
Platform Engine. All client requests enter Content
Platform Engine (CPE) through one of these two
transport layers
– Web Services
• The listener exposes the full functionality of
the CPE server through a standard Web
services API. Requests that arrive at this Web
service are authenticated based on the
credentials in their WS-Security headers, and
then passed on to the Content Platform
Engine EJB layer.
– EJB
• The Java EE session beans reside in the EJB
tier of the application server and implement
the same Web services API as the CPE Web
Service, exposing them through an Enterprise
Java Bean interface, rather than a Web
services interface. All clients of this EJB layer
must perform a JAAS login prior to sending a
6 request to one of the EJBs. © 2016
2011 IBM Corporation
Enterprise Content Management

Architecture – Core Components


▪ WebSphere Servers (ICN / CPE)
– WAS ND is required for a Highly Available environment to support the EJB transport and
is based on PVU pricing
• Important: WAS ND is not bundled with FileNet P8. The base version of WAS is
bundled with FileNet P8, but cannot handle highly available EJB configurations.
The EJB transport into CPE must be load balanced via Java app server clustering
(e.g., WAS ND), not by a hardware load balancer. A hardware load balancer will
produce little to no load balancing of the EJB transport into CPE, due to the way
Java app servers create long-lived direct connections for Java-client-to-Java-
server EJB method calls. The Java runtime reuses those connections across
multiple user sessions,.
• The Content Engine’s CEWS/HTTP transport requires a separate HTTP / Load
Balancer in addition to WAS ND for EJB
– WebSphere ND offers Administration of all servers via a single interface via the
Deployment Manager
– Since WAS ND has a cost per processor, clients will typically look for ways around this
and think that a load balancer will be able to do this
• Since EJB uses long lived sessions only the first EJB lookup call from an app will
actually go through the hardware load balancer if it was configured. All subsequent
EJB calls circumvent the hardware load balancer

7 © 2016
2011 IBM Corporation
Enterprise Content Management

Architecture – Core Components


▪ CSS
– The number of and type of CSS servers will change based on the workload
requirements. Sometimes CSS is never installed because a client does not need to full
text index documents or properties, but in other cases CSS is a critical component to the
environment.
• If you are unsure how CSS is going to be used, you can deploy two CSS servers
running the indexing and search services as a starting point and add additional
servers in the future as requirements dictate
▪ LDAP
– In most client environments the LDAP servers have already been built as very resilient
and most have a Highly Available DNS name that should be entered into the
configuration
▪ DB2
– Most clients that I work with tend to go with an Active / Standby approach with
databases, and the DB2 with HADR accomplishes this with shipping logs to the Standby
node. There is the option to go with DB2 purescale which the Active / Active solution,
but in the field I have seen few clients running this configuration.

8 © 2016
2011 IBM Corporation
Enterprise Content Management

Architecture – Storage

▪ Shared Storage
– Shared Storage will be a requirement if a client is using File Stores, Fixed Content
Devices or CSS with more than a single server
• For Unix or Linux environments a POSIX compliant file system is required
• Windows requires a NTFS compliant file system
– General Parallel File System (GPFS) is an option that can be leveraged to meet the
Shared Storage requirement
– NAS shares
• NFS or CIFS
• Need to ensure the components of the NAS solution are highly available
• Avoid setting up a single server to front SAN storage, as this would be a single point
of failure
▪ Advanced Storage Areas
– P8 5.2.1 started offering Advanced Storage Areas
• OpenStack REST service (SoftLayer)
Shared Storage is not needed for this device, data is streamed to the service
– Multiple Replicas can now be leveraged in a synchronous mode, effectively writing data
to multiple storage locations, or even asynchronously to a location off site
• Be careful with synchronous writes, as this is not going to make writes faster, but it
could make them safer, you will have to gage latency and testing into a decision here
9 © 2016
2011 IBM Corporation

You might also like