我有一个简单的设置,一个运行sonarqube的Azure虚拟机,一个连接到NIC的NSG。我无法让NSG入站规则与服务标签“AzureDevOps”或“AzureCloud”配合使用。此时,NSG中的其他所有内容都已配置为Any或 *,而不是目标端口9000。
我尝试了多个服务标签,它一直给我相同的超时错误:
[error][SQ] API GET '/API/server/version'失败,错误为:{“errno”:“ETIMEDOUT”,“code”:“ETIMEDOUT”,“syscall”:“connect”,“address”:“",“port”:9000}
唯一可行的方法是将其开放给任何来源,这已经不再可行
1条答案
按热度按时间kgqe7b3p1#
[error][SQ] API GET '/API/server/version'失败,错误为:{“errno”:“ETIMEDOUT”,“code”:“ETIMEDOUT”,“syscall”:“connect”,“address”:“",“port”:9000}
若要解决此问题,如果您使用Microsoft托管的代理,则需要将正确的服务标记添加到VM NSG规则。
请参考以下步骤确认服务标签:
Step1:在组织设置->概览->区域中查看Azure DevOps组织区域
Step2:根据地域,您可以进入Azure VM -> Networking ->查找服务标签:Azurecloud.regionname
举例来说:
地区:东南亚->服务标签:AzureCloud.southeastasia
另一方面,如果您使用的是自托管代理,则需要手动获取代理IP并添加到NSG规则。