We are deploying tens of VMs into Azure with VSTS. We now need to execute some scripts on specific VMs. Unfortunately, we can't let out VMs have public IPs. Is it possible to use VSTS tasks that require WinRM and PowerShell on Target Machines without public IP? If not, would would be our best option?
相关问题
- running headless chrome in an microsoft azure web
- Docker task in Azure devops won't accept "$(pw
- How to Debug/Register a Permanent WMI Event Which
- Authentication Failure using Git-LFS Azure DevOps
- How can I do variable substitution in a here-strin
相关文章
- 在vscode如何用code runner打开独立的控制台窗口,以及设置好调试模式时窗口的编码?
- C#调用PowerShell的问题
- EscapeDataString having differing behaviour betwee
- Build errors of missing packages in Visual Studio
- SQL Azure Reset autoincrement
- PowerShell Change owner of files and folders
- How to cast Azure DocumentDB Document class to my
- VSTS continuous integration triggers not working
It is not possible except you create a VPN tunnel. But it is not necessary and expensive.
For your scenario, you could use Azure VM Custom Script Extension.
If you use it, you don't need winrm your VMs.
The
Set-AzureRmVMCustomScriptExtension
command can be used to add the Custom Script extension to an existing virtual machine. For example:Note: You could save your script on GitHub and Azure storage account.
You need to configure Azure networking so that your build infrastructure can route to the private IP addresses of those servers. If your build servers are also in Azure, it's just a matter of making sure they're all using the same Azure virtual network. If not, you'll need to set up an Azure VPN gateway.
The specific configuration is way too deep and variable to get into here.