Deployment Options - Deltek Software Manager

Deployment Options - Deltek Software Manager
Deltek Costpoint® 7.1.1
Deployment Options Technical Overview
March 15, 2016
While Deltek has attempted to verify that the information in this document is accurate and
complete, some typographical or technical errors may exist. The recipient of this document is
solely responsible for all decisions relating to or use of the information provided herein.
The information contained in this publication is effective as of the publication date below and is
subject to change without notice.
This publication contains proprietary information that is protected by copyright. All rights are
reserved. No part of this document may be reproduced or transmitted in any form or by any
means, electronic or mechanical, or translated into another language, without the prior written
consent of Deltek, Inc.
This edition published March 2016.
© Deltek, Inc.
Deltek’s software is also protected by copyright law and constitutes valuable confidential and
proprietary information of Deltek, Inc. and its licensors. The Deltek software, and all related
documentation, is provided for use only in accordance with the terms of the license agreement.
Unauthorized reproduction or distribution of the program or any portion thereof could result in
severe civil or criminal penalties.
All trademarks are the property of their respective owners.
Deployment Options Technical Overview
ii
Contents
Overview .......................................................................................................................................... 1
Costpoint Components Overview .................................................................................................... 2
Multi-Tier Architecture ................................................................................................................. 2
Server Components .................................................................................................................... 3
Data Segments............................................................................................................................ 4
User Authentication Methods ...................................................................................................... 5
Costpoint Database Method........................................................................................................ 6
Single Sign-on Method ................................................................................................................ 6
Active Directory Method .............................................................................................................. 6
Single Sign-on or Active Directory Method ................................................................................. 6
Windows Domain and Active Directory Method .......................................................................... 6
Windows Domain and Costpoint Database Method ................................................................... 7
Client Certificate Method ............................................................................................................. 7
Time & Expense and Budgeting & Planning Overview ................................................................... 8
Deployment Options .................................................................................................................... 8
Time & Expense Only Customers ............................................................................................... 8
Costpoint and Time & Expense / Budgeting & Planning Customers .......................................... 9
Network-Based Restrictions ...................................................................................................... 11
WebLogic Clusters ........................................................................................................................ 12
Benefits of Clustering ................................................................................................................ 12
Recommended Homogeneous Cluster Architecture Overview ................................................ 12
Install Costpoint on a Shared File Location .............................................................................. 13
Cluster Configuration................................................................................................................. 13
Dedicated Servers ......................................................................................................................... 15
Benefits of Dedicated Job Servers ............................................................................................ 15
Considerations in Using Dedicated Servers ............................................................................. 15
Dedicated Server Configuration and Use ................................................................................. 17
Actuate Clusters ............................................................................................................................ 18
Multiple Costpoint Systems in One Costpoint Deployment (multi-tenancy) .................................. 19
Benefits of Having Multiple Costpoint Systems in One Costpoint Deployment ........................ 19
Add a New System to a Costpoint Deployment ........................................................................ 19
Share Database Schemas between Multiple Costpoint Systems ................................................. 20
Share Metadata Schema .......................................................................................................... 20
Share Admin Schema ............................................................................................................... 20
Oracle RAC.................................................................................................................................... 21
Deployment Options Technical Overview
iii
Integration Console ....................................................................................................................... 22
Content Management Integration .................................................................................................. 23
Troubleshooting Costpoint............................................................................................................. 24
Monitoring Utility ........................................................................................................................ 24
Deltek Customer Care ............................................................................................................... 24
Appendix A: IIS Performance Optimization ................................................................................... 25
Does Network Latency Affect My Costpoint Performance? ...................................................... 25
Does Bandwidth Affect My Performance? ................................................................................ 25
Appendix B: Costpoint Reporting .................................................................................................. 30
Changes to Reporting ............................................................................................................... 30
Configuration ............................................................................................................................. 30
Deployment Options Technical Overview
iv
Overview
Overview
This document provides an overview of various technical features and configuration options
supported by Costpoint. It is intended for administrators and other technical staff who configure
and maintain Costpoint.
Each section in this document provides a high-level description of a feature. For detailed
information on configuring features, see the more detailed documents referred to throughout this
document.
Deployment Options Technical Overview
1
Costpoint Components Overview
Costpoint Components Overview
Multi-Tier Architecture
Costpoint is based on a multi-tier architecture that uses multiple application, database, and
optional web-proxy servers. This architecture supports distributed computing. Additional servers
can be added at any tier, allowing the system to scale to the needs of a large user base.
A typical installation of Costpoint includes:

A WebLogic® application server

An Oracle® or Microsoft® SQL Server® database
Optionally, IIS can be used to proxy requests to the WebLogic server.
With the 7.0.1 and later releases of the product, the reporting component is handled by the
WebLogic application.
For detailed information on how to install Costpoint, refer to the installation instructions provided
with the Costpoint release.
Costpoint Basic Deployment
Deployment Options Technical Overview
2
Costpoint Components Overview
Costpoint Complex Deployment
Server Components
Deltek strongly recommends that all three server components are installed on separate hardware
resources and that no other software applications share the hardware.

WebLogic server — This server is used for hosting the core components of Costpoint
that provide business functionality to end users, including reporting capabilities. This
component takes the center stage in processing all requests and coordinating with other
components.
Costpoint is compatible with the clustering capabilities of the WebLogic server. Clustering
allows Costpoint to scale to the needs of large enterprise organizations, and provides
high availability and failover support.

Database server — Costpoint supports Oracle and SQL Server database servers. A
Costpoint installation can use either of the supported database servers but not both.
The Costpoint database is made up of three segments of data – Metadata, Admin data,
and Transaction data – each of which must be stored in a separate schema. They can be
stored in one or multiple databases. They may even span multiple instances or database
servers, but they must be running on the exact same version of the software.

