Api-ресурсы Kubectl перечисляют дубликаты ресурсов с различными группами API - PullRequest
0 голосов
/ 23 сентября 2019

Я выполнил простую команду:

kubectl api-resources

Я был немного удивлен, получив дубликаты (хотя и в разных группах Api), например:

NAME                              SHORTNAMES   APIGROUP                NAMESPACED   KIND 
ingresses                         ing          extensions              true         Ingress
ingresses                         ing          networking.k8s.io       true         Ingress

Это то же самоересурс, который просто указан дважды, потому что он принадлежит к разным группам API одновременно, и результат следующих вызовов всегда одинаков?

kubectl get ingress
kubectl get ingress.networking.k8s.io
kubectl get ingress.extensions

1 Ответ

2 голосов
/ 23 сентября 2019

На самом деле это разные версии одного и того же ресурса в разных группах API.

В общем, когда новые типы ресурсов вводятся в Kubernetes, они сначала управляются в группе API extensions (повторяется через нескольковерсии).Когда ресурсы считаются стабильными, они перемещаются в «стабильную» группу API, например apps или networking.k8s.io (пояснено, например, здесь ).

ФактТо, что Ingress перечислен в обеих группах API, означает, что ваш сервер API может понимать версии этого ресурса из обеих групп API.

Спецификации конкретных версий ресурса могут отличаться.Вы можете сравнить их, например, с:

kubectl explain --api-version=extensions/v1beta1 ingress

и

kubectl explain --api-version=networking.k8s.io/v1beta1 ingress

Подробное объяснение того, как сервер API обрабатывает различные версии ресурса, можно найти в этом разделе. серия статей .

...