본문 바로가기

리눅스

[kubernetes] kubectl config 명령 - 1

728x90

쿠버네티스 kubectl config 명령

 Modify kubeconfig files using subcommands like "kubectl config set current-context my-context"

사용법

 The loading order follows these rules:

  1.  If the --kubeconfig flag is set, then only that file is loaded. The flag may only be set once and no merging takes
place.
  2.  If $KUBECONFIG environment variable is set, then it is used as a list of paths (normal path delimiting rules for
your system). These paths are merged. When a value is modified, it is modified in the file that defines the stanza. When
a value is created, it is created in the first file that exists. If no files in the chain exist, then it creates the
last file in the list.
  3.  Otherwise, ${HOME}/.kube/config is used and no merging takes place.

Available Commands:
  current-context Display the current-context
  delete-cluster  Delete the specified cluster from the kubeconfig
  delete-context  Delete the specified context from the kubeconfig
  delete-user     Delete the specified user from the kubeconfig
  get-clusters    Display clusters defined in the kubeconfig
  get-contexts    Describe one or many contexts
  get-users       Display users defined in the kubeconfig
  rename-context  Rename a context from the kubeconfig file
  set             Set an individual value in a kubeconfig file
  set-cluster     Set a cluster entry in kubeconfig
  set-context     Set a context entry in kubeconfig
  set-credentials Set a user entry in kubeconfig
  unset           Unset an individual value in a kubeconfig file
  use-context     Set the current-context in a kubeconfig file
  view            Display merged kubeconfig settings or a specified kubeconfig file

Usage:
  kubectl config SUBCOMMAND [options]

Use "kubectl <command> --help" for more information about a given command.
Use "kubectl options" for a list of global command-line options (applies to all commands).

 

kubectl config view -o json | jq
$ kubectl config view
apiVersion: v1
clusters:
- cluster:
    certificate-authority: /home/edu/.minikube/ca.crt
    extensions:
    - extension:
        last-update: Wed, 21 Sep 2022 13:56:27 KST
        provider: minikube.sigs.k8s.io
        version: v1.27.0
      name: cluster_info
    server: https://192.168.39.107:8443
  name: minikube
contexts:
- context:
    cluster: minikube
    extensions:
    - extension:
        last-update: Wed, 21 Sep 2022 13:56:27 KST
        provider: minikube.sigs.k8s.io
        version: v1.27.0
      name: context_info
    namespace: default
    user: minikube
  name: minikube
current-context: ""
kind: Config
preferences: {}
users:
- name: minikube
  user:
    client-certificate: /home/edu/.minikube/profiles/minikube/client.crt
    client-key: /home/edu/.minikube/profiles/minikube/client.key
$ kubectl config get-clusters
NAME
minikube
$ kubectl config get-users
NAME
minikube
$ kubectl config get-contexts
CURRENT   NAME       CLUSTER    AUTHINFO   NAMESPACE
          minikube   minikube   minikube   default
kubectl config set-context minikube

 

참고URL

- kubectx : https://github.com/ahmetb/kubectx

- Kubernetes Authenticating : https://kubernetes.io/docs/reference/access-authn-authz/authentication/

 

728x90