IIS server — The IIS server is used to proxy client requests to the WebLogic server.
Though the use of the IIS server is optional, Deltek strongly recommends installing it in a
production environment. In addition to acting as the proxy, the IIS server is also used for
load balancing the cluster nodes.
Deployment Options Technical Overview
3
Costpoint Components Overview
Data Segments
Segregation of data into separate segments provides a number of administrative benefits to
database administrators, who can apply separate policies for securing, backing up, restoring and
tuning each of these segments.

Metadata — Costpoint is built on a metadata-driven architecture. This means that many
system components and behaviors are not hard-coded in a programming language.
Instead, they are declaratively described through data objects called “metadata.”
This metadata is a collection of database tables, forming a metadata schema separate
from the Admin and Transaction segments. This schema changes only when the
Costpoint software changes— when you apply a hotfix or upgrade to a new service pack
or release. During normal Costpoint use, all transactions to this segment are read-only.

Admin — This segment is used to store Costpoint user profiles and technical information
related to Costpoint configuration. For example, the Admin segment stores user’s
personnel information, passwords, access rights, and preferences. It stores information
about the printers connected to the servers, their rights, and the locale used by the
product. It also stores users’ personal preferences related to the UI and favorite
applications.

Transaction — This segment stores all business-related data as well the main
functionality of the product. This segment can be very large, both in terms of volume and
number of transactions.
Deployment Options Technical Overview
4
Costpoint Components Overview
Database Deployment Options
User Authentication Methods
Typically, a user must enter a user ID and password to be authenticated by Costpoint and gain
access to the system.
Users can fall into one of three categories:

In-house users — These users are registered in Windows Active Directory and are
logged into the company’s network.

Remote Users — These users are not registered in Active Directory.

Consultants — These users are registered in Active Directory and may or may not be
logged into the company’s network.
Additionally, some organizations have unique security requirements. For example, all users must
be authenticated on the network before accessing Costpoint, or they must be authenticated by a
centralized authentication system using Active Directory.
To address all such business requirements, Costpoint supports multiple authentication methods.
Based on the needs of your organization, you can choose one or more methods to authenticate
users. Moreover, the authentication method can be specified at the user ID level.
Deployment Options Technical Overview
5
Costpoint Components Overview
A Costpoint administrator uses the Maintain Users application to specify how a given user will be
authenticated.
Costpoint Database Method
The Costpoint Database authentication method is the default authentication method. With this
method, user credentials are checked against profiles stored in the Costpoint database. This
feature is available out of the box, without any extra configuration effort.
Single Sign-on Method
This authentication method supports only in-house users who are currently logged into the
company network (via Windows Active Directory). This method allows users to log into Costpoint
without providing a user ID and password on the Login screen.
To use Single Sign-On authentication, you must perform special configuration steps on the
WebLogic server and Windows Active Directory server so that they can communicate with each
other.
Active Directory Method
This authentication method supports In-house users who are registered in the company network
(via Windows Active Directory), but not necessarily logged into the company network. A user is
required to provide a user ID and password on the Login screen to access Costpoint. This
authentication method verifies passwords against the Windows Active Directory.
To use Active Directory authentication, you must perform special configuration steps on the
WebLogic server and Windows Active Directory server.
Single Sign-on or Active Directory Method
This authentication method supports in-house users and consultants. It gives users two options
for accessing Costpoint:

Single Sign-On — When a user is already logged into the company network, the user can
access Costpoint without providing a user ID and password.

Active Directory — When a user is not logged into the company network, the user can
access Costpoint by entering a user ID and password on the Login screen. This method
verifies passwords against the Windows Active Directory.
This authentication method requires special configuration steps to be performed on the WebLogic
Server and Windows Active Directory.
Windows Domain and Active Directory Method
This authentication method supports in-house users who are currently logged into the company
network (via Windows Active Directory). A user is required to provide a user ID and password on
the Login screen. This method verifies passwords against Windows Active Directory.
This authentication method requires special configuration steps to be performed on the WebLogic
Server and Windows Active Directory.
Deployment Options Technical Overview
6
Costpoint Components Overview
Windows Domain and Costpoint Database Method
This authentication method supports In-house users who are currently logged into the company
network (via Windows Active Directory). A user is required to enter a user ID and password on
the Login screen in order to access Costpoint. This method verifies passwords against the
Costpoint database.
This authentication method requires special configuration steps to be performed on the WebLogic
Server and Windows Active Directory.
Client Certificate Method
This authentication method identifies the user by his X.509 certificate. This is a special use of the
Secure Sockets Layer (SSL) where both the server and the user are identified by their own
certificates. As a result, this is a very strong form of authentication that guarantees that a user
can log into Costpoint only from a PC that has a valid certificate installed. All communication
between the server and client is encrypted.
This method is targeted to support all Costpoint users. This authentication method requires
special configuration steps to be performed on the WebLogic server and PC.
For detailed information on how to configure authentication methods, refer to the Deltek
Costpoint 7.1 Security guide.
Deployment Options Technical Overview
7
Time & Expense and Budgeting & Planning Overview
Time & Expense and Budgeting & Planning
Overview
This sections applies to Deltek Time & Expense 10 customers and/or Budgeting & Planning 7
customers.
Deltek Time & Expense 10 and/or Budgeting & Planning 7 and later versions are built on the
Costpoint platform. As a result, Time and Expense (T&E) applications and Budgeting & Planning
(B&P) applications inherit and benefit from many standard features which are already well known
to Costpoint customers: web services, extensibility, CMI integration, cluster failover, saved UI
profiles, user-level authentication, and so on. A common platform also enables tighter technical
and functional integration between the products, which Deltek will further keep enhancing going
forward.
If you upgrade from T&E 9 and/or B&P 6, it is important to know that the T&E/B&P database
stays "as is." In other words, the T&E 9 and/or B&P 6 database is neither eliminated nor
converted as part of upgrade process. A few changes to the database tables are done based on
the enhancements as typically expected for a product version upgrade. Also, while the T&E and
B&P installation requires the three database schemas used by Costpoint, the transactional
Costpoint schema is mostly empty and, as such, doesn't consume much space.
Business users will be able to access the functionality of Costpoint, T&E, B&P, or all three
products under one common user interface. Access to the functionalities is based on the license
applied to the system.
Administrators/IT can potentially benefit from sharing the hardware as well from having
standardized configuration and maintenance processes across products.
Deployment Options
A functional Costpoint installation is a pre requisite and serves as the foundation for installing
Time & Expense and/or Budgeting & Planning. You need to apply latest framework and system
updates and then proceed towards the T&E/B&P installation. You can either upgrade your
existing Time & Expense and/or B&P database or create a new database using the DB Tier
installer.
Time & Expense Only Customers
If you intend to use Time and Expense alone, you would first need to install the Costpoint
foundation by following the Costpoint installation instructions. You can configure the Application
Tier to use a standalone Weblogic instance or use a cluster of Weblogic instances. The database
tier would consist of Costpoint Data Segments as described here. The Time & Expense module
has to be configured over the Costpoint installation by following the T&E installation instructions
that consists of binding the T&E database to the Costpoint Application Tier into an existing
Costpoint System.
Deployment Options Technical Overview
8
Time & Expense and Budgeting & Planning Overview
Costpoint and Time & Expense / Budgeting & Planning
Customers
You have the choice of continuing to deploy product as a separate product on a separate
infrastructure (a standalone, "share nothing" deployment) or using one of the two new codeployment models:

