What is kind:在kubernetes中测试



我的一个使用kubernetes管理容器的项目有一个名为test的东西。其中开发人员定义了连接性。

我试着在网上搜索,但没有找到任何可以清除这个。

有没有人能帮我理解test.yml中的这种类型和连接性?

kind: test
spec:
connectivity:
to:
from

kind: Test是一个CustomResource (CR)。在应用了描述所有字段的CustomResourceDefinition (CRD)之后,可以在集群中使用CRs。

通过这样做,您可以使用新对象扩展Kubernetes。如果您想编写自己的操作符或控制器,这将非常有用。如果没有操作符/控制器,CR是不做任何事情。它只会保存一些你可以查找的信息(类似于ConfigMap),但它不会做任何事情。

下面是Kubernetes如何为内置对象(如部署)工作的解释:

  1. 您使用kubectl apply -f some-deployment.yaml
  2. 您的调用将被发送到kube- apisserver
  3. kube- apisserver将在etcd
  4. 中保存信息(name的部署,replicas,image使用,…)
  5. kube-controller-manager不断地与kube- apisserver通信,并要求他向他显示有关部署的所有信息。
  6. kube- apisserver从etcd检索信息并将其发送回kube-controller-manager
  7. kube-controller-manager看到有一个新的部署(您应用的部署),现在将继续创建pod(在此之前创建ReplicaSet)。

正如您所看到的,实际上创建pod的是kube-controller-manager。

如果kube-controller-manager不支持您期望从Kubernetes获得的所有功能,您可以使用operator SDK创建自己的控制器,称为operator。然后,你的操作符可以监视你将作为CustomResource创建的所有对象(比如Test)。

要检查群集上应用的所有crd,请执行:

$ kubectl get crd

要获取可以应用到Kubernetes的所有对象的列表,执行以下命令:

$ kubectl api-resources

这就是我们所说的在kubernetes世界中创建CustomResourceDefinition(CRD).

阅读文档:使用自定义资源以获得清晰度。

相关内容

  • 没有找到相关文章

最新更新