Azure Devops Server on AWS RDS SQL Server - amazon-rds

I'm planning to migrate our on-prem Azure Devops Server to Amazon AWS and would like to use SQL Server via AWS RDS as it's underlying database. I know that SQL Server running in AWS RDS has some limitations compared to a "normal" SQL Server running on a Windows Server VM. So I would like to know whether that difference would affect my Azure Devops Server installation in AWS in any way.
So, does Azure DevOps Server support running on an AWS RDS MS SQL Server database?
I looked everywhere for an answer, but did not manage to find an exact one.

bacpac method
You can achieve this by using the native backup and restore method, we can either use .bak (native backups) or .bacpac (backup package).

Related

Linked Service connection timeout

I'm attempting to configure a Linked Service within my Data Factory. In this case, it's to a MariaDB instance on Ubuntu 20.04LTS.
I'm able to establish the connection from other parts of the virtual network just fine (ex. Windows 10 VM + HeidiSQL). However, when I attempt to configure (ip, database, credentials) and test the connection, I get:
ERROR [08001] [Microsoft][MariaDB] (1004) The connection has timed out while connecting to server: ip_here at port: 3306. Activity ID: omitted.
The storage account and the data factory are using the same subscription and resource group as the Ubuntu instance. The storage account is configured for All Networks.
Edit 1
I used the generic MariaDB option to setup the linked service.
Edit 2
Found this tidbit...
" [...] Azure Data Factory Azure Integration Runtime is not inside a VNET so by default it cannot connect to your Azure SQL Database. [...] the best you can do is to whitelist the IP Ranges for Azure Data Factory Integration Runtime [...]
Edit 3
Tutorial on how to setup an integration runtime:
https://blog.nicholasrogoff.com/2018/07/03/how-to-get-azure-data-factory-connecting-to-your-data-on-a-vnet-or-internal-network/
However, seems this is only available on Windows (and I'm on Linux)?
https://learn.microsoft.com/en-us/azure/data-factory/create-self-hosted-integration-runtime?tabs=data-factory
I ended up using "Azure Database for MySQL" and was able to have the Data Factory communicate to it.
Looking at a similar ask on Microsoft Q&A Forum
Today the self-hosted Integration Runtime is only supported on Windows
machine. However, what you can do is to run self-hosted Integration
Runtime on a separate Windows machine that has network connectivity to
the Linux machine where the data files reside.
If you are flexible to use other databases, you can use for example a Azure Database for MySQL as #TekiusFanatikus has successfully used.

Azure PaaS local setup

I am going to use Azure SQL (V12) for my production environment.
I want similar kind of setup in my Local Laptop without connecting cloud environment.
What is best version available freely with Azure SQL which ensure me that there will not be any compatibility issue in schema replication and data migration?
Or any other way to handle this for local setup.

In ADF, can we use one Integration Runtime for two different on-premise data sources?

IN Azure Data Factory, is it possible to use one Integration Run time to connect two different On-Premise data sources?
Scenario:
I have created one self hosted Integration Runtime installed in Virtual Machine for DB2 Database which is On-Premise DB.
I wanted to add one more On-Premises DB which is SQL Server.
Is it possible to use the existing Self Hosted Integration Runtime for SQL Server On Prem DB?
I have tried connecting to existing Self Hosted Integration Runtime in Linked Service. The test connection is getting failed.
I know, some where access privileges required for SQL Server DB either from VM or from the SQL Server to make the connectivity possible via existing Integration Runtime.
Connectivity to SQL Server DB is getting failed, while I use the existing IR, which is already used for DB2.
Yes, you can.
You can find this in this document Considerations for using a self-hosted IR:
A single self-hosted integration runtime can be used for multiple on-premises data sources. A single self-hosted integration runtime can be shared with another data factory within the same Azure Active Directory tenant. For more information, see Sharing a self-hosted integration runtime.
When you want add a another on premise DB, you can try like this:
New link service:
Add another on premise DB:
Hope this helps.
Yes you can reuse self-hosted IR.
Probably issue with connectivity lies somewhere else.
You can test this by logging into that VM via RDP and running tests either with SSMS to test connectivity or run simple PowerShell command to test network
Test-NetConnection "<server_address>" -port 1433
Yes, you can. Note that adding more nodes as part of self-hosted IR (integration runtime) is part of highly available and making sure that there is no SPOF (single point of failure) with one on-premise data gateway.
This is no relation with the number of on-premise data sources which can be connected from services launched in Azure.

Deploy SSIS on Azure Portal

I have already tried to deploy SSIS using AzureVM and it's working fine for us. Just want to explore other options.
Is it possible to deploy SSIS on Azure Sql Service without using AzureVM? If yes, then provide some guidance.
How to connect local (on-premises) database (For example. Oracle) from Azure SQL using SSIS without using AzureVM?
No, this requires an Azure VM or an on premise installation of SSIS- SSIS as a Service is not an Azure offering at this time.
Azure SQL Database won't allow for Linked Servers and, elastic query may not fit your use case; It may not be possible to do from Azure SQL. However, you could try defining one data source for SQL Azure and one for your on-prem database (or even Oracle) within SSIS and run your report on the data that way. More about establishing data sources/connections.
Now you can deploy your SSIS package on Azure by creating Integration Run-time in Data factory which will create a SSISDB and under SSISDB, Integration Service Catalog will be available.
SSIS Project deployment is available as of now on Integration Service Catalog.
For more details and steps, click below link-
deploy-sql-server-integration-service-packages-to-azure-using-azure-data-factoryv2

How to migrate an existing instance from Amazon EC2 to Windows Azure?

I have an application in centos VM running in amazon EC2 and now I need to migrate it to windows azure.
Is there a way to copy a snapshot to azure??
I wish to answer it step by step, but I found a link that is more than good & have almost details required to migrate an existing instance from Amazon EC2 to Windows Azure with video. The link is Guided Hands-on Lab: Migrate VMs to Windows Azure from Amazon AWS [ 20 Key Cloud Scenarios with Windows Azure Infrastructure Services ]
I hope it will help.
Well this is only possible if you are running Windows Server on your EC2 instance by following this link:
https://convective.wordpress.com/2014/07/04/migrating-a-vm-from-ec2-to-azure-at-300-mbps/
If you're running linux, currently there's no simple tool that does it, but you can go to your Azure account and follow these steps:
1- Mimic your architecture of servers on your Azure account by keeping eyes on number of VMs, Network, Storages, and other services if found.
2- Make the correct setup on those servers (configure your web server, db server, etc..)
3- Zip all of your data files found on EC2 (/var/www/Web_Folder) and use mysqldump to backup your database as well.
4- Create a windows server VM on Azure that you can connect to Remotely (Profit from the cloud internet speed) and use filezilla to download your zipped files from EC2 and then upload them back to newly created VMs on Azure. Upload your db backup file there as well.
5- Create a new database on your Azure VMs with the same old name, give user access, exit mysql and then restore your db backup file that you uploaded using: mysql -u root -p DB_Name
Just an update, Now you can accomplish this task using Azure Site Recovery this is a super easy task. In site recovery once you do failover all the virtual machines will automatically gets created which means with minimal or no downtime the migration can be performed https://azure.microsoft.com/en-in/documentation/articles/site-recovery-migrate-aws-to-azure/

Resources