您可以通过 ARM 模板、Teffaform 和 Ansible 管理 Azure NSG 配置。
1,您可以查看以下示例来创建 ARM 模板来管理 Azure NSG。
创建网络安全组。
如何使用模板创建 NSG
更多示例请查看官方文档。
2,创建ARM模板并推送到你的git repo之后。您可以创建Azure 管道来自动化部署。请参阅此处的教程。
3、然后您需要创建一个azure Resource Manager 服务连接以将您的 Azure 订阅连接到 Azure devops。有关示例,请参见此线程。
4,在您的 azure devops 管道中。您可以使用ARM 模板部署任务来部署 ARM 模板。
steps:
- task: AzureResourceManagerTemplateDeployment@3
displayName: 'ARM Template deployment: Resource Group scope'
inputs:
azureResourceManagerConnection: 'azure Resource Manager service connection'
subscriptionId: '...'
resourceGroupName: '...'
location: 'East US'
csmFile: azuredeploy.json
csmParametersFile: azuredeploy.parameters.json
1、创建Teffaform配置文件。请参见此处的示例。
查看terraform-azurerm-network-security-group 模块了解更多信息。
2、上传Teffaform配置文件到git repo。创建 Azure devops 管道
3,使用ARM模板创建像上面一样的azure Resource Manager服务连接。
4、在天蓝色的devops管道中使用Terraform任务。
steps:
- task: ms-devlabs.custom-terraform-tasks.custom-terraform-installer-task.TerraformInstaller@0
displayName: 'Install Terraform 0.12.3'
- task: ms-devlabs.custom-terraform-tasks.custom-terraform-release-task.TerraformTaskV1@0
displayName: 'Terraform : azurerm'
inputs:
command: apply
environmentServiceNameAzureRM: 'azure Resource Manager service connection'
1、使用插件 azure.azcollection.azure_rm_securitygroup 创建 Ansible playbook
请在此处查看示例。
2、上传ansible playbook到git repo。创建 Azure devops 管道。在您的管道中使用Ansible 任务。
请查看此详细教程,了解有关如何在 azure devops 管道中运行 ansible playbook 的更多信息。
- Azure powershell/Azure CLI 命令
您可以使用 azure powershell 或 azure cli 命令来管理 azure nsg。并在 azure devops 管道中运行 Azure powershell task 或 azure cli task 中的命令。
请查看此文档以获取更多信息。