我有一个使用KubeAdm的Kubernetes集群设置(在AWS中的EC2实例中安装)。CNI使用的是Flannel,集群运行得很好。我的要求是,我试图在集群中设置KubeVirt (https://kubevirt.io/),以便在集群中提供am和豆荚。KubeVirt是CNCF的一个开源沙箱项目。我已经安装了KubeVirt,它运行得很好。我按照这个链接中的步骤安装KubeVirt:https://kubevirt.io/quickstart_云/
在那之后,我想在我的Kubernetes集群中旋转一个VM。因此,我遵循了以下官方文档:https://kubevirt.io/labs/kubernetes/lab1.html
VM被创建了,但是处于“调度”阶段。我注意到,除了VM之外,还在cluster.The问题中创建了一个关联的pod,即这个特定的pod没有被调度,并且处于挂起状态。

在描述了吊舱之后,我得到了以下错误消息,其中显示了有关设备插件的一些信息:

警告FailedScheduling 2m5s (x4超过22m)默认调度程序0/2节点可用:2个不足的devices.kubevirt.io/kvm。抢占: 0/2节点可用:2无抢占受害者发现入舱。
我的工作节点上没有污染,但是这个吊舱不会被安排好。然后我找到了一个链接,上面提到了KubeVirt (https://kubevirt.io/2018/KVM-Using-Device-Plugins.html)的设备插件。
查看工作节点描述,在'allocatable->devices.kubevirt.io/kvm‘中它被提到为"110“,当我编辑我的工作节点时,它是"0”

我尝试编辑worker节点并将值更改为"110“。我保存了更改,它显示了node/kube-c2-workernode-02-poc edited。
但是,在我再次编辑它之后,以前添加的更改完全消失了,就好像我根本没有修改它一样。我试图通过增加EBS卷中的CPU内核、内存和IOPS来增加工作节点规范。但毫不费力,结果仍然是一样的。
So,在回顾完这个问题之后,如何更改Kubernetes中的工作节点的资源分配并正确保存它?
发布于 2022-08-05 18:40:58
Kubevirt需要启用虚拟化。
那些“可分配的”/“容量”不是你可以/不应该改变自己的东西。它们只是反映了节点的状态:您不能在这里托管虚拟机,因此您的被挂起。
目前,在EC2中实现这一点的唯一方法是使用金属实例。
一般情况下,我们应该确保在BIOS级别(VT/AMD)启用虚拟化指令。此时,节点将注册可以调度虚拟机。
https://serverfault.com/questions/1107492
复制相似问题