Costpoint and T&E/B&P are deployed together as part of a single Costpoint system,
known as a "share everything" co-deployment model

Costpoint and T&E/B&P are deployed on the same infrastructure but under two separate
systems, known as a "share infrastructure" or "multi-tenant" co-deployment model.
If you have all three products, you can deploy them all together, all separately, or any two of them
together.
“Share Everything” Co-Deployment Model
In this case, T&E or B&P becomes just another domain within Costpoint, similar to Projects,
Accounting, People, and so on. Users have a single Login screen and will see/access both CP
and T&E/B&P applications from the same menu if they have rights to both products. NonCostpoint users will only see the T&E/B&P application which they have rights to.
See the” Network-Based Restrictions” section below if you want to control Internet/intranet
access separately for Costpoint and T&E/B&P.
A single system will consist of three Costpoint database schemas along with the fourth database
schema represented by an upgraded T&E 9 / B&P 6 database. For performance reasons, Deltek
recommends using a separate database for Time & Expense/Budgeting & Planning; although, if
desired and supported by hardware capacity, all schemas can be put into a single database
Deployment Options Technical Overview
9
Time & Expense and Budgeting & Planning Overview
instance. You need to make sure that you have enough throughput on the database server to
handle the pick load from Costpoint and other product(s) at the same time.
"Share Infrastructure" or "Multi-Tenant" Co-Deployment Model
In this case and from an end-user perspective, T&E/B&P and Costpoint will appear as two
different deployments (as if you used a standalone T&E/B&P deployment). Based on the system
name specified on the Login page, business users will be able to access either Costpoint or
T&E/B&P functions, but not both (even if they have rights to both). This is no different than having
two or more Costpoint systems deployed within the same Weblogic cluster.
The Costpoint system would consists of three database schemas while the Time & Expense /
Budgeting & Planning system would consist of four database schemas. The metadata schema
can be shared as described in the Multi-Tenancy section. In this model, only the Application Tier
is shared by the products’ Database Tier, with the exception of the Metadata not shared.
Refer to the Deltek Costpoint Configuration Utility guide Product Tab section for instructions on
binding Time & Expense / Budgeting & Planning with on Costpoint foundation.
For detailed information on how to install Costpoint, Time & Expense, or Budgeting & Planning,
refer to the installation instructions provided with the product release.
Deployment Options Technical Overview
10
Time & Expense and Budgeting & Planning Overview
Network-Based Restrictions
Some organizations may have business users who access the Costpoint platform both through
private and public networks, and may desire to restrict access to Costpoint functionality over a
public network while allowing remote users to access T&E/B&P functionality. In this situation,
Deltek recommends having multiple proxies or load balancers and define rule-based restrictions
on incoming traffic to the Application Tier.
For example, load balancer A with IP address 10.5.40.144 is used for public Internet traffic and
load balancer B with IP address 169.54.2.15 is used for internal intranet traffic. You can set rules
such that traffic flowing through 169.54.2.15 (intranet LB B) can access both the products while
the traffic coming through 10.5.40.144 (public LB A) can only access T&E/B&P functionality. This
allows administrators to list any number of white and black list of IP Address to allow or deny
product access respectively.
Refer to Deltek Costpoint Configuration Utility guide Product, Access List Tab section for
instructions on defining white/black list of Proxy filters.
Deployment Options Technical Overview
11
WebLogic Clusters
WebLogic Clusters
A WebLogic server cluster consists of multiple Oracle WebLogic server instances running
simultaneously and working together to provide increased scalability and reliability. To a user, a
cluster appears to be a single server instance. The server instances that constitute a cluster can
run on the same machine or on different machines. You can increase a cluster’s capacity by
adding additional server instances to the cluster on an existing machine, or you can add
machines to the cluster to host additional server instances. Each server instance in a cluster must
run the same version of WebLogic server.
Benefits of Clustering
A WebLogic server cluster provides the following benefits:

