什么是 kubernetes 中的 kind:test
What is kind:test in kubernetes
我的一个使用 kubernetes 管理容器的项目有一个叫做 test 的东西。开发人员定义连接的位置。
我试图在互联网上搜索它,但没有找到任何可以清除它的东西。
有人可以帮助我理解 test.yml 中的这种类型和连通性吗?
kind: test
spec:
connectivity:
to:
from
这就是我们所说的在 kubernetes 世界中创建 CustomResourceDefinition
(CRD).
Read the docs : Using Custom Resources for clarity.
kind: Test
是自定义资源 (CR)。
applying a CustomResourceDefinition (CRD) that describes all the fields.
后可以在集群中使用 CR
通过这样做,您可以使用可以使用的新对象扩展 Kubernetes。如果你想write your own operator or controller,这很有用。
没有 operator/controller,CR 就是 什么都不做 。它只会保存一些您可以查找的信息(类似于 ConfigMap),但不会执行任何操作。
这里解释了 Kubernetes 如何为 Deployment 等内置对象工作:
- 您使用
kubectl apply -f some-deployment.yaml
- 您的调用将被发送到 kube-apiserver
- kube-apiserver 会在 etcd
中保存 Deployment 的信息(name
,replicas
,image
要使用,...)
- kube-controller-manager 持续与 kube-apiserver 通信,并要求他向他显示有关部署的所有信息。
- kube-apiserver 从 etcd 检索信息并将其发送回 kube-controller-manager
- kube-controller-manager 看到有一个新部署(您应用的部署),现在将继续创建 Pods(以及之前的 ReplicaSet)。
如您所见,实际上 创建的 Pods 是 kube-controller-manager。
如果 kube-controller-manager 不支持您期望从 Kubernetes 获得的所有功能,您可以创建自己的控制器,using the operator SDK 将其称为操作员。然后您的操作员可以查看您将创建为 CustomResource 的所有对象(例如 Test
)。
要检查您在集群上应用的所有 CRD,请执行:
$ kubectl get crd
要获取可应用于 Kubernetes 的 所有 对象的列表,请执行以下操作:
$ kubectl api-resources
我的一个使用 kubernetes 管理容器的项目有一个叫做 test 的东西。开发人员定义连接的位置。
我试图在互联网上搜索它,但没有找到任何可以清除它的东西。
有人可以帮助我理解 test.yml 中的这种类型和连通性吗?
kind: test
spec:
connectivity:
to:
from
这就是我们所说的在 kubernetes 世界中创建 CustomResourceDefinition
(CRD).
Read the docs : Using Custom Resources for clarity.
kind: Test
是自定义资源 (CR)。
applying a CustomResourceDefinition (CRD) that describes all the fields.
通过这样做,您可以使用可以使用的新对象扩展 Kubernetes。如果你想write your own operator or controller,这很有用。 没有 operator/controller,CR 就是 什么都不做 。它只会保存一些您可以查找的信息(类似于 ConfigMap),但不会执行任何操作。
这里解释了 Kubernetes 如何为 Deployment 等内置对象工作:
- 您使用
kubectl apply -f some-deployment.yaml
- 您的调用将被发送到 kube-apiserver
- kube-apiserver 会在 etcd 中保存 Deployment 的信息(
- kube-controller-manager 持续与 kube-apiserver 通信,并要求他向他显示有关部署的所有信息。
- kube-apiserver 从 etcd 检索信息并将其发送回 kube-controller-manager
- kube-controller-manager 看到有一个新部署(您应用的部署),现在将继续创建 Pods(以及之前的 ReplicaSet)。
name
,replicas
,image
要使用,...)
如您所见,实际上 创建的 Pods 是 kube-controller-manager。
如果 kube-controller-manager 不支持您期望从 Kubernetes 获得的所有功能,您可以创建自己的控制器,using the operator SDK 将其称为操作员。然后您的操作员可以查看您将创建为 CustomResource 的所有对象(例如 Test
)。
要检查您在集群上应用的所有 CRD,请执行:
$ kubectl get crd
要获取可应用于 Kubernetes 的 所有 对象的列表,请执行以下操作:
$ kubectl api-resources