Skip to main content

Infrastructure

The whole infrastructure is hosted on Azure.

Front facing parts

Azure Front Door

All *.ng-sos.com and *.*.ng-sos.com DNS records are aiming at Azure Front Door (AFD). AFD is then forwarding the communication to respective container apps, azure fuctions, virtual machines or storage accounts. All cashing and TLS termination is handled by AFD.

Networking

All applications are part of the same virtual private network. Primary use of VPN is the use of NAT Gateway, which ensure all communication comming from the services is wired through one of 2 dedicated public IP addresses for outgoing communication. There is also one fixed IP address for video server, used for utilization of UDP ports range for RTC.

Container apps

The majority of applications is hosted as container apps. The applications, using their short names, are following:

  • admin
  • apidoc
  • cms
  • eed
  • ems
  • identity
  • portal
  • webapp

Azure functions

There are currently 3 azure functions services being used with following short names:

  • ems-functions
  • els-functions
  • verification

Virtual machines

Newly introduced is virtual machine handling video call processing and recording. Due to need for wide range of open ports and graphical processing, the video server is hosted on dedicated VM.

Data

There are three kinds of data storage services.

Storage account

This service is used to store live video recordings, chat media files, regions' metadata, and other, similar kinds of data.

Azure cosmos DB for MongoDB

MongoDB interface upon CosmosDB. Primary storage for agency configurations, users, incidents, etc.

Azure Key Vault

The keyvault is used for storing the certificates, secure files and other highly sensitive data.

Log Analytics workspace

Where all the logs, performance counters and console outputs meet. They are parsed and visualized via Application Insights. They are also used in availability and health alerts.