How to deploy DataSunrise in Azure
Nowadays Cloud Computing technology is the most efficient and convenient way to run the production environment in. Many companies are willing to store their data and deploy applications to the cloud to be able to build, run and manage their services across multiple clouds using a great variety of tools for data store, analysis and management. Microsoft Azure provides users with 4 different forms of cloud computing: infrastructure as a service (IaaS), platform as a service (PaaS), software as a service (SaaS) and serverless that are the key solution to efficient production deployment.
Manual deployment of a High Availability (HA) configuration requires accurate settings implementation with all the dependencies applied correctly. DataSunrise provides a dedicated script that you can use to deploy DataSunrise in High Availability configuration automatically within the Microsoft Azure service based on the Azure Resource Manager (ARM) template.
The DataSunrise infrastructure includes:
- DataSunrise autoscaling nodes (instances).
- Configuration and audit storages based on Azure Databases.
- Azure’s Load balancer is used to distribute the traffic between living nodes.
All these components are located inside a Custom Virtual Network with the specified subnets.
Preparing for Deployment of an ARM template
Template source files are located in DataSunrise GitHub repository https://github.com/datasunrise-github/azure-template. There are some entities that should exist in your Azure environment before you start the deployment process. Here is the list of required items:
- Azure resource group where all the configured resources will be deployed;
- Azure resource group where the Database that you will protect is located. This resource group should also include VNET and Subnets;
- Azure virtual network (VNET) that will be used as the environmental network that will be used by the template resources;
- Subnets within the VNET that you will designate for your DataSunrise cluster running in the specified VNET.
Your Azure account subscription must be assigned to the Owner role to be able use Managed Identity resource to connect to Azure CLI and to deploy necessary Azure resources for the successful DataSunrise Suite implementation. You can check it in Subscriptions -> <your-subscription> -> Access control -> Role assignments.
To deploy DataSunrise in HA configuration, choose the Template deployment inside the selected resource group. Load the prepared .json file in the editor.
As it was earlier mentioned, ARM template deployment is performed with minimum user interference. Just follow the steps of the deployment wizard and fill out the required fields (note the prompts).
Basic Information (Basics).
Select the available subscription type of your Azure account that is also used by protected Database. The resource group name and location will be set automatically.
Virtual Machine Configuration
Note: please enter the most convenient Vm Size value depending on your location and availability set.
Enter the subnets environment information.
Note that in our case, Azure PostgreSQL Database is used as the Dictionary and Audit Storage Database.
Starting Stack Deployment
After all the parameters are filled in, check the Agreement checkbox and click the Purchase button.
You will see the progress of ARM template deployment. Once the deployment has been completed, “Your deployment is complete” message will appear. Click “Go to resource group” to view the created resources.
Any possible errors will be displayed in the Operation details. Most often errors occur because of incorrect parameters used and sometimes because required objects were not created properly.
DataSunrise Configuration and Audit Databases are configured on PostgreSQL server.
You can connect to DataSunrise Web Console by connecting to the LoadBalancer public IP address 11000 port. It will automatically connect to one of the configured nodes.
The Target DB will be automatically added to the DataSunrise Suite server.
To start using DataSunrise as the firewall, connect to the LoadBalancer public IP address proxy port (specified as parameter). For example:
psql -h <loadbalancer ip address> -p 5432 -U <your user> -d <your db>.