Azure虚拟机扩展更新失败

问题描述 投票:0回答:1

我试图通过扩展程序向虚拟机添加一个自定义脚本。我观察到,当创建VM时,Microsoft.Azure.Extensions.CustomScript类型默认以 "cse-agent "名称创建。因此,我尝试通过对文件进行脚本属性编码来更新扩展名。

  az vm extension set \
  --resource-group test_RG \
  --vm-name aks-agentpool \
  --name CustomScript \
  --subscription ${SUBSCRIPTION_ID} \
  --publisher Microsoft.Azure.Extensions \
  --settings '{"script": "'"$value"'"}'

$value代表以64进制编码的脚本文件。

这样做会给我一个错误。

Deployment failed. Correlation ID: xxxx-xxxx-xxx-xxxxx. 
VM has reported a failure when processing extension 'cse-agent'. 
Error message: "Enable failed: failed to get configuration: invalid configuration:
'commandToExecute' and 'script' were both specified, but only one is validate at a time"

在文档中,提到当脚本属性存在时,不需要commandToExecute。如你所见,我没有提到commandToExecute,它是以某种方式从以前的扩展中获取的。有没有办法在不删除它的情况下更新它?另外,我也很想知道当删除 cse-agent 扩展时,会产生什么影响。

顺便说一下:我试着从虚拟机中删除 "cse-agent "扩展,然后添加我的扩展。它工作了。

azure azure-aks azure-vm
1个回答
0
投票

cse-agent vm扩展是至关重要的,它管理着配置节点被认为是有效的Kubernetes节点所需的所有后安装。删除此CSE将破坏虚拟机,并将使您的集群无法操作。

如果你有兴趣对现有集群中的节点应用更改,虽然官方不支持,但你可以利用以下项目。

https:/github.comjuan-leeknode

这允许你使用DaemonSet来配置节点,当你的节点池启用了自动伸缩功能时,这对你有帮助。

对于简单的节点改变文件系统,带有主机路径的特权 pod 也可以工作。

https:/dev.todannypsnlprivileged-pod-debug-kubernetes-node-5129。

© www.soinside.com 2019 - 2024. All rights reserved.