I have a Azure Windows Vm running separately with mysql server installed on it (it is not Sql vm). Users login to this Vm via WVD or RDP and make queries manualy.
I’d like to create pipeline that makes qsl queries on this Vm and saves it into .csv file. Than these file (piepline artifact) should be send to Azure storage account/blob.
My question is: should I add this Vm (with mysql on it) as self-hosted agent to new agent pool or can I use Aazure hosted agent to run this pipline on it?
Thanks in advance!
2
Answers
It will be easier for you to access the local sql-server once you run a self-hosted agent on it.
I assume this agent would then run a script which runs some SQL-Queries against the MYSQl Server.
Once you have your response you can pipe it into a file and create a pipeline artifact.
If your MySQL server is not publicly available over the internet this is your only choice.
In regards to making your server public, I would rather use the hosted agent solution than make your server publicly available, as this opens up a completely new attack vector.
Agree with @Philipp. You need to use self-hosted agent if your mysql server VM does not have public IP.
I created a VM which only have public IP, and confirm it can be setup as self-hosted agent.
Need to mention is for:
You need to make sure the Azure VM(self-hosted) can communicate with Azure storage account. You can use same private network for them.
In addition, it could be failed to set up the Azure VM as self-hosted agent due to your specific network, in this scenario, you could need a new azure VM which has two networks and set it as self-hosted agent, public to connect DevOps, and private network to mysql server.