Scalability — The capacity of an application deployed on a WebLogic server cluster can
be increased dynamically to meet demand. You can add server instances to a cluster
without interrupting service; the application continues to run without impact to clients and
end users.

High-Availability (failover) — In a WebLogic server cluster, application processing can
continue when a server instance fails. You “cluster” application components by deploying
them on multiple server instances in the cluster so that, if a server instance on which a
component is running fails, another server instance on which that component is deployed
can continue application processing.

Load Balancing — Load balancing is the even distribution of jobs and associated
communications across the computing and networking resources in your environment.
The choice to cluster WebLogic server instances is transparent to end users. However,
understanding the technical infrastructure that enables clustering will help administrators
maximize the scalability and availability of the product.
Recommended Homogeneous Cluster Architecture Overview
Costpoint supports both homogeneous and heterogeneous cluster deployment models.
Deltek recommends using a homogeneous cluster architecture. All components of the Costpoint
application are homogenously deployed on all cluster nodes. Each server is equally able to serve
any request. Because all components are available locally, there is no additional burden of
expensive serialization/deserialization of requests and remote calls.
Deployment Options Technical Overview
12
WebLogic Clusters
WebLogic Server Cluster (from Oracle WebLogic Server™ Documentation)
Install Costpoint on a Shared File Location
It is important that all WebLogic instances run the exact same version of the Costpoint product.
For this reason, Deltek recommends installing Costpoint in a network folder that is accessible to
all servers with high reliability. Anytime a server cannot access this folder, the server will fall to
failed status. By installing the product on a shared location, any updates or patches applied to it
are available to all servers at once.
All servers in your WebLogic domain should have file access to the folder where the Costpoint
application will be deployed. Deltek strongly recommends that the shared folder is hosted on a
file server with adequate failover capabilities on Tier 1 high performance storage for your
production system.
Running Weblogic instances requires fast and reliable input/output access to this shared folder
location. Inadequate I/O performance can jeopardize the health of the product during peak load
times. If the I/O access is inadequate and Weblogic server suffers I/O errors, a restart is
required to restore system functionality.
If you initially installed Costpoint locally (for example, to C:\deltek\costpoint\71), but then decide to
move <Costpoint Home> to a shared location, you should use the Move Costpoint functionality in
the Configuration Utility to guide you through the series of steps needed to move <Costpoint
Home>. You will need to share the folder where Costpoint is installed. Deltek recommends that
you install it to a network location such as \\fileserver\shared_folder1\deltek\costpoint\71.
For more information, refer to the Deltek Costpoint Configuration Utility guide.
Cluster Configuration
Identify the new hardware resources to run the WebLogic nodes. Apply all operating system
updates to date. Install the WebLogic software on new machines by running the App tier installer.
Oracle’s Weblogic Server files should be installed in the same location on all nodes in the cluster
and/or on all nodes that are running Dedicated servers. Typically, the location is
Deployment Options Technical Overview
13
WebLogic Clusters
C:\Oracle\Middleware12.1.3, but you can to install it any local drive as long as you use the same
drive letter for all Weblogic nodes.
Use the Configuration Utility to convert single Costpoint WebLogic server into a cluster. The
existing WebLogic server becomes the Admin server by default. Define additional nodes in
Configuration Utility and point them to the newly identified hardware resources.
Later, you can also use the Configuration Utility to reduce the number of nodes and release the
hardware from cluster. Or, you can use it to revert back to Single Server deployment.
All servers share the same configuration files; that is, memory classpath path and other
configurable items are stored in a single place and shared by all member nodes of the WebLogic
cluster. When starting the cluster, it is important that the Admin server should be in running mode
before the nodes can be started. Within the nodes, the order for starting the nodes does not
matter.
Costpoint hotfixes should be applied to the common shared folder. This procedure works the
same as it does in single server mode. But, framework updates should be applied to each of the
WebLogic nodes, including the Admin server.
For information on how to configure WebLogic clusters, refer to the Deltek Costpoint 7.1
Configuration Utility guide.
Deployment Options Technical Overview
14
Dedicated Servers
Dedicated Servers
A dedicated server, as the name implies, is an additional instance of the WebLogic server
dedicated to serve certain types of requests. Costpoint application, hot fixes, and Web Integration
modules are homogenously deployed to all Costpoint servers including dedicated servers. But,
the dedicated servers are not part of cluster and do not participate in fail over. When these
servers are shutdown or restarted, only those services that are targeted to run on these servers
are impacted, but the regular UI requests that are serviced by the entire cluster are not impacted.
For more information, refer to the Deltek Costpoint Process Execution Modes guide.
Benefits of Dedicated Job Servers
Depending on the amount of data they are processing, some jobs (such as closing the accounting
period or sub-period or calculating and posting a payroll) can run for a very long time. These jobs
make heavy use of system resources while they are executing and may cause interactive users
to experience a delayed response from the WebLogic server.
An administrator can choose to run these resource-intensive tasks on dedicated hardware,
separate from the tasks of interactive users, so that interactive users experience better
performance. Using dedicated servers does not mean that all jobs will run on a dedicated server.
Costpoint application users can choose to run a process on a regular channel or on a dedicated
server.
Refer to the Costpoint complex deployment graphic, earlier in this guide, to understand how
dedicated job servers fit into the deployment model.
Even if a dedicated WebLogic server is used to process resource-intensive jobs, the Costpoint
database is still shared between all active users and processes and can act as a bottleneck for
processing.
Dedicated Servers can also be used to serve Integration modules or Web Service requests.
Third-party application requests can be segregated to run on these dedicated servers without
having to impact the performance of entire cluster. Changes made to Web integration modules
requires the servers to be restarted for the changes to take effect and that requires scheduling a
downtime as the end users will get dropped during the process. By using dedicated servers, this
downtime can be avoided. While deploying Web services through the Integration console, the
administrator could clear the Redeploy Enterprise Application option of Integration console.
This way, only the corresponding dedicated server has to be restarted for the changes to take
effect. None of the regular users are impacted by restarting the dedicated servers.
For detailed information on how to use Redeploy Enterprise Application, refer to the
“Build/Deploy Integration Modules” section of the Deltek Costpoint Integration Console guide.
Considerations in Using Dedicated Servers
Here are some considerations in deciding to use dedicated servers:

