Production environment (Cloud)

De Wiki1000

Overview

A production environment is a set of infrastructure resources, Cloud Service and Sage 1000 components which can serve a single Sage FRP 1000 Application.

A production environment may be dedicated to supports single tenant or multi tenants configuration.

Depending of the deployment requirements, a production environment may be scaled to support :

A production environment involve one or several of the following infrastructure resources :

  • Group of resource
  • Virtual network
  • Virtual machine
  • Virtual SQL Server
  • SQL Azure Database
  • Storage account
  • key vault
  • Availability set
  • Load balancer
  • IP public address

A production environment is deployed as a single group of resource :

In this schematic a blue box represents a Microsoft Azure service.

The architecture is composed of a front which interacts with the users and of a back which executes the batch and processing Tasks. The two parts communicate using Azure Queues and messages exchange. Different queues are used regarding of the task type to optimize latency.

The database storage use SQL Database. The medium and large environment used at least two databases (master and production) and small environment may used only one for cost saving.

A multi tenants environment may uses several production databases (each multi tenant) to overcome the Azure database size limitation.

A private storage account is used to store artifacts and to provide the queue service.

A public storage account provide queue service for tenants. Each tenant have a set of private queues (at least one) which is used for exporting data. Private queues are accessed with Microsoft Shared Access Signature (SAS). Note that the importing queue may be common to several tenants.

A Azure load balancer (which is stateless) balance the load on the front Sage FRP 1000 services. Because the Sage FRP 1000 Services are state full they reroute the requests (at the tcp level) to the correct service which owns the user session. The reroute information is encoded in a encrypted cookie session.

A Key vault is used to store securely all secrets.

A production environment may be interfaced with App Insights for monitor and alerts. The Sage frp 1000 service provide a number of metrics and indicators which can be send to App Insights.

See also :