【发布时间】:2020-03-16 08:23:27
【问题描述】:
我有一个 Azure Batch 池,其中安装了三个 Blob 存储容器。但是,当节点第一次启动时,它会出现以下错误:
查看日志,似乎节点在安装 blobfuse 包时遇到了问题。反复收到此错误消息:
2020-03-11T09:15:48,654579941+00:00 - INFO: Downloading: https://packages.microsoft.com/keys/microsoft.asc as microsoft.asc
2020-03-11T09:15:48,770319520+00:00 - INFO: Downloading: https://packages.microsoft.com/config/ubuntu/16.04/prod.list as /etc/apt/sources.list.d/microsoft-prod.list
Hit:1 http://azure.archive.ubuntu.com/ubuntu xenial InRelease
Hit:2 http://azure.archive.ubuntu.com/ubuntu xenial-updates InRelease
Hit:3 http://azure.archive.ubuntu.com/ubuntu xenial-backports InRelease
Hit:4 http://security.ubuntu.com/ubuntu xenial-security InRelease
Get:5 https://packages.microsoft.com/ubuntu/16.04/prod xenial InRelease [4,002 B]
Get:6 https://packages.microsoft.com/ubuntu/16.04/prod xenial/main amd64 Packages [124 kB]
Fetched 128 kB in 0s (383 kB/s)
Reading package lists...
E: Could not get lock /var/lib/dpkg/lock-frontend - open (11: Resource temporarily unavailable)
E: Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend), is another process using it?
E: Could not get lock /var/lib/dpkg/lock-frontend - open (11: Resource temporarily unavailable)
E: Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend), is another process using it?
E: Could not get lock /var/lib/dpkg/lock-frontend - open (11: Resource temporarily unavailable)
E: Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend), is another process using it?
E: Could not get lock /var/lib/dpkg/lock-frontend - open (11: Resource temporarily unavailable)
E: Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend), is another process using it?
E: Could not get lock /var/lib/dpkg/lock-frontend - open (11: Resource temporarily unavailable)
E: Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend), is another process using it?
E: Could not get lock /var/lib/dpkg/lock-frontend - open (11: Resource temporarily unavailable)
E: Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend), is another process using it?
E: Could not get lock /var/lib/dpkg/lock-frontend - open (11: Resource temporarily unavailable)
E: Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend), is another process using it?
E: Could not get lock /var/lib/dpkg/lock-frontend - open (11: Resource temporarily unavailable)
E: Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend), is another process using it?
...
2020-03-11T09:16:53,361634408+00:00 - ERROR: Could not install packages (apt): blobfuse
节点然后进入状态Unusable,直到我手动重新启动它们,这将“修复”问题,然后节点开始处理任务。
任务应该以提升的权限运行:
UserIdentity = new UserIdentity(
new AutoUserSpecification(
elevationLevel: ElevationLevel.Admin,
scope: AutoUserScope.Pool
)
),
更新 1
我无法解决这个问题,所以我决定解决它。调整大小或重新创建池没有帮助。相反,我在 Docker 映像中安装了 blobfuse,并将 blob 存储容器安装在任务本身中。这工作得很好。
【问题讨论】:
-
你需要root权限来安装这些包吗?
-
@Aravind 可能。任务本身以管理员身份运行,但当新节点加入时,此进程在池本身上运行。我对这个过程没有太多控制权。我所做的只是添加了安装配置,我认为 azure 应该可以解决其余的问题。
-
+1:这看起来像
installation issue with the Blobfuse package,尝试将resizing or reboot您的池恢复为零,然后扩大规模,我认为作为 joinpool 的新加入 VM 应该会触发新安装。这应该会有所帮助。 -
嗨@NiklasNoem 好方法,但请记住,如果您的那种blobfuse驱动程序有一个现有的拥抱,它会在65小时后在此处提供详细信息:github.com/Azure/azure-storage-fuse/issues/329,如果 docker 不是必要时,您始终可以通过脚本在普通批处理节点的启动任务级别执行此操作。
-
@Tats_innit 谢谢你的提示。这可能比任何任务运行的时间都要长,并且池是自动缩放的,因此它将重新连接。再次感谢您的帮助。
标签: azure azure-batch