В чем разница между пространствами имен и контекстами в Kubernetes? - PullRequest
0 голосов
/ 12 апреля 2020

Во многих примерах я нашел указание типа kubectl --context dev --namespace default {other commands} перед клиентом kubectl. Могу ли я получить четкую разницу между ними в среде k8?

Ответы [ 3 ]

3 голосов
/ 12 апреля 2020

Вы используете несколько контекстов для нацеливания на несколько разных кластеров Kubernetes. Вы можете быстро переключаться между кластерами с помощью команды kubectl config use-context.

Пространства имен - это способ разделения ресурсов кластера между несколькими пользователями (через квоту ресурсов) .Namespaces предназначены для использования в средах с большим количеством пользователей, распределенных по нескольким командам или проектам.

2 голосов
/ 12 апреля 2020

Контекст - это соединение с указанным c кластером (имя пользователя / хоста apiserver), используемым kubectl. Таким образом, вы можете управлять несколькими кластерами. Пространство имен - это логический раздел внутри указанного кластера c для управления ресурсами и ограничениями.

0 голосов
/ 12 апреля 2020

A context в Kubernetes - это группа параметров доступа. Каждый контекст содержит кластер Kubernetes, пользователя и пространство имен. Текущий контекст - это кластер, который в настоящее время используется по умолчанию для kubectl: все команды kubectl выполняются для этого кластера. Каждый из использованных context будет доступен на вашем .kubeconfig.

Между тем namespace - это способ поддержки нескольких виртуальных кластеров в одном физическом кластере. Обычно это относится к квоте ресурса , а также к управлению RBA C.

...