From a hardware and maintenance perspective, dedicated servers are similar to nodes in
a WebLogic cluster except that they are not part of the cluster.
Deployment Options Technical Overview
15
Dedicated Servers

Costpoint can support up to 10 dedicated servers, and they can be brought online based
on need. Administrators can choose to bring these dedicated servers online at certain
times during the week or month to process scheduled tasks. When they are not needed,
they can be shut down, and the underlying hardware can be used for other activities or to
host regular WebLogic instances that are part of the cluster.

Dedicated servers are standalone instances that are not part of the cluster. As a result,
they do not provide failover capability for the tasks that run on them. When a dedicated
server fails for any reason, its jobs will remain unprocessed until the server is restored.

Costpoint Web Tier, by default, does not forward any requests to dedicated servers.
When you need to expose dedicated servers through IIS, certain configuration changes
are to be made on Web Tier. You can either use the existing web tier, bring up a new
virtual Application in the existing IIS, or use a different IIS server to proxy the request to
dedicated servers.
For details instructions of accessing dedicated servers through IIS, refer to the “Access from
IIS” section of the Deltek Costpoint Integration Overview guide.
Deployment Options Technical Overview
16
Dedicated Servers
Dedicated Server Configuration and Use

Install Costpoint on in a Shared File Location. Refer to the WebLogic Cluster section
discussed above.

Identify new hardware resources to run Dedicated Job Server. Apply all operating system
updates to date. Install the WebLogic software on new machines by running the App tier
installer.
Oracle’s Weblogic Server files should be installed in the same location on all nodes in the
cluster and/or on all nodes that are running Dedicated servers. Typically, the location is
C:\Oracle\Middleware12.1.3\wlserver, but you can to install it any local drive as long as
you use the same drive letter for all Weblogic nodes.

Use the Configuration Utility and define Dedicated Job Servers pointing to the new
hardware.
For more information about dedicated servers, refer to the following sources:

Deltek Costpoint Configuration Utility guide — This guide contains Information on how
to configure dedicated servers.

Deltek Costpoint Process Execution Modes guide — This guide contains Information
on how to schedule Costpoint jobs.
Deployment Options Technical Overview
17
Actuate Clusters
Actuate Clusters
Actuate is no longer used in Costpoint 7.0.1 and later versions. This component is replaced with
BIRT reporting engine deployed on WebLogic server along with other components of Costpoint.
Deltek recommends that customers upgrading to Costpoint 7.1 should convert the hardware used
for Actuate reports into additional nodes of the WebLogic server.
Deployment Options Technical Overview
18
Multiple Costpoint Systems in One Costpoint Deployment (multi-tenancy)
Multiple Costpoint Systems in One Costpoint
Deployment (multi-tenancy)
A single Costpoint system contains three database schemas: Metadata, Admin, and Transaction.
It is possible to have multiple systems in a single Costpoint deployment, consisting of a single
Costpoint Home folder, a single IIS instance, and a single WebLogic server (or cluster). This
single Costpoint deployment can serve multiple database systems.
Deltek does not recommend this configuration to combine production and test
environments, but does recommend it for the following scenarios. Consider it if you need to:

Maintain private and public cloud (multi-tenant deployment)

Maintain copies of production data for “what if” business modeling

Maintain a training system using production software with training data

Maintain a test system for testing Costpoint hotfixes

Maintain a development/test system for Web services
Benefits of Having Multiple Costpoint Systems in One Costpoint
Deployment
The benefits of this configuration are:

Hardware and software reduction

