【问题标题】:Kubernetes Custom Resource Definition use casesKubernetes 自定义资源定义用例
【发布时间】:2018-12-21 00:08:33
【问题描述】:

通过阅读 hello world 类型的示例,我对 CRD 有了一定的了解。我认为我的用例不需要 CRD。您能否列出 CRD 解决的业务用例?

更新:我所说的业务用例是指组织中使用 CRD 实现的需求。

示例:部署在“prod”命名空间中的每个应用程序的最小 pod 副本数应为 2。定义一个 CRD 来存储最小副本数并在准入控制器中使用该 CRD(实例)来强制执行要求?我不确定这种方法是否有效。我想知道这样的要求。

【问题讨论】:

    标签: kubernetes kubernetes-custom-resources


    【解决方案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
    ...
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-10-04
      • 1970-01-01
      • 2016-06-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-10-24
      相关资源
      最近更新 更多