Как получить имя кластера Kubernetes из API K8s

Как указано в заголовке, можно ли узнать имя кластера K8s из API? Я просмотрел API и не смог его найти.

Ответ 2

kubectl config current-context делает kubectl config current-context дело (он выводит немного больше, например, имя проекта, регион и т.д., но он должен дать вам нужный ответ).

Ответ 3

Вопрос не очень хорошо описан. Однако, если этот вопрос связан с Google Container Engine, то, как упоминается coreypobrien, имя кластера хранится в пользовательских метаданных узлов. Изнутри node выполните следующую команду, и выводом будет имя кластера:

curl http://metadata/computeMetadata/v1/instance/attributes/cluster-name -H "Metadata-Flavor: Google"

Если вы укажете свой вариант использования, я могу продлить свой ответ, чтобы его покрыть.

Ответ 4

Я не верю, что есть кластерное имя k8s. Эта команда может предоставить некоторую приятную информацию

kubectl cluster-info

Ответ 5

API kubernetes мало знает о имени кластера GKE, но вы можете легко получить имя кластера с сервера метаданных Google, как этот

kubectl run curl --rm --restart=Never -it --image=appropriate/curl -- -H "Metadata-Flavor: Google" http://metadata.google.internal/computeMetadata/v1/instance/attributes/cluster-name

Ответ 6

Для кластеров, которые были установлены с использованием kubeadm, конфигурация, хранящаяся в kubeadm-config kubeadm kubeadm-config имеет имя кластера, используемое при установке кластера.

$ kubectl -n kube-system get configmap kubeadm-config -o yaml

apiVersion: v1
kind: ConfigMap
metadata:
  name: kubeadm-config
  namespace: kube-system
data:
  ClusterConfiguration: |
    clusterName: NAME_OF_CLUSTER

Для кластеров, которые используют CoreDNS для своих DNS, "имя кластера" из kubeadm также используется в качестве суффикса домена.

$ kubectl -n kube-system get configmap coredns -o yaml

apiVersion: v1
kind: ConfigMap
metadata:
  name: coredns
  namespace: kube-system
data:
  Corefile: |
    .:53 {
        kubernetes NAME_OF_CLUSTER.local in-addr.arpa ip6.arpa {

Ответ 7

$kubectl config get-clusters → получите список существующих кластеров

Ответ 8

Это то же самое, что и получение текущей конфигурации, но приведенная ниже команда дает четкий вывод:

kubectl config view