Ease of administration
These benefits are achieved by reducing the number of IIS and WebLogic servers that you need
to set up and maintain.
Note that all systems must use the same code base and metadata version. If you are applying a
hotfix to a multi-system deployment, you must apply it to all systems at the same time.
Add a New System to a Costpoint Deployment
To add a new system to a Costpoint deployment, complete the following steps:
1. Use the Database Tier installation executable to create database schemas.
2. Use the Configuration Utility to register the new system. Go to the Costpoint tab, click
Add, and enter the connection information for the new system.
3. Activate the new system.
For detailed information about this process, refer to the Deltek Costpoint 7.1 Configuration Utility
guide.
Deployment Options Technical Overview
19
Share Database Schemas between Multiple Costpoint Systems
Share Database Schemas between Multiple
Costpoint Systems
Share Metadata Schema
If you have multiple Costpoint systems, you can reduce the amount of hardware you need by
configuring the Costpoint systems to share the same instance of the Metadata database schema.
If you have two systems, for example, you need to have only five database schemas in total: one
Metadata, two Admin, and two Transaction.
For this configuration to work, you need to specify different Link User names and different Data
To Admin Link, Data To Meta Link, and Admin To Meta Link values for the different systems.
You establish these names and values using the Configuration Utility, on the Costpoint »
Database Information tab.
The following diagram shows two Costpoint systems (TRAIN01 and TEST02) in the same
Costpoint installation, sharing the same Metadata schema.
Share Admin Schema
Furthermore, to achieve the ultimate reduction in the number of database schemas needed, you
can share the Admin schema between two or more systems. In this case, you only need four
database schemas in total for two systems: one Metadata, one Admin, and two Transaction.
However, there are additional requirements in this scenario. Because the Admin schema contains
all licensing and company information, administrative settings, and user/user group authorization
and authentication information, all of these settings must be the same in all systems that share an
Admin schema. And, as mentioned above, all link settings must be unique to each system for this
configuration to work.
Deployment Options Technical Overview
20
Oracle RAC
Oracle RAC
Oracle RAC (Real Application Clusters) allows multiple computers to run simultaneously while
serving a single database, thus providing cluster benefits. With standard Oracle servers, a single
instance serves a single database. In a RAC environment, two or more computers (each with an
instance) concurrently access a single database. This allows Costpoint application servers to
connect to any of the computers and have access to a single coordinated set of data.
Starting with Version 7.0, Costpoint supports Oracle RACs by using the distributed connection
pools provided by WebLogic server.
Typical Oracle RAC Configuration
Deployment Options Technical Overview
21
Integration Console
Integration Console
Costpoint provides a generic framework through which you can interface third-party software with
Costpoint. Using the Costpoint Integration Console, you can expose any Costpoint application or
part of an application as a Web service, to be consumed by a third-party application or Enterprise
Service Bus system. When you use the Integration Console, you can configure additional rules
(such as SSL requirements and authentication method to be used) without writing a single line of
code. The console generates all the required service or EJB components and deploys them to the
WebLogic server, ready to be used.
For more information on the integration features provided by Costpoint, refer to the Deltek
Costpoint Integration Overview guide.
For instructions on using the Integration Console, refer to the Deltek Costpoint Integration
Console guide.
If you are using a WebLogic cluster, integration components are deployed to all the nodes,
including dedicated servers, homogenously. A user can connect to any of the servers to run Web
services or EJB interfaces.
If you already use dedicated servers to run certain tasks, you should consider also serving
integration components using dedicated servers.
Deployment Options Technical Overview
22
Content Management Integration
Content Management Integration
Costpoint Content Management Integration (CMI) is an optional feature that enables access to a
content management system from within Costpoint application screens. It lets you view content in
the CMS, view and change content properties (metadata), and link content files to Costpoint
records.
Linking is done at the business entity level. For example, you can open a voucher in Costpoint
and link it to an image of a scanned invoice stored in the CMS. Regardless of the Costpoint
application that processes or views the voucher, the link to the invoice image is always visible
and accessible once it is created.
CMI also lets you use the CMS for file storage. You can import or export files between the CMS
and Costpoint and print to a CMS destination.
CMI supports Microsoft SharePoint 2010 and 2007, using a native SharePoint Web services API.
It supports other content management systems using the CMIS API, which is a new standard
specification developed by major CMS vendors and moderated by the OASIS consortium.
An administrator defines which of the Costpoint applications can interact with the CMS. None of
the applications are automatically linked to the CMS.
For more information on the CMS integration features provided by Costpoint, refer to the Deltek
Costpoint 7.1 Content Management Integration guide.
Deployment Options Technical Overview
23
Troubleshooting Costpoint
Troubleshooting Costpoint
Monitoring Utility
A typical Costpoint installation consists of multiple software components installed across more
than one physical machine, and depends on all of the components working together. Failure of
any component will hinder the functionality of Costpoint. To help avoid this problem, Costpoint
comes with a troubleshooting and monitoring tool called the Monitoring Utility.
The Monitoring Utility provides a single interface where you can monitor the overall status of
various Costpoint components. It checks for dependencies and verifies configuration. A system
administrator can use this tool to check for the most common configuration issues, and
troubleshoot production problems quickly and easily. The utility can also help with remote
diagnostics.
By reading the configuration of the entire system, the utility can generate detailed information
about various attributes that can impact the system’s behavior. This information is saved in XML
files that can be bundled and sent by email to the Deltek Customer Care team if needed.
For more information on how to use the Monitoring Utility, refer to the Deltek Costpoint
Monitoring Utility guide.
Deltek Customer Care
If you encounter a problem that you cannot diagnose or fix, contact Deltek Customer Care. To
help the Customer Care team solve the problem, provide as much information as possible about
your Costpoint configuration along with a description of the problem.
Here is a list of items that you need to provide to Deltek Customer Care:

Description of the problem, including when and under what circumstances it first occurred

Exact version of Costpoint you use and any recent changes to your Costpoint system,
including any hot fixes applied or configuration changes made

Results generated by the Monitoring Utility

Technical configuration of the product. This information is stored in the following
locations:


All files under C:\deltek\costpoint\71\applications\enterprise\properties

All files under C:\deltek\costpoint\71\bin
All log files of the servers and tools. This information is stored in the following location:

All files under C:\deltek\costpoint\71\logs
Exact folder names will vary based upon your installation.
Deployment Options Technical Overview
24
Appendix A: IIS Performance Optimization
Appendix A: IIS Performance Optimization
Running Costpoint in a WAN environment presents its own set of performance challenges,
typically related to the following two factors:

Network latency

