Примеры использования пользовательского определения ресурса Kubernetes
Я получил достаточное понимание CRD, читая привет примеры из мира. Я не вижу необходимости в CRD для моих случаев использования. Не могли бы вы перечислить варианты использования бизнеса, решаемые с помощью CRD?
Обновление: под бизнес-сценариями я подразумевал требования в организации, которые реализуются с использованием CRD.
Пример: каждое приложение, развернутое в пространстве имен "prod", должно иметь минимальное количество реплик pod 2. Определить CRD для хранения минимального количества реплик и использовать этот CRD (экземпляр) в контроллере Admission для обеспечения выполнения требования? Я не уверен, что этот подход действителен. Я хотел бы знать такие требования.
1 ответ
Это широкий вопрос. Их можно использовать для множества разных вещей. Например, список всех CRD в моем кластере показывает все это:
$ kubectl get crd
NAME CREATED AT
adapters.config.istio.io 2018-09-21T04:33:18Z
alertmanagers.monitoring.coreos.com 2018-11-10T00:30:22Z
apikeys.config.istio.io 2018-09-21T04:33:17Z
attributemanifests.config.istio.io 2018-09-21T04:33:17Z
authorizations.config.istio.io 2018-09-21T04:33:17Z
bgpconfigurations.crd.projectcalico.org 2018-07-23T22:22:59Z
bgppeers.crd.projectcalico.org 2018-07-23T22:22:59Z
bypasses.config.istio.io 2018-09-21T04:33:17Z
certificates.certmanager.k8s.io 2018-09-21T04:33:51Z
checknothings.config.istio.io 2018-09-21T04:33:17Z
circonuses.config.istio.io 2018-09-21T04:33:17Z
clusterinformations.crd.projectcalico.org 2018-07-23T22:22:59Z
clusterissuers.certmanager.k8s.io 2018-09-21T04:33:51Z
deniers.config.istio.io 2018-09-21T04:33:17Z
destinationrules.networking.istio.io 2018-09-21T04:33:17Z
edges.config.istio.io 2018-09-21T04:33:17Z
envoyfilters.networking.istio.io 2018-09-21T04:33:17Z
etcdbackups.etcd.database.coreos.com 2018-07-31T00:07:01Z
etcdclusters.etcd.database.coreos.com 2018-07-31T00:07:01Z
etcdrestores.etcd.database.coreos.com 2018-07-31T00:07:01Z
felixconfigurations.crd.projectcalico.org 2018-07-23T22:22:59Z
fluentds.config.istio.io 2018-09-21T04:33:17Z
gateways.networking.istio.io 2018-09-21T04:33:17Z
globalnetworkpolicies.crd.projectcalico.org 2018-07-23T22:22:59Z
globalnetworksets.crd.projectcalico.org 2018-07-23T22:22:59Z
handlers.config.istio.io 2018-09-21T04:33:18Z
hostendpoints.crd.projectcalico.org 2018-07-23T22:22:59Z
httpapispecbindings.config.istio.io 2018-09-21T04:33:17Z
httpapispecs.config.istio.io 2018-09-21T04:33:17Z
instances.config.istio.io 2018-09-21T04:33:18Z
ippools.crd.projectcalico.org 2018-07-23T22:22:59Z
issuers.certmanager.k8s.io 2018-09-21T04:33:51Z
kongconsumers.configuration.konghq.com 2018-09-26T06:06:44Z
kongcredentials.configuration.konghq.com 2018-09-26T06:06:44Z
kongingresses.configuration.konghq.com 2018-09-26T06:06:44Z
kongplugins.configuration.konghq.com 2018-09-26T06:06:44Z
kubernetesenvs.config.istio.io 2018-09-21T04:33:17Z
kuberneteses.config.istio.io 2018-09-21T04:33:17Z
listcheckers.config.istio.io 2018-09-21T04:33:17Z
listentries.config.istio.io 2018-09-21T04:33:17Z
logentries.config.istio.io 2018-09-21T04:33:17Z
memquotas.config.istio.io 2018-09-21T04:33:17Z
meshpolicies.authentication.istio.io 2018-09-21T04:33:17Z
metrics.config.istio.io 2018-09-21T04:33:17Z
networkpolicies.crd.projectcalico.org 2018-07-23T22:22:59Z
noops.config.istio.io 2018-09-21T04:33:17Z
opas.config.istio.io 2018-09-21T04:33:17Z
policies.authentication.istio.io 2018-09-21T04:33:17Z
prometheuses.config.istio.io 2018-09-21T04:33:17Z
prometheuses.monitoring.coreos.com 2018-11-10T00:30:22Z
prometheusrules.monitoring.coreos.com 2018-11-10T00:30:22Z
quotas.config.istio.io 2018-09-21T04:33:17Z
quotaspecbindings.config.istio.io 2018-09-21T04:33:17Z
quotaspecs.config.istio.io 2018-09-21T04:33:17Z
rbacconfigs.rbac.istio.io 2018-09-21T04:33:17Z
rbacs.config.istio.io 2018-09-21T04:33:17Z
redisquotas.config.istio.io 2018-09-21T04:33:17Z
reportnothings.config.istio.io 2018-09-21T04:33:17Z
rules.config.istio.io 2018-09-21T04:33:17Z
servicecontrolreports.config.istio.io 2018-09-21T04:33:17Z
servicecontrols.config.istio.io 2018-09-21T04:33:17Z
serviceentries.networking.istio.io 2018-09-21T04:33:17Z
servicemonitors.monitoring.coreos.com 2018-11-10T00:30:22Z
servicerolebindings.rbac.istio.io 2018-09-21T04:33:18Z
serviceroles.rbac.istio.io 2018-09-21T04:33:18Z
signalfxs.config.istio.io 2018-09-21T04:33:17Z
solarwindses.config.istio.io 2018-09-21T04:33:17Z
stackdrivers.config.istio.io 2018-09-21T04:33:17Z
statsds.config.istio.io 2018-09-21T04:33:17Z
stdios.config.istio.io 2018-09-21T04:33:17Z
templates.config.istio.io 2018-09-21T04:33:18Z
tracespans.config.istio.io 2018-09-21T04:33:17Z
vaultservices.vault.security.coreos.com 2018-07-31T00:07:49Z
virtualservices.networking.istio.io 2018-09-21T04:33:17Z
Каждый из них - это ресурс, который вы можете использовать для определения Kind
тип. Вы видите все виды вещей, например:
bgpconfigurations.crd.projectcalico.org => Calico BGP
prometheuses.config.istio.io => Prometheus config
fluentds.config.istio.io => Fluentd config
...