High availability deployment for production
Consider these best practices when planning for high availability (HA) in your deployment.
High availability overview
The application employs a standard three-tier architecture: client, application server, and database. Clients include smartphones, tablets, laptops, and desktops.
To achieve high availability, you can use multiple servers for each server and database component, and load balancers where needed. For BMC Digital Workplace and Smart IT server, the server grouping is a cluster. For AR System server with Remedy ITSM, the server grouping is a server group. For MongoDB, the server grouping is a replica set. For MongoDB, a load balancer is not needed, because the primary server in the replica set performs the load balancing. The following diagram illustrates the communication between components in a typical production deployment for BMC Digital Workplace Basic. This diagram does not include either BMC Virtual Chat or BMC Digital Workplace Catalog , both of which are included with BMC Digital Workplace Advanced.
Deployment architecture diagram
To simplify the diagram, BMC Remedy Single Sign-On (BMC Remedy SSO) is not included.
BMC Digital Workplace integrates with other systems by using a variety of providers. The application can expose aspects of other IT applications through the UI, or it can use other applications to aid or enhance core BMC Digital Workplace functionality. For example, BMC Digital Workplace integrates with modules in BMC Remedy IT Service Management (Remedy ITSM) to submit service requests and to search for knowledge articles. Providers handle integrations with BMC Digital Workplace.
The following diagram includes all components for BMC Digital Workplace Advanced, with the exception of BMC Remedy SSO.
Deployment architecture diagram for BMC Digital Workplace Advanced
Clusters and server groups
For high availability and performance, each type of server should be set up as a cluster behind a load balancer. For Remedy servers, these clusters are referred to as server groups. For MongoDB, the cluster is a MongoDB replica set. For MongoDB, the primary server in the replica set can perform the function of a load balancer. For information about deploying a MongoDB replica set for use with BMC Digital Workplace, see Deploying MongoDB as a replica set.
Remedy Single Sign-On
The following diagram provides an overview of the RSSO architecture.
In this diagram, BMC Digital Workplace refers to both the BMC Digital Workplace and the BMC Digital Workplace Catalog servers.
For more information about RSSO, see the following topics in the Remedy Single Sign-On documentation:
- Remedy SSO overview
- Remedy SSO architecture
- Integrating Remedy SSO with Smart IT or BMC Digital Workplace
Social Event Manager plugin
The Social Event Manager plugin brings data from BMC Remedy IT Service Management into BMC Digital Workplace and Smart IT as social events, as illustrated in the following diagram:
The Social Event Manager plugin runs on the same physical or virtual server as BMC Remedy IT Service Management. However, the Social Event Manager plugin is not part of AR System server; it is installed by the User Experience patch to support Smart IT and BMC Digital Workplace
Communication to external networks
Communication to an external network is required for the following capabilities:
- Notification to mobile clients - Google cloud messaging provides notifications to Google Android devices. Apple Push Notification Service (APNS) provides notifications to Apple iOS devices.
- Location awareness - Google Maps APIs provide the geographic maps displayed on all clients.
If you do not use either notification to mobile clients or location awareness, your deployment can remain fully within your internal network. For details about ports used for communication, see Required ports.
BMC Digital Workplace mobile applications
A native mobile app for BMC Digital Workplace is available, which you can distribute to your users as described in Deploying clients. For more information about device compatibility, see System requirements. For more information about deploying a custom-branded app to your users, see Deploying clients.