Network bandwidth
Network latency is defined as the time it takes a signal (one bit of information) to travel between
the browser and the Web server. As distance between the browser and Web server increases
and/or additional hardware/software (for example, a Satellite connection) is added, the latency
typically increases as well.
Network bandwidth is defined as data volume (number of kilobytes) per second that can be
transferred between the browser and the Web server.
A network may have serious latency issues even though it may have more than sufficient
bandwidth or vice versa; although, it is rather common for both problems to be present in WAN
environments.
The information in the following sections will help you troubleshoot whether or not your network is
affecting Costpoint performance, and offer ways to optimize your environment to address any
problems you are experiencing.
Does Network Latency Affect My Costpoint Performance?
To determine if network latency is having an adverse impact on your Costpoint
performance, complete the following steps:
1. Measure how long it takes you to log into Costpoint.
2. On the browser's Tools menu, click Internet Options.
3. On the General tab of the Internet Options dialog box, click Settings.
4. For the Check for newer versions of stored pages setting, select Never.
5. Click OK.
6. Again, measure how long it takes you to log into Costpoint
If the first login time is significantly slower than the second login time, then you probably have a
latency issue. Read the Using IIS Page Expiration Options to Address Latency Issues section for
a possible solution.
After you’ve finished comparing the two log-in times, make sure to reset the Check for newer
versions of stored pages setting to Automatically.
Does Bandwidth Affect My Performance?
If you have access to network utilization tools, you can use them to diagnose network bandwidth
problems. Also, if you are able to log into Costpoint through Citrix so that the browser runs on the
same LAN as the WebLogic server, you might also be able to diagnose a bandwidth problem by
comparing how well your system performs when accessing Costpoint through Citrix with how well
it performs when accessing Costpoint over the network.
Deployment Options Technical Overview
25
Appendix A: IIS Performance Optimization
If you think that bandwidth restrictions are negatively impacting performance, read the Using IIS
and WebLogic Compression Options to Address Bandwidth Issues section for a possible solution.
Using IIS Page Expiration Options to Address Latency Issues
Much of the content that is loaded into the user’s browser when running Costpoint does not
change very often. Such “static” content includes image files, JavaScript files, and certain HTML
files. Normally, the browser keeps copies of these files in a cache on the user’s computer. If the
browser gets a request to load these files, it can get them out of the cache on the user’s
computer, rather than having to get them from the server, thus speeding the process of loading
the files into the browser.
But before the browser uses a file out of the cache, it first checks the server to see if there is a
newer version of the file on the server. If there is not a newer version, the browser goes ahead
and loads the cached copy. If there is a newer version, it gets the newer version from the server.
This process of checking for newer file versions on the server increases the time it takes for a
Costpoint screen to load into the browser. In fact, for small files, such as image files, this
roundtrip to the server to check for a newer version can take just as long as getting the original
file. For the static files mentioned above, particularly image files, checking for newer versions
every time the user opens Costpoint is unnecessary and delays loading pages.
Fortunately, IIS provides a way to prevent the browser from checking for newer versions of a file.
It does this by attaching an expiration period to the file, which tells the browser that the file will be
fresh until the end of the expiration period. If a file is in the cache and the browser determines that
the file has not yet expired, the browser uses the cached version without checking for a newer
version on the server, thereby saving a roundtrip to the server. If the browser determines that the
file has expired, it first checks the server for a newer version before using the cached copy.
Deltek recommends that you consider taking advantage of this Expiration setting. IIS provides
two options for attaching an expiration period to a file:

The first is the Expire after option, which allows you to specify a fixed amount of time
during which the file can remain in the cache before it expires (for example, a day or an
hour). When the fixed amount of time has elapsed, the browser checks for a newer
version of the file on the server. At that point, a new expiration period of the same fixed
length is attached to the file and the process starts all over again. This process repeats
itself indefinitely until the expiration setting is changed or turned off. For reasons
explained below, most Costpoint customers select the Expire after option.

IIS also provides an Expire on option, which allows you to specify a particular date on
which the file will expire. Before that date, the browser uses the cached copy without
checking for a newer version. After that date, the browser checks the server for a newer
version before using the cached copy. Note that if you select the Expire on option, the
expiration period runs only one time. When the period has elapsed, a new period does
not automatically start. To start a new expiration period, the Administrator has to enter a
new date and time manually. For this reason, the Expire on option only makes sense if
you want to set a very long expiration period (for example a year). Since most Costpoint
customers do not want to set such long expiration periods, the Expire on option is not
appropriate for them.
If you plan to use the IIS Expiration setting, the most important consideration to keep in mind is
that even the relatively static files in Costpoint sometimes do change. This can happen when
Deltek releases a new version of Costpoint or a hotfix to address a particular problem. In that
event, even if you load the updated files on your server, an individual Costpoint user at your
company will not automatically see the changes until the end of whatever expiration period has
been set. To see the changes immediately, the individual user needs to clear the cache on his or
her browser manually.
Deployment Options Technical Overview
26
Appendix A: IIS Performance Optimization
The fact that users need to clear their caches to see changes immediately determines how long
your expiration period should be. If it is acceptable to require all Costpoint users at your company
to clear their browser caches manually whenever Costpoint is updated, then it would make sense
to set a long expiration period (for example, two years from now). In that case, you might want to
choose the Expire on option discussed above.
For many companies, however, requiring users to clear their caches manually is not a realistic
alternative. Such companies want to set a much shorter expiration period. For these companies,
the Expire after option is the appropriate choice. The shorter expiration period should be long
enough to allow users to enjoy the performance benefit of using cached files, but short enough to
allow users to see updates quickly without having to clear their caches. A period somewhere
between 4 to 8 hours is suggested, keeping in mind that users will not see any updates to
Costpoint during that period. With an expiration period of 4 to 8 hours, an update or hotfix could
be applied in the evening and Costpoint users would see the fresh files the next morning, without
having to clear their caches.
While 4 to 8 hours may be a suitable period for HTML files and JavaScript files, a longer period
may be appropriate for image files. This is because image files are less likely to change, and the
risk posed by not seeing a change to an image file is not very serious. Because IIS allows you to
set different expiration periods for different folders, you can set a longer expiration period for
image files than for other files. You might also choose to set an expiration period only for image
files, and not for any other type of file.
To set the expiration time for the static files in Costpoint, complete the following steps:
1. In IIS Manager, right-click the Costpoint site, and click Properties on the shortcut menu.
The Costpoint site is the root Costpoint folder in IIS where Costpoint’s HTML files are
stored.
2. In the Properties dialog box, click the HTTP Headers tab.
3. Select the Enable content expiration option.
4. Take one of the following actions:

