| type=page |
| status=published |
| title=Checklist for Deployment |
| prev=planning.html |
| ~~~~~~ |
| |
| = Checklist for Deployment |
| |
| [[GSPLG00003]][[abfeq]] |
| |
| |
| [[checklist-for-deployment]] |
| == 3 Checklist for Deployment |
| |
| This appendix provides a checklist to get started on evaluation and |
| production with the {productName}. |
| |
| [[sthref7]][[checklist]] |
| |
| === Checklist |
| |
| [[sthref8]][[sthref9]] |
| |
| Table 3-1 Checklist |
| |
| [width="100%",cols="<23%,<77%",options="header",] |
| |=== |
| |Component/Feature |Description |
| |Application |
| a|Determine the following requirements for the application to be deployed. |
| |
| * Required/acceptable response time. |
| * Peak load characteristics. |
| * Necessary persistence scope and frequency. |
| * Session timeout in `web.xml`. |
| * Failover and availability requirements. |
| |
| For more information see the link:performance-tuning-guide.html#GSPTG[ |
| {productName} Performance Tuning Guide]. |
| |
| |Hardware |
| a| |
| * Have necessary amounts of hard disk space and memory installed. |
| * Use the sizing exercise to identify the requirements for deployment. |
| |
| For more information see the link:release-notes.html#GSRLN[{productName} Release Notes] |
| |
| |Operating System |
| a| |
| * Ensure that the product is installed on a supported platform. |
| * Ensure that the patch levels are up-to-date and accurate. |
| |
| For more information see the link:release-notes.html#GSRLN[{productName} Release Notes] |
| |
| |Network Infrastructure |
| a| |
| * Identify single points of failures and address them. |
| * Make sure that the NICs and other network components are correctly configured. |
| * Run `ttcp` benchmark test to determine if the throughput meets the requirements/expected result. |
| * Setup `ssh` based your preference. |
| |
| For more information see the link:installation-guide.html#GSING[{productName} Installation Guide]. |
| |
| |Back-ends and other external data sources |
| |Check with the domain expert or vendor to ensure that these data sources |
| are configured appropriately. |
| |
| |System Changes/Configuration |
| a| |
| * Make sure that changes to `/etc/system` and its equivalent on Linux |
| are completed before running any performance/stress tests. |
| * Make sure the changes to the TCP/IP settings are complete. |
| * By default, the system comes with lots of services pre-configured. Not |
| all of them are required to be running. Turn off services that are not |
| needed to conserve system resources. |
| * On Solaris, use `Setoolkit` to determine the behavior of the system. |
| Resolve any flags that show up. |
| |
| For more information see the link:performance-tuning-guide.html#GSPTG[{productName} Performance Tuning Guide]. |
| |
| |Installation |
| a| |
| * Ensure that these servers are not installed on NFS mounted volumes. |
| * Check for enough disk space and RAM when installing {productName}. |
| |
| |{productName} Configuration |
| a| |
| * Logging: Enable access log rotation. |
| * Choose the right logging level. WARNING is usually appropriate. |
| * Configure Jakarta EE containers using the Administration Console. |
| * Configure HTTP listeners using the Administration Console. |
| * Configure ORB threadpool using the Administration Console. |
| * If using Type2 drivers or calls involving native code, ensure that |
| mtmalloc.so is specified in the LD_LIBRARY_PATH. |
| * Ensure that the appropriate persistence scope and frequency are used |
| and they are not overridden underneath in the individual Web/EJB modules. |
| * Ensure that only critical methods in the SFSB are checkpointed. |
| |
| For more information on tuning, see the link:performance-tuning-guide.html#GSPTG[{productName} Performance Tuning Guide]. |
| |
| For more information on configuration, see the link:administration-guide.html#GSADG[{productName} Administration Guide]. |
| |
| |Load balancer Configuration |
| a| |
| * Make sure the Web Server is installed. |
| * Make sure the load balancer plug-in into the Web Server is installed. |
| * Make sure patch checks is disabled. |
| * Lower the value of the `KeepAliveQuery` parameter. The lower the |
| value, the lower the latency is on lightly loaded systems. The higher |
| the value, the higher the throughput is on highly loaded systems. |
| |
| |Java Virtual Machine Configuration |
| a| |
| * Initially set the minimum and maximum heap sizes to be the same, and |
| at least one GB for each instance. |
| * See http://www.oracle.com/technetwork/java/javase/tech/vmoptions-jsp-140102.html[ |
| Java Hotspot VM Options] |
| (`http://www.oracle.com/technetwork/java/javase/tech/vmoptions-jsp-140102.html`) |
| for more information. |
| * When running multiple instances of {productName}, consider creating |
| a processor set and bind {productName} to it. This helps in cases |
| where the CMS collector is used to sweep the old generation. |
| |
| |Configuring time-outs in the load balancer |
| a| |
| * Response-time-out-in-seconds - How long the load balancer waits before |
| declaring a {productName} instance unhealthy. Set this value based on |
| the response time of the application. If set too high, the Web Server |
| and load balancer plug-in wait a long time before marking a {productName} instance as unhealthy. If set too low and {productName}'s |
| response time crosses this threshold, the instance will be incorrectly |
| marked as unhealthy. |
| * Interval-in-seconds - Time in seconds after which unhealthy instances |
| are checked to find out if they have returned to a healthy state. Too |
| low a value generates extra traffic from the load balancer plug-in to |
| {productName} instances and too high a value delays the routing of |
| requests to the instance that has turned healthy. |
| * Timeout-in-seconds - Duration for a response to be obtained for a |
| health check request. Adjust this value based on the traffic among the |
| systems in the cluster to ensure that the health check succeeds. |
| |
| |Configuring time-outs in {productName} |
| a| |
| * Max-wait-time-millis - Wait time to get a connection from the pool |
| before throwing an exception. Default is 6 s. Consider changing this |
| value for highly loaded systems where the size of the data being |
| persisted is greater than 50 KB. |
| * Cache-idle-timeout-in-seconds - Time an EJB is allowed to be idle in |
| the cache before it gets passivated. Applies only to entity beans and |
| stateful session beans. |
| * Removal-timeout-in-seconds - Time that an EJB remains passivated (idle |
| in the backup store). Default value is 60 minutes. Adjust this value |
| based on the need for SFSB failover. |
| |
| |Tune VM Garbage Collection (GC) |
| a| Garbage collection pauses of four seconds or more can cause intermittent |
| problems in persisting session state. To avoid this problem, tune the VM |
| heap. In cases where even a single failure to persist data is |
| unacceptable or when the system is not fully loaded, use the CMS |
| collector or the throughput collector. |
| |
| These can be enabled by adding: + |
| `<jvm-options>-XX:+UseConcMarkSweepGC</jvm-options>` |
| |
| This option may decrease throughput. |
| |=== |