BI Infrastructure setup in Azure for Self Hosted BI¶
This section guides you through the provisioning and configuration of Azure resources in the customer tenant.
An overview of the components to be created are on the right side of this image:
Please note that this is a guideline, and the setup will still need to be verified by your company security board to ensure your company standards and policies have been adhered to. IFS takes no responsibility in any data breach for any artifact hosted outside of the IFS domain.
- IFS Cloud version should be on or later than
- 21R2 - SU10 and up
- 22R1 - SU4 and up
- 22R2 - All versions
- 23R1 - All versions
- An Azure Subscription in the customer tenant
- A VPN connection between IFS network and customer’s
- This can be requested through https://support.ifs.com
- Resources within the customer subscription
- A Service Principal
- To be set as Admin of AAS and Power BI workspace
- Azure VNET Subnet
- To connect the SQL Database and Azure Data Factory
Create a resource group¶
IFS recommends creating a separate resource group for IFS BI related resources.
Create a virtual network¶
If there is no Virtual network to host the Azure Data Factory, one will need to be created.
- Find Virtual network resource and create
- Provide Name
- Configure subnet
- Click on subnet and add service endpoints to subnet
Select Microsoft.Sql and Microsoft.Storage.
- Check subnet settings
Create a blob container¶
Create a new blob container to host the ODAC installation files. This will be used by the Azure Data Factory SSIS Integration runtime.
Create a new storage account first, if one does not exist.
Create blob container inside the storage account. Select Containers on left pane.
- Provide a name
Upload ODAC installation files to the blob storage¶
Upload the two files to the container using the upload button.
Once uploaded the files appear like this in the container.
Obtain SAS URL for the blob storage¶
Once the files are copied to the blob storage, click on "Shared Access tokens" on the left pane.
Generate a new SAS token and URL
The SAS URL requires the following Permissions: Read Add Create Write Delete.
Give a sufficient expiry date.
Save the URL for later use.
Create Azure SQL¶
Create the Azure SQL sever instance. This will be holding the data warehouse and the SSIS DB that will be automatically created by the ADF. Azure SQL server instance does not cost, cost is applicable on the databases that we create under it.
Go to add new resource to resource group and select Azure SQL
Select "Database server" from the Resource Type option
Provide a server name and use SQL authentication. Keep the credentials to be used later.
- After the database is provisioned, go to Networking pane, and add a new vnet rule as below.
You would need to click on "Add your client IPv4 address …" to access database from SSMS in the below step.
Create a SQL Database¶
Create a SQL Database which will be the data warehouse for analysis models. After the initial creation most of the data warehouse work can be performed through IFS Cloud Web.
- The "Compute + storage" options. The scale configuration is dependent on individual customer needs. If the data loads are infrequent and have usually nightly full loads, "Serverless" option would be cheaper, and efficient as well. If so, we recommend the following configuration.
With the option "Enable auto-pause" a further cost reduction can be achieved. However please note that the database resume takes about 1min and during that time the database will be unavailable for connections. Therefore, the very first data load might fail after a resume if this option is enabled.
- Once all completed, access the SQL server using SQL Server Management Studio (SSMS) should be successful. You should be able to see the created database.
Create Azure Data Factory¶
Create SSIS IR¶
Pre-requisites for SSIS-IR (Created through 3.2 ~ 3.9 above) * VNET and Subnet available * SQL Server and Database created * Storage Account and SAS Token created * Azure Data Factory created
- Go to ADF and "Launch studio"
- Click on Manage > Integration Runtimes and click "New"
- Select Azure-SSIS
- Under General Settings set the Name, Location and select the Node Size.
- Node Size
- Minimum node size compatible is D2_v3.
- v2 series is not possible to be used.
D4_v3 is recommended if there are many parallel data loads (i.e., several large dimensions).
Under the Deployment settings, Check the box next to Create SSIS Select the Subscription, Location, and enter the SQL Server login credentials created earlier.
- Under Advanced Settings, enter the SAS URI created for the blob container earlier. Select the Subscription with relevant VNet and Subnet
NOTE: The SAS validation might fail if public access is not given.
- Once the setup is complete, start the SSIS-IR. This can take up to 1 hour.
- After the SSIS-IR is up the SSISDB should be visible in the SQL server.
Create an Integration Services Catalogue folder¶
- After the SSIS-IR has started, Log into SQL Server using SSMS and create an "Integration Services Catalogs" Folder.
Create an Analysis Services (AAS) instance¶
- Add the service principal as an admin to the server
- Check SQL Server a. Open an SQL Server management Studio instance b. Check if it is possible to connect to SQL Server using the username and password. c. Check if you see both the databases: the database for the data warehouse and SSIS DB
- Check if it is possible to connect to Azure Analysis Services using the Service Principal ID and Secret Value.