Click the Expire after option and specify a period of time (in minutes, hours, or days)
after which the content will expire. After the content has expired, the browser will
check for a newer version on the server, and the expiration period will start all over
again.

Click the Expire on option and specify a particular date and time on which you want
the content to expire. After that date, the browser will start checking the server for
newer versions again. With this option, the expiration period will not start all over
again.
5. Click OK.
6. To set a different expiration period for image files or to set an expiration period only for
image files, right-click the images folder, which is under the root Costpoint folder, and
follow the same steps described above.
Deployment Options Technical Overview
27
Appendix A: IIS Performance Optimization
Using IIS and WebLogic Compression Options to Address Bandwidth
Issues
Costpoint’s Web content is sent to the user’s browser in the form of HTTP traffic. IIS can be
configured to compress this HTTP traffic before it is sent to the browser. Compressing it can
reduce the volume of the HTTP traffic significantly, thereby conserving network bandwidth and
speeding the loading of Costpoint pages. This is particularly true when a user connects to
Costpoint through a low bandwidth connection. IIS offers three compression options:

Compress static content only

Compress dynamic content only

Compress both types of content at the same time
The term “static” refers to content that already exists, is stored by IIS, and is ready to be sent to
the browser. The term “dynamic” refers to content that is newly created by Costpoint in response
to a browser’s request.
If you are concerned that bandwidth restrictions may have an adverse impact on Costpoint
performance, Deltek recommends that you consider using the IIS compression feature for
Costpoint’s static content. IIS cannot be configured to compress dynamic content from WebLogic
server (the application server used by Costpoint). For dynamic content, Costpoint takes
advantage of the compression mechanism built into the HTTP protocol itself, which is fully
supported by WebLogic server.
Static Content Compression
Costpoint has three main types of static content:

HTML files

JavaScript files

Image files
Deltek recommends that you use the IIS compression feature for HTML files and JavaScript files.
Deltek does not recommend using IIS compression for image files.
When turned on for static content, the IIS compression feature compresses HTML files by default,
so no extra steps are needed to compress HTML files. To compress JavaScript files, IIS must be
manually configured to compress JavaScript files by editing the metabase.xml file. This takes a
little effort, but it is necessary in order to reap the significant benefit of using the IIS compression
feature.
To turn on the IIS compression feature for static content, complete the following steps:
1. In IIS Manager, right-click the Web Sites folder, and click Properties on the shortcut
menu.
2. In the Properties dialog box, click the Service tab.
3. Select the Compress static files option in the HTTP Compression section.
4. Restart IIS for the change to take effect.
Deployment Options Technical Overview
28
Appendix A: IIS Performance Optimization
Content Compression
As mentioned above, Costpoint has its own built-in compression feature for dynamic content. This
feature can be switched on or off by setting the gzip property in the Enterprise Properties file,
which is in the Properties folder under the DEWebApp folder of your Costpoint installation.
By default, the gzip property is set to false. To turn on the compression feature, set it to true. The
change will not take effect until you either restart WebLogic or use the Reload Global Settings
application.
Overhead Considerations
Before adopting the compression solution described in the previous sections, you should be
aware that compression options may involve some overhead for both the server and the browser.
On the server side, compressing dynamically generated files in WebLogic typically involves more
overhead than compressing static files in IIS, because static file compression uses caching.
In cases where low bandwidth is an issue, the benefit provided by compression usually far
outweighs the overhead cost. Moreover, such overhead can be mitigated by using a faster PC on
either the client or the server, depending on where the overhead is more noticeable. Testing is
needed in each particular environment to evaluate if compression improves overall performance.
Deployment Options Technical Overview
29
Appendix B: Costpoint Reporting
Appendix B: Costpoint Reporting
This section briefly describes the changes to the Costpoint Web Reporting component.
Changes to Reporting
Costpoint 7.1 uses BIRT reporting for generating Costpoint Reports. BIRT is a java-based
technology that runs within the WebLogic server. Actuate is no longer used.
Configuration
The configuration of the reporting component is much simplified in Costpoint 7.1 and later
versions. Actuate is replaced with BIRT, which runs within the WebLogic server that hosts the
other J2EE components of the Costpoint product. A single app tier installer is used for installing
the WebLogic server, J2EE, and reporting components—making the overall configuration simpler.
If you are upgrading from a previous version of Costpoint to version 7.1, you should consider
replacing the Actuate servers with Costpoint WebLogic servers so that the overall bandwidth to
serve user requests is not reduced. If you are using cluster, you should add additional nodes, or
you could add dedicated servers to run processes.
The Costpoint installer takes care of exporting archived reports stored in the Actuate
encyclopedia into the new BIRT repository.
Report archives created by Costpoint Users are stored as binary files within the file system of the
operating system. (Actuate stored this information in Encyclopedia.) It is important to allocate
enough disk space to meet the growing size of archived reports. The default location for storing
archived reports is C:\deltek\costpoint\71\applications\birt\report\archive, but you can use the
Configuration Utility to change this location.
To support server-side printing, the appropriate drivers have to be installed and configured on all
WebLogic servers.
Deployment Options Technical Overview
30
Deltek is the leading global provider of enterprise software and information solutions for government
contractors, professional services firms and other project- and people-based businesses. For decades, we
have delivered actionable insight that empowers our customers to unlock their business potential. 20,000
organizations and millions of users in over 80 countries around the world rely on Deltek to research and
identify opportunities, win new business, recruit and develop talent, optimize resources, streamline
operations and deliver more profitable projects. Deltek – Know more. Do more.®
deltek.com
Was this manual useful for you? yes no
Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Download PDF

advertising