Difference between revisions of "~/.kube/config"

From wikieduonline
Jump to navigation Jump to search
 
(48 intermediate revisions by 4 users not shown)
Line 1: Line 1:
 
  [[~/.kube/]]config
 
  [[~/.kube/]]config
 +
[[kubectl --kubeconfig]] [[~/.kube/]]yourclusterconfig
  
 
  [[apiVersion]]: v1
 
  [[apiVersion]]: v1
 
  clusters: null
 
  clusters: null
  contexts: null
+
  [[Kubernetes contexts|contexts]]: null
 
  current-context: ""
 
  current-context: ""
  kind: Config
+
  [[kind: Config]]
 
  preferences: {}
 
  preferences: {}
  users: null
+
  [[users:]] null
  
== Example ==
+
 
 +
== Configure ==
 +
* AWS: <code>[[aws eks update-kubeconfig]] --name my-eks-cluster-name</code>
 +
* GCP: <code>[[gcloud container clusters get-credentials]] [[MyClusterName]]</code>
 +
 
 +
== Examples ==
  
 
  apiVersion: v1  
 
  apiVersion: v1  
Line 15: Line 21:
 
  - cluster:
 
  - cluster:
 
     certificate-authority-data: LS0tLS1CRUdJTiDATAREMOVEDCg==
 
     certificate-authority-data: LS0tLS1CRUdJTiDATAREMOVEDCg==
     server: https://00AXXXXXXXXXX1B.gr7.us-east-2.eks.amazonaws.com
+
     [[server:]] https://00AXXXXXXXXXX1B.gr7.us-east-2.eks.amazonaws.com
 
   name: arn:aws:eks:us-east-2:123455:cluster/education-eks-Ry318DCv  
 
   name: arn:aws:eks:us-east-2:123455:cluster/education-eks-Ry318DCv  
  contexts:
+
  [[contexts:]]
 
  - context:
 
  - context:
 
     cluster: arn:aws:eks:us-east-2:123456:cluster/education-eks-Ry318DCv
 
     cluster: arn:aws:eks:us-east-2:123456:cluster/education-eks-Ry318DCv
     user: arn:aws:eks:us-east-2:123455:cluster/education-eks-Ry318DCv
+
     [[user]]: arn:aws:eks:us-east-2:123455:cluster/education-eks-Ry318DCv
 
   name: arn:aws:eks:us-east-2:123456:cluster/education-eks-Ry318DCv  
 
   name: arn:aws:eks:us-east-2:123456:cluster/education-eks-Ry318DCv  
 
  current-context: arn:aws:eks:us-east-2:123456:cluster/education-eks-Ry318DCv  
 
  current-context: arn:aws:eks:us-east-2:123456:cluster/education-eks-Ry318DCv  
 
  [[kind: Config]]
 
  [[kind: Config]]
<pre>
+
 
preferences: {}
+
{{kind config}}
users:
+
 
  - name: arn:aws:eks:us-east-2:123456:cluster/education-eks-Ry318DCv
+
 
  user:
+
=== Example ===
    exec:
+
  - name: your-cluster-name
      apiVersion: client.authentication.k8s.io/v1alpha1
+
  [[user]]:
      args:
+
    [[auth-provider:]]
      - --region
+
      [[config:]]
      - us-east-2
+
        [[access-token:]] ya29.a0AVA9y1sXXXXC-z107gauQ0174
      - eks
+
        cmd-args: [[config config-helper]] --format=json
      - get-token
+
        cmd-path: /Users/my-user/brew/Caskroom/google-cloud-sdk/latest/google-cloud-sdk/bin/[[gcloud]]
      - --cluster-name
+
        expiry: "2022-08-25T15:03:28Z"
      - education-eks-Ry318DCv
+
        expiry-key: '{.credential.token_expiry}'
      command: aws
+
        token-key: '{.credential.access_token}'
      env:
+
      name: your-name
      - name: AWS_PROFILE
 
        value: your_profile
 
</pre>
 
  
 
== Errors ==
 
== Errors ==
Line 53: Line 56:
 
  [[aws --version]]
 
  [[aws --version]]
 
  aws-cli/1.18.147 .../...
 
  aws-cli/1.18.147 .../...
 +
 +
[[error: You must be logged in to the server (Unauthorized)]]
 +
 +
== Activites ==
 +
* [[Merge multiple kubeconfigs]]
 +
* [[Authenticate to your Amazon EKS cluster]] <code>[[aws eks update-kubeconfig]]</code>
  
 
== Related ==
 
