1. 前言
上一篇我们测试了 AIB 自动化构建 CentOS 7.7 自定义镜像,相信大家也体会到了云上原生服务带来的自动化便利度。其实,AIB 能够做到的远远不止这些,除此之外还可以集成 Vnet 以及 RHEL 等 License 等功能,尤其值得一提的是和 Azure Shared Image Gallery(后文简称 SIG )的服务集成。对于 SIG 本文不多做介绍,不了解的同学们通过官方文档自行科普吧,简单来说就是一个可以做到全球管理分发虚拟机镜像的 Azure 云服务,该服务构成可以参考下图:
本文,我们来测试下 AIB 和 SIG 的集成,验证下自动化构建全球虚拟机镜像的功能。
2. 前期准备工作
和第一篇博客相同,需要准备好 Global Azure 账户,配置好 Azure CLI,该测试在 Windows Subsystem v2 Ubuntu 18.04 上运行,需要注意该实验同样需要在一个 Session 内运行,因为要继承所有设置的自定义变量。
3. AIB 构建自定义 CentOS 7.7 镜像并集成 Azure Shared Image Gallery 做全球分发
3.1 AIB / VM / Storage Feature 注册
1 | # Feature Registration |
如果命令输出结果显示相关 feature 没注册,则运行以下命令:
1 | az provider register -n Microsoft.VirtualMachineImages |
创建 RG 并设置相关环境变量:
1 | # Create SIG resource group |
3.2 创建 User-Assigned Managed Identity 并赋权
1 | # create user assigned identity for image builder to access the storage account where the script is located |
创建 Azure Shared Image Gallery:
1 | # create SIG |
3.3 修改 AIB SIG CentOS77 模板文件
1 | # download the example and configure it with your vars |
3.4 创建 AIB SIG CentOS 7.7 镜像
1 | # submit the image confiuration to the VM Image Builder Service |
3.5 创建 CentOS 7.7 VM 并登陆验证
1 | az vm create \ |
4. 总结
至此,第二篇自动化构建自定义托管镜像 CentOS 7.7 并集成 Azure Shared Image Gallery 做全球分发的示例就完成了,希望能够给大家一些参考。