Mobile operations and offline data management system (Kubernetes)
The mobile operations and offline data management system pattern is typically deployed to Kubernetes using the ArcGIS Enterprise on Kubernetes software.
ArcGIS Enterprise on Kubernetes uses microservices and containerization to provide a cloud native architecture, running either on your organization’s Kubernetes platform or in your cloud provider’s Kubernetes service. It uses containers to split GIS processes into microservices, each of which performs a discrete, focused function. Each microservice runs in a container that packages everything necessary to run an application. One or more containers is housed in a pod that includes storage resources, a network identity, and a set of rules for how the container is to be run. The Kubernetes cluster orchestrates and manages the ArcGIS Enterprise on Kubernetes containers.
ArcGIS Enterprise on Kubernetes is for organizations that have invested in Kubernetes to orchestrate and manage their containerized applications.
Related resources:
Base architecture
The following is a typical base architecture for a mobile operations and offline data management system deployed on Kubernetes.
This diagram should not be taken as is and used as the design for your system. There are many important factors and design choices that should be considered when designing your system. Review the using system patterns topic for more information. Additionally, the diagram depicted below delivers only the base capabilities of the system; additional system components may be required when delivering extended capabilities.
Key components of this architecture include:
- A foundational deployment of ArcGIS Enterprise on Kubernetes containers to the Kubernetes cluster. This includes four categories of pods that represent various system functions. For more information, see the ArcGIS Enterprise on Kubernetes documentation.
- A load balancer is required to direct traffic across each worker node. For more information, see the ArcGIS Enterprise on Kubernetes system network requirements.
- Enterprise geodatabases are commonly used in mobile operations and offline data management systems for persisting user-managed (editable) data. Enterprise geodatabases are information models that add functionality to relational database management systems (DBMS). The enterprise geodatabase supports advanced data models, as well as advanced data editing and management capabilities such as support for a long transaction model.
- The relational store can be used for persisting ArcGIS-managed data that can be edited through hosted feature layers. The base deployment also provides hosted vector tile layers and hosted (map) tile layers. Feature, vector tile, and (map) tile layers can be downloaded for use offline.
- The object store provides ArcGIS-managed storage for uploaded and saved content, hosted tile and image layer caches, and geoprocessing output. As of ArcGIS Enterprise 11.2 the object store can be configured to use cloud-native storage from several supported service providers.
- ArcGIS Online, Esri’s SaaS infrastructure, which typically provides basemaps (such as imagery basemaps), reference data (such as places), as well as other location services (including geocoding and search) for this system. Alternatively, it is possible for the organization to host and manage their own location services instead of using Esri’s SaaS system. See the location services system pattern for more information.
- There are several applications commonly used in this pattern. Mobile and desktop-based native applications make use of local storage, which ArcGIS uses for vector and map (image) tiles as well as mobile geodatabases persisted in SQLite databases. Game engine-based applications also make use of local storage for vector and map (image) tiles. ArcGIS web applications do not support offline data. Learn more about applications used in mobile operations and offline data management systems.
Key interactions in this architecture include:
- Client applications communicate with enterprise data services as well as location services over HTTPS, typically via stateless REST APIs. This pattern makes heavy use of Feature Services for editing specifically, though several other service types are typically used as well.
- ArcGIS Enterprise GIS services may persist TCP connections to the database management system (DBMS) hosting the enterprise geodatabase. Database client software/drivers are included in ArcGIS Enterprise on Kubernetes for all supported database management systems.
- References to location services hosted and managed by ArcGIS Online (e.g., basemaps) are typically registered and made available for use within ArcGIS Enterprise. Some services are referenced automatically when installing ArcGIS Enterprise, though additional sharing of content and services between these two systems can be performed manually or automatically. See configuring ArcGIS Online utility services and distributed collaboration.
Additional information on interactions between ArcGIS Enterprise components can be found in the ArcGIS Enterprise on Kubernetes product documentation.
Capabilities
The capabilities of the mobile operations and offline data management system on Kubernetes are described below. See the capability overview and comparison of capability support across deployment patterns for more information.
Capabilities used in a mobile operations and offline data management system, but typically provided by other systems, such as basemaps, geocoding, and other location services provided by a location services system are not listed below. Learn more about related system patterns.
Base capabilities
Base capabilities represent the most common capabilities delivered by mobile operations and offline data management systems and that are enabled by the base architecture presented above.
- Offline data and maps allow for data and maps to be taken offline and used without a network connection. ArcGIS Enterprise on Kubernetes supports offline data, offline web maps, and mobile packages.
- Mapping and visualization allow users to create as well as interact with 2D maps and 3D scenes. Learn more about maps and visualization.
- Basemaps are web-based layers that provide overall visual context for maps and scenes. While basemap services are typically provided by a location services system, special consideration is required in this system to make basemaps available offline. Learn more about basemap layers.
- Geocoding is the process of converting text to an address and a location. While geocoding services are typically provided by a location services system, special consideration is required in this system to make geocoding available offline. Learn more about geocoding.
- Routing and directions involve finding the best path from an origin to a destination for an individual or single vehicle. While route and direction services are typically provided by a location services system, special consideration is required in this system to make routing and directions available offline. Learn more about route and directions.
- Work assignment and dispatching ensures the right worker goes to the right place with the right tools to do the right job. Work assignment and dispatching with ArcGIS Workforce provides a common view across the field and the back office, helping to facilitate efficient mobile operations. Assigning and dispatching work can also be done using the inbox feature of ArcGIS Survey123.
- Location sharing enables organizations to record where mobile workers are and where they have been. Location sharing is an organization-wide extension to ArcGIS Enterprise, allowing you to record where users are and where they have been. Enabling location sharing creates a location sharing layer to which licensed users in your organization can upload their locations using the Field Maps, QuickCapture, Survey123, or Indoors mobile app. Location sharing in ArcGIS Enterprise on Kubernetes leverages the spatiotemporal store.
- Data editing in the Kubernetes deployment pattern is provided by the service-based data access and editing features of ArcGIS Enterprise. This includes editing of geometry and attributes.
- Data import and export in bulk is supported through the import and export tools that work directly against feature services or an enterprise geodatabase.
- Edit tracking and auditing enables automatic recording of information about any data inserts or updates using editor tracking in ArcGIS Enterprise.
- Short transaction management enables lock-free, short transaction editing using feature services hosted in ArcGIS Enterprise and using data stored in the ArcGIS Data Store relational data store or an enterprise geodatabase.
- Long transaction management allows for multiple states of your data to by edited and managed concurrently using the branch versioning feature of enterprise geodatabases. Branch versioning also supports conflict detection and reconciliation, empowering multiple individuals and teams to work collaboratively on shared datasets. Long transaction support through versioning is supported in the enterprise database, not on individual databases running offline on mobile devices.
- Spatial and attribute rules enhance the editing experience and improve geospatial data integrity using attribute rules in an enterprise geodatabase. Rules are not included in the offline data; they are applied when data is synchronized with the back-office system.
- Data distribution and replication allows for copying or synchronizing data between two or more enterprise geodatabases or GIS systems. ArcGIS Enterprise provides multiple approaches to distributing data, including replication, feature synchronization, and distributed collaboration.
- Data archiving and history enables the capture, management, and analysis of data changes made over time using geodatabase archiving.
Extended capabilities
Extended capabilities are typically added to meet specific needs or support industry specific data models and solutions and may require additional software components or architectural considerations.
- Indoor GIS extends ArcGIS Enterprise with ability to create and manage floor plan data, map building interiors, and share floor-aware maps and services. ArcGIS Indoors Mobile is a native mobile application for iOS and Android that supports viewing and interacting with indoor maps in various ways, including exploring, searching, saving, and sharing points of interest, reporting incidents related to indoor assets, and getting landmark-based directions. With the availability of an indoor positioning system (IPS), ArcGIS Indoors Mobile allows you to explore indoor spaces where you can view your real-time location inside buildings. Learn more about ArcGIS Indoors Mobile.
- Indoor positioning allows you to locate yourself and others inside a building in real time. Similar to GPS, an indoor positioning system (IPS) puts a blue dot on indoor maps and uses location services to help you navigate to any point of interest or destination. Learn more about ArcGIS IPS.
The following capabilities are not supported using Kubernetes as the exclusive deployment pattern. Support for these extended capabilities is possible by deploying ArcGIS Enterprise, specifically ArcGIS Server, on Windows or Linux and federating those ArcGIS Server sites with the Portal for ArcGIS component running in your Kubernetes-based deployment of ArcGIS Enterprise. See the Windows/Linux deployment pattern capabilities, as well as federating a server site documentation for more information.
Considerations
The considerations below apply the pillars of the ArcGIS Well-Architected Framework to the mobile operations and offline data management system pattern on Kubernetes. The information presented here is not meant to be exhaustive, but rather highlights key considerations for designing and/or implementing this specific combination of system and deployment pattern. Learn more about the architecture pillars of the ArcGIS Well-Architected Framework.
Reliability
Reliability ensures your system provides the level of service required by the business, as well as your customers and stakeholders. For more information, see the reliability pillar overview.
- Data integrity and recoverability is typically of concern with this type of system.
- SLAs requiring high levels of availability are common.
- Architecture profiles are predefined deployment profiles that correlate to varying levels of redundancy across pods and provide flexibility across several known variables such as requirements for hardware, redundancy, and organizational use.
- Consider the Enhanced availability architecture profile when increased and expanded redundancy across critical pods is required.
- System-level backup and restore is also supported.
- Taking data offline introduces important architectural considerations related to reliability. These are in large part related to the approach used for downloading offline maps, specifically the ahead-of-time vs on-demand offline map options. On-demand offline maps are flexible because a user can request any area to download, but this means that each offline map must be generated at the time it is requested. In addition to introducing a delay before the offline map can be downloaded, this may also put excessive load on the server during certain times of day. Consider user workflows and approaches for downloading offline maps when architecting for reliability.
Security
Security protects your systems and information. For more information, see the security pillar overview.
- Mobile operations and offline data present unique security considerations. Learn more about ArcGIS secure mobile implementation patterns.
- Authentication and authorization are almost always required, apart from a crowd sourcing style collection scenario (though these are more commonly deployed using SaaS or PaaS).
- Access control is possible, and frequently implemented, at all system tiers.
- Advanced, fine-grained access control such as row or column-level security is typically achieved using Server Object Interceptors and/or partner solutions.
Learn more about ArcGIS Enterprise security best practices and implementation guidance.
Performance and scalability aim to optimize the overall experience users have with the system, as well as ensure the system scales to meet evolving workload demands. For more information, see the performance and scalability pillar overview.
- Taking data offline introduces important architectural considerations related to performance.
- Consider the approach used for downloading offline maps. On-demand offline maps are flexible because a user can request any area to download, but this means that each offline map must be generated at the time it is requested. In addition to introducing a delay before the offline map can be downloaded, this may also put excessive load on the server during certain times of day. With ahead-of-time offline maps the owner of a web map must first define geographic areas of the web map to be packaged as offline maps. Ahead-of-time offline maps are quick to download and start using because they are generated before they are needed. Learn more about ahead-of-time and on-demand offline map options, as well as ability to use update packages with ahead-of-time offline maps.
- Consider other optimizations for offline maps, such as reducing the size of offline maps and the time needed to generate, download, and later synchronize them.
- ArcGIS Enterprise on Kubernetes deployments can be scaled horizontally by adjusting the number of pods as well as vertically by adjusting the memory and CPU. Scaling is typically directed and/or reactive, as in most cases the userbase is well known and the demands on the system evolve predictably. One notable exception can be system load required for preparing offline maps for download, either ahead-of-time or on-demand. Consider user workflows and approaches for downloading offline maps when architecting for performance and scalability.
Automation
Automation aims to reduce effort spent on manual deployment and operational tasks, leading to increased operational efficiency as well as reduction in human introduced system anomalies. For more information, see the automation pillar overview.
- Data management typically involves moderate-to-heavy use of automation, often leveraging Python scripting to perform repeatable tasks or reporting on the enterprise geodatabase. See the ArcGIS API for Python for more details.
- Most offline map and data preparation is typically handled automatically by ArcGIS Enterprise, though scheduling of ahead-of-time offline map packages is configurable by the map owner. Learn more about offline maps.
- Workflow automation is common, especially when coupled with a data editing and management system for situations involving large groups of editors working in concert to edit and maintain shared or related datasets. See ArcGIS Workflow Manager for more information on this extended capability.
- System administration automation is handled in large part by Kubernetes.
- ArcGIS Enterprise on Kubernetes includes support for Helm-based deployment and configuration.
Integration
Integration connects this system with other systems for delivering enterprise services and amplifying organizational productivity. For more information, see the integration pillar overview.
- Integration with enterprise mobile app management systems, including mobile device management (MDM), mobile application management (MDM), and mobile content management (MCM) systems, is common. Learn more in the ArcGIS secure mobile implementation patterns technical paper.
- Integration with other information systems such as Enterprise Asset Management (EAM), Customer Relationship Management (CRM), and Computer-Assisted Mass Appraisal (CAMA) systems is common.
- Data exchange and alignment between systems is very typical.
- Use of ArcGIS APIs and SDKs is quite common.
- 3rd party integration tools and applications are also available.
Observability
Observability provides visibility into the system, enabling operations staff and other technical roles to keep the system running in a healthy, steady state. For more information see the observability pillar overview.
- Successful operation of this system pattern typically benefits from a good understanding of how data is being used in the field and by whom. This may include, but is not limited to, who is taking data offline, when they are taking it offline, what data they are taking offline, and how.
- Field editing scenarios involve many of the same observability considerations as data editing and management systems.
- ArcGIS Enterprise on Kubernetes can be observed in a variety of ways including system logs and health monitoring through ArcGIS Enterprise Manager. Monitoring of system availability, performance, and usage is most critical to this system pattern. In addition to monitoring the ArcGIS Enterprise software, it is important to monitor all supporting components and infrastructure such the Kubernetes environment, databases and other data stores, as well as compute, network, security, and other infrastructure. Learn more about monitoring system health and reliability.
- Some extended capabilities of this system pattern, such as workflow management and automation with ArcGIS Workflow Manager, have additional observability support. Please review the corresponding product documentation for more information.
- Additional observation of user logins and account changes may be possible through the configured identity provider when using SAML and/or OpenID Connect logins. Additional observation of mobile devices, content, and applications may also be possible when integrated with enterprise mobile app management systems.
Other
Additional considerations for designing and implementing a mobile operations and offline data management system on Kubernetes include:
- Successful operation requires strong understanding of GIS, IT, and database concepts as well as technology. This includes knowledge and skills specific to the selected database management system (DBMS), as well as Kubernetes.
- For organizations that have the resources and staff to deploy and maintain enterprise software on Kubernetes, the ArcGIS Enterprise on Kubernetes deployment option separates IT administration and maintenance from GIS administration.
- Data governance and alignment with IT policies and roles, such as data steward and database administrator, should strongly be considered when implementing this system pattern.
- Enterprise mobile app management should be considered for systems involving moderate to large workforces, as well as strict SLAs, security, and/or other technical requirements. Learn more in the ArcGIS secure mobile implementation patterns technical paper.
Related resources: