我的任务是自动创建 Azure VM,自然而然地,我在尝试部署 VM 镜像时进行了许多或多或少损坏的迭代。
我刚刚发现我的存储帐户的 blob 服务正在收集一长串容器列表以进行启动诊断。
因为我已经删除了它们所属的许多虚拟机,所以这些容器对我来说都是无用的,并且在门户中它们挤掉了我确实想要的几个有用的文件夹。事实上,我有一个脚本来销毁虚拟机(它删除资源、VHD 等);我希望这个脚本也杀死这些诊断容器。
但是容器的名称非常尴尬 - 并且只包含主机名的一部分......
- 如何从 Powershell 识别属于特定虚拟机的诊断容器,以便将其与其他资源一起删除?
- 为什么 Azure 不能更优雅地处理这个问题,为什么我必须“发现”在删除 VM 时诊断容器和 VHD 没有被删除?是否还有另一个我不知道的按钮或屏幕?
最佳答案
根据我的粗略观察,bootdiagnostic 存储容器名称可能仅包含名称超过 8 个字符的部分 VM 名称。但是,容器名称的最后部分(即虚拟机名称后面的部分)是虚拟机的唯一标识符。您可以使用以下文章中提到的步骤检索 VM 的唯一标识符名称:https://azure.microsoft.com/en-us/blog/accessing-and-using-azure-vm-unique-id/ 。对于 ARM VM,您可以通过 REST 检索 VM 名称的唯一标识符。
如果可以解析 bootdiagnostic 存储容器名称字符串以获取 VM 的唯一标识符,从而找出哪些 VM 正在使用哪些 Blob 存储容器。
谢谢, 昂
关于powershell - 删除Azure VM时如何从存储blob中删除 "bootdiagnostics"容器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35365523/