== Related ==
 
* https://docs.aws.amazon.com/eks/latest/userguide/create-kubeconfig.html
 
* https://docs.aws.amazon.com/eks/latest/userguide/create-kubeconfig.html
 
* <code>[[kubectl config]]</code>
 
* <code>[[kubectl config]]</code>
 +
* <code>[[kubectl konfig merge]]</code>
 
* <code>[[kubectl get nodes]]</code>,  <code>[[kubectl get svc]]</code>
 
* <code>[[kubectl get nodes]]</code>,  <code>[[kubectl get svc]]</code>
* [[Terraform: Kubernetes provider]]
+
* [[Terraform: Kubernetes provider]],  [[Terraform helm provider]]
* AWS: <code>[[aws eks update-kubeconfig]] --name my-eks-cluster-name</code>
+
* <code>[[aws eks get-token]]</code>
* GCP: <code>[[gcloud container clusters get-credentials]]</code>
+
* [[Connect to K8s cluster]]
* [[Config]]
+
** AWS: <code>[[aws eks update-kubeconfig]] --name my-eks-cluster-name</code>
 +
** [[GCP]]: <code>[[gcloud container clusters get-credentials]] [[MyClusterName]]</code>
 +
* <code>[[kubectl config rename-context]]</code>
 +
* <code>kubectl auth</code>
 +
* <code>[[kubectl config view --flatten]]</code>
 +
* <code>[[rancher cluster kubeconfig]]</code>
 +
* [[Install kubectl]]
 +
* <code>[[kubectl --context]]</code>
 +
* <code>[[az aks get-credentials]]</code>
  
 
== See also ==
 
== See also ==
 
* {{kubectl config}}
 
* {{kubectl config}}
* {{Terraform EKS}}
+
* {{tf EKS}}
  
 
[[Category:kubectl]]
 
[[Category:kubectl]]

Latest revision as of 14:33, 28 July 2024

~/.kube/config
kubectl --kubeconfig ~/.kube/yourclusterconfig
apiVersion: v1
clusters: null
contexts: null
current-context: ""
kind: Config
preferences: {}
users: null


Configure[edit]

Examples[edit]

apiVersion: v1 
clusters:
- cluster:
    certificate-authority-data: LS0tLS1CRUdJTiDATAREMOVEDCg==
    server: https://00AXXXXXXXXXX1B.gr7.us-east-2.eks.amazonaws.com
  name: arn:aws:eks:us-east-2:123455:cluster/education-eks-Ry318DCv 
contexts:
- context:
    cluster: arn:aws:eks:us-east-2:123456:cluster/education-eks-Ry318DCv
    user: arn:aws:eks:us-east-2:123455:cluster/education-eks-Ry318DCv
  name: arn:aws:eks:us-east-2:123456:cluster/education-eks-Ry318DCv 
current-context: arn:aws:eks:us-east-2:123456:cluster/education-eks-Ry318DCv 
kind: Config
  kind: Config
 preferences: {}
 users:
 - name: arn:aws:eks:us-east-2:123456:cluster/education-eks-Ry318DCv
  [[user:]]
    exec:
      apiVersion: client.authentication.k8s.io/v1alpha1
      args:
      - --region
      - us-east-2
      - eks
      - get-token
      - --cluster-name
      - education-eks-Ry318DCv
      command: aws
      env:
      - name: AWS_PROFILE
        value: your_aws_profile


Example[edit]

- name: your-cluster-name
  user:
    auth-provider:
      config:
        access-token: ya29.a0AVA9y1sXXXXC-z107gauQ0174
        cmd-args: config config-helper --format=json
        cmd-path: /Users/my-user/brew/Caskroom/google-cloud-sdk/latest/google-cloud-sdk/bin/gcloud
        expiry: "2022-08-25T15:03:28Z"
        expiry-key: '{.credential.token_expiry}'
        token-key: '{.credential.access_token}'
      name: your-name

Errors[edit]

Error: unable to describe cluster control plane: AccessDeniedException: User: arn:aws:iam::0987654321:user/YOUR_USER is not authorized to perform: eks:DescribeCluster on resource: arn:aws:eks:xx-east-2:0987654321:cluster/my-eks-cluster-name with an explicit deny


kubectl get pods
error: exec plugin: invalid apiVersion "client.authentication.k8s.io/v1alpha1"
aws --version
aws-cli/1.18.147 .../...
error: You must be logged in to the server (Unauthorized)

Activites[edit]

Related[edit]

See also[edit]

Advertising: