Skip to content

NimTechnology

Trình bày các công nghệ CLOUD một cách dễ hiểu.

  • Kubernetes & Container
    • Docker
    • Kubernetes
      • Ingress
    • Helm Chart
    • Isito-EnvoyFilter
    • Apache Kafka
      • Kafka
      • Kafka Connect
      • Lenses
    • Vault
    • Longhorn – Storage
    • VictoriaMetrics
  • CI/CD
    • ArgoCD
    • ArgoWorkflows
    • Spinnaker
    • Jenkins
    • Harbor
    • TeamCity
    • Git
      • Bitbucket
  • Coding
    • Terraform
      • GCP – Google Cloud
      • AWS – Amazon Web Service
    • Golang
    • Laravel
    • Python
    • Jquery & JavaScript
    • Selenium
  • Log & Monitor
    • Prometheus
    • Grafana
    • ELK
      • Kibana
      • Logstash
  • BareMetal
  • Toggle search form

[KUBECONFIG] Tìm hiểu về –kubeconfig và –context trong kubeconfig để quan lý nhiều cluster k8s

Posted on July 22, 2021February 13, 2022 By nim No Comments on [KUBECONFIG] Tìm hiểu về –kubeconfig và –context trong kubeconfig để quan lý nhiều cluster k8s

Trước đây mình cứ tạo cluster k8s xong là mình lại

mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config

Xong là mình kubectl get node lên là xong hehe.

Giờ bài toán đặt ra chỉ cần 1 file config là mình cũng có thể quản lý nhiều cluster k8s

https://ahmet.im/blog/mastering-kubeconfig/

Hướng dẫn chi tiết ở link trên nhé. Mình chỉ tổng hợp nhanh thứ mình cần đã:

Giờ bạn đang chỉ quản lý 1 cluster k8s bạn gõ

root@spinnaker-ubuntu16:~/.kube# kubectl config view
apiVersion: v1
clusters:
- cluster:
    certificate-authority-data: DATA+OMITTED
    server: https://192.168.101.41:6443
  name: kubernetes1
- cluster:
    certificate-authority-data: DATA+OMITTED
    server: https://192.168.101.42:6443
  name: kubernetes2

contexts:
- context:
    cluster: kubernetes1
    user: kubernetes-admin
  name: kubernetes-admin@kubernetes1
- context:
    cluster: kubernetes2
    user: kubernetes-admin
  name: kubernetes-admin@kubernetes2

current-context: kubernetes-admin@kubernetes1
kind: Config
preferences: {}
users:
- name: kubernetes-admin
  user:
    client-certificate-data: REDACTED
    client-key-data: REDACTED

ở Phần context thì bạn thấy name: kubernetes-admin@kubernetes2 và current-context: kubernetes-admin@kubernetes2

Giờ gõ test với context nhé:

root@spinnaker-ubuntu16:~/.kube# kubectl get pods --context=kubernetes-admin@kubernetes2
No resources found in default namespace.

Giờ muốn add nhiều cluster và context thì khảo link ở trên

>>>> sau khi bạn đã có nhiều config của nhiều cluster k8s, gõ context dài quá giờ switch qua, switch lại cho tiện.

root@work-space-u20:~/argocd# kubectl config get-contexts
CURRENT   NAME               CLUSTER            AUTHINFO           NAMESPACE
          k0s-cluster2       k0s-cluster2       admin-cluster2     default
          k8s-cicd-stag-sc   k8s-cicd-stag-sc   k8s-cicd-stag-sc   
*         local              local              local              
root@work-space-u20:~/argocd# kubectl config use-context k8s-cicd-stag-sc
Switched to context "k8s-cicd-stag-sc".
Kubernetes, Kubernetes & Container

Post navigation

Previous Post: Hướng dẫn clear hay xoá cache DNS – MAC
Next Post: [Remote App/windows] Hướng dẫn cài đặt remote app trên windows để build hệ thông vdi Pro.

More Related Articles

[Datree] Admission Controllers Or CLI? Kubernetes Policy Validations with Datree Kubernetes & Container
[issue/alpine] docker 20.10.2 -> golang:1-alpine3.14 error: make: go: Operation not permitted Docker
[Kubernetes] Lesson2: k8s easy – continues series diagram visual Kubernetes Kubernetes & Container
[kiali] Config authentication on Kiali. Isito-EnvoyFilter
[wordpress] Install WordPress so easily. Kubernetes & Container
[Guacamole] Hướng dẫn cài đặt và sử dụng Guacamole remote windows để tạo môi trường làm việc trên cloud Kubernetes & Container

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Tham Gia Group DevOps nhé!
Để Nim có nhiều động lực ra nhiều bài viết.
Để nhận được những thông báo mới nhất.

Recent Posts

  • [Smartctl] Instruction check the health disk of Raspberry. January 16, 2023
  • [kubectl/Argocd] How to create a kubectl config file for serviceaccount or from the cluster secret of Argocd January 12, 2023
  • [Helm/Github] Create a public Helm chart repository with GitHub Pages January 8, 2023
  • [AWS] How to increase the disk size of a Windows EC2 machine? January 4, 2023
  • [Redis] ElastiCache-Redis Cross-Region Replication|Global DataStore January 3, 2023

Archives

  • January 2023
  • December 2022
  • November 2022
  • October 2022
  • September 2022
  • August 2022
  • July 2022
  • June 2022
  • May 2022
  • April 2022
  • March 2022
  • February 2022
  • January 2022
  • December 2021
  • November 2021
  • October 2021
  • September 2021
  • August 2021
  • July 2021
  • June 2021

Categories

  • BareMetal
  • CI/CD
    • ArgoCD
    • ArgoWorkflows
    • Git
      • Bitbucket
    • Harbor
    • Jenkins
    • Spinnaker
    • TeamCity
  • Coding
    • Golang
    • Jquery & JavaScript
    • Laravel
    • Python
    • Selenium
    • Terraform
      • AWS – Amazon Web Service
      • GCP – Google Cloud
  • Kubernetes & Container
    • Apache Kafka
      • Kafka
      • Kafka Connect
      • Lenses
    • Docker
    • Helm Chart
    • Isito-EnvoyFilter
    • Kubernetes
      • Ingress
    • Longhorn – Storage
    • Vault
    • VictoriaMetrics
  • Log & Monitor
    • ELK
      • Kibana
      • Logstash
    • Grafana
    • Prometheus
  • Uncategorized
  • Admin

Copyright © 2023 NimTechnology.