Kubernetes实战(十二)-使用kubeconfig文件管理多套kubernetes(k8s)集群

本文主要是介绍Kubernetes实战(十二)-使用kubeconfig文件管理多套kubernetes(k8s)集群,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1 概述

在生产环境中可能不止有一套kubernetes(k8s)集群,面对多套集群,运维人员可以使用kubeconfig文件管理多套kubernetes(k8s)集群,使用 kubeconfig 文件,可以组织集群、用户和命名空间,还可以定义上下文,以便在集群和命名空间之间快速轻松地切换。

2 kubeconfig文件

用于配置集群访问的文件称为“kubeconfig 文件”。 这是引用配置文件的通用方法,并不意味着有一个名为 kubeconfig 的文件。

使用 kubeconfig 文件来组织有关集群、用户、命名空间和身份认证机制的信息。 kubectl 命令行工具使用 kubeconfig 文件来查找选择集群所需的信息,并与集群的 API 服务器进行通信。

默认情况下,kubectl 在 $HOME/.kube 目录下查找名为 config 的文件。 你可以通过设置 KUBECONFIG 环境变量或者设置 --kubeconfig参数来指定其他 kubeconfig 文件。

kubeconfig文件由3部分组成:clusters,users,contexts。clusters是kubernetes(k8s)集群信息,users是连接kubernetes(k8s)集群的用户信息,contexts上下文综合了clusters信息和users信息。

apiVersion: v1
clusters:
- cluster:certificate-authority-data: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUM1ekNDQWMrZ0F3SUJBZ0lCQURBTkJna3Foa2lHOXcwQkFRc0ZBREFWTVJNd0VRWURWUVFERXdwcmRXSmwKY201bGRHVnpNQjRYRFRJek1USXhNVEV6TVRVeE5Wb1hEVE16TVRJd09ERXpNVFV4TlZvd0ZURVRNQkVHQTFVRQpBeE1LYTNWaVpYSnVaWFJsY3pDQ0FTSXdEUVlKS29aSWh2Y05BUUVCQlFBRGdnRVBBRENDQVFvQ2dnRUJBTkdaCmR5N0J6Q1ZOYVZmeXJvN1k3Qm1JZ2lla3ZtSWpjUFpUdWp1UXlNMk43clZiQS9IcWh2eGQ2cmZtczM5a2IvSnYKOVpScWp5MUlGRTdsc3B5L1ZyL2F5TEYyMG0waDdsQnRTMlRrUXVHRkRzTUtQVWFsNVZIeU1rU05jbHd3NlpQVQpIMGhmSUZibHVlc2lxeTZBMlFad1NQT2FmZ3BGMmRyb2hFY242M0RiMzc0end3eERqVmRyS2g3cjF2RU85c0J6CjBkVGQ4UHVZdVFmL1R4ckk2M3JITFJRekViWXV0b3dlUzA0bTJKbUF1d2Y3bFVmQ3B4clNLWDlhb3FqRWZzTzEKN3U0Q3UvTG9kM2FENVFSZEJpeGNtdEYyeUV4VC9yaHgzckV5MDk3eHU5YzlVQVh0UVlxSXpTWTFLdTkvY1ZYUwozWkQ1MWtWR29RVVBMMU5WMHFFQ0F3RUFBYU5DTUVBd0RnWURWUjBQQVFIL0JBUURBZ0trTUE4R0ExVWRFd0VCCi93UUZNQU1CQWY4d0hRWURWUjBPQkJZRUZGb2N1RENoSUZjWmw2QmE0dTVQL0FUVnprOGJNQTBHQ1NxR1NJYjMKRFFFQkN3VUFBNElCQVFCMytBSitEa0hRa1IyOGJtYi9jbDA5WGtBQm0xdXE0cnVHTGVyazVIYUFWVnZWSThIVApiU3ByVWtXQno4OFJJa0JQQTNRdkNwUEt5YjdhbVk3QnpUekc4bmgwVGdUZXpoc2tWVjVoalc3VEYxSVp4WlhBCllCOThiQ0h6Zlo4ZUpoOW9DYjZKSkkyTUczYVVoN2pmZENsaHUzVUwvbGI3L0I5U0M3K2FFTUVJZHFPM0xydVkKbnZQRnVNeWpmdEhoNmVrY2x6VWptcGRtRFhLV3UzRExtYmRLWFg0TXpVRDNuSHkxWTdrekJISjJFUmpRbXlycgptSHh5c09vb2I4d1RIYmtQaFNic0x0ZVlDWFRER0tsd05OUytkSks4UVZjMTc4SFlURXJ1d3FYY2FRYkpFc1lICnBacGtDQ1lwRGJLMmp6Z0UzVnRFWnhCSkw5UW56dXV5eWVZaAotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==server: https://10.220.43.203:6443name: kubernetes
contexts:
- context:cluster: kubernetesuser: kubernetes-adminname: kubernetes-admin@kubernetes
current-context: kubernetes-admin@kubernetes
kind: Config
preferences: {}
users:
- name: kubernetes-adminuser:client-certificate-data: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURJVENDQWdtZ0F3SUJBZ0lJUnhnQ1p1bzlWUVl3RFFZSktvWklodmNOQVFFTEJRQXdGVEVUTUJFR0ExVUUKQXhNS2EzVmlaWEp1WlhSbGN6QWVGdzB5TXpFeU1URXhNekUxTVRWYUZ3MHlOREV5TVRBeE16RTFNVGRhTURReApGekFWQmdOVkJBb1REbk41YzNSbGJUcHRZWE4wWlhKek1Sa3dGd1lEVlFRREV4QnJkV0psY201bGRHVnpMV0ZrCmJXbHVNSUlCSWpBTkJna3Foa2lHOXcwQkFRRUZBQU9DQVE4QU1JSUJDZ0tDQVFFQTNrTS80NWlwZXpaN3Q5SjEKNzlHWHJCSlpaWUJ1KzFuTUE2dVpEOFBpNzhuYVJqNE96NG9vRUc1NXdvWG85cUJYL2Iwd0lPUU1WRFRrbXVaNApEbG5KOEhwdzJQTWR3REIzUW14U1Fzb1VjN0paVjZxb0ZyaVZ1blRMSzZGMnF5M3BWM044bnVxam1CQ3JuRGJFClg4STBoaUVKZ3VNenVFZFZ4NU0xcFdJdU50MkRMdS9WWGFhV3J5R2NqN250YVFSbmRzWkd4b3hycURtTEY5UDcKY3J4bHF6TkVVeTNJMnkySU9mci9kcjVGbkZZa0V3d3p1TnRvdGdHaW1MYXkzOXVwR25wMkNKdm1QQVNQcHpzbQpkNzZrYzJ4Q1ByTFVuR2ZDTlNHbGlsaHVoOUVKSVNESmpoMHJKTFdBeGUwajRmZWdLU241bjJSbmRWeklvcUxVCkZHTnB5UUlEQVFBQm8xWXdWREFPQmdOVkhROEJBZjhFQkFNQ0JhQXdFd1lEVlIwbEJBd3dDZ1lJS3dZQkJRVUgKQXdJd0RBWURWUjBUQVFIL0JBSXdBREFmQmdOVkhTTUVHREFXZ0JSYUhMZ3dvU0JYR1plZ1d1THVUL3dFMWM1UApHekFOQmdrcWhraUc5dzBCQVFzRkFBT0NBUUVBYUU1ODQzd3hVVi9oWnc5bHg5T3VFcTl4S2phL3h5K0VoQkFTCmE5THcwc3N3SUdvUGFZZWRZbVJMWWlFYWdVSVZsTEkxd3J2TGhuMEd2dERWN0RNNmJRNVpkbzRiZ3UwWG5CbHkKb0t3WU0vbXp5b1I4N0JUNHc4L21lK2NORTIya3ppcFIrMS9JeXZRNTZVenZwaTJjWHcvVTJwd29EWVhxWTZzSwozWDNNaElDYlVpeUs5by8wbUM2Y1RGd2JkcDR6a1V1RU40QkVtT2hFalBhTzZic1VKRHgxOFIyUEFUcGdZMk5yCkpmY1JwSTZ5SGpKaCtOT1MxR0srN0VTQjE5djNxcVh2d09xYzc2dzNjQVJpb0tuTGgvQ21ibWVtcDBLZ3hLT2sKclNTWHpmUlI2WUtXNmo4VENlbGpiOWlCN00vcndJTXNGeWZuUGRCVEJ5Z3lFVUR4Z0E9PQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==client-key-data: LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcFFJQkFBS0NBUUVBM2tNLzQ1aXBlelo3dDlKMTc5R1hyQkpaWllCdSsxbk1BNnVaRDhQaTc4bmFSajRPCno0b29FRzU1d29YbzlxQlgvYjB3SU9RTVZEVGttdVo0RGxuSjhIcHcyUE1kd0RCM1FteFNRc29VYzdKWlY2cW8KRnJpVnVuVExLNkYycXkzcFYzTjhudXFqbUJDcm5EYkVYOEkwaGlFSmd1TXp1RWRWeDVNMXBXSXVOdDJETHUvVgpYYWFXcnlHY2o3bnRhUVJuZHNaR3hveHJxRG1MRjlQN2NyeGxxek5FVXkzSTJ5MklPZnIvZHI1Rm5GWWtFd3d6CnVOdG90Z0dpbUxheTM5dXBHbnAyQ0p2bVBBU1BwenNtZDc2a2MyeENQckxVbkdmQ05TR2xpbGh1aDlFSklTREoKamgwckpMV0F4ZTBqNGZlZ0tTbjVuMlJuZFZ6SW9xTFVGR05weVFJREFRQUJBb0lCQURGS2JMTEd1bDlPMStVTwpVWVZieiswakxKd3IvWERVbXovOUlEYTAxSEVsTExrRExqbXNnL0lRN2dQTHVyeG5GdHg0eG1HazhXOERRK2R1ClVSV3RwL0VpMWovbXVxUlNtMEFwMFp4cVFGcmdKSndpaHFCelV4RkVzWUg5anRtcmx1SUVCSkVockNJZklFL0cKZllwWEFWcjFuS3hnUXFvTmQrS0lyUTcrVlExcGJLbEZONlB5M3ZzY3p1enhRYXhPOVlzWEFTSERrcVRhc29JZwpHVHNPN0hXYjdrZVRJdk5aaFUwSVNvaCtXbGNvQ0MvVkljUVlLRlhSRlovQnY5ZlVSRzRIVlVwcU9GVjhZNjhaCkExK1NwNDEvR0JFeTBPa3FGYVZEUWtGT3NweVZEelhtYzJUWXo2TnhyVEhORjF1bmVmcUphTWZ1WUtQK0xRRXkKSzZWZUVCa0NnWUVBKzRWR3dvelo4WjR2RzZiamJTYkNFdzBQUko4czhMQUZPVHhwd1FzZXhmbVg2OUJRQWxpYQpXK0F3Qnd1OFpEZTYzQnFGcTVsekZHWkUveTFZeDFEZnBURnNmWEF2S05oVW1ucTRiR1RPdy9yN0JSanlPRTd3CmtPLzFaVjRhNlFxS0Vud1Nha2tXamd4dDZvVFZJeHREUU1FSE5ZZENLdU5kWDFRZEZLM0ExYk1DZ1lFQTRqaVUKM3ppL1dQbDlROVE1K1NzSWF2NDVzdzNTQ0tYamhMOG0wRWRHSUdnVVkrWUI2T3REY1AvNEk5Y0pCRmo1aitpQwpScmZvNXkwblNGZERTNGE5UENEdUVSVkh6dFVTbkNtVEVIRXJ0WDF1NitnNnJEblRncFpiVzlFTjNCZUNrb3U3CnZZUW1mSGd1ZmxnRm9RT1pRUGhEWmg1SE56V0x0TFNGYzNWQ2ZKTUNnWUVBOTZuZ1p5bHlZV3cxVHJFaU9CUjEKL1hSYW1HTjBTUHZKNlBZSDNFSXE1eDVCN2IyTlN3SWIzR1FBWnErenJhc0NvRUN0WnE4T2xnT3Q1T2F1Q0hVbQpBdStMdUdpQ3gyRmN6VkFSMFFuaVh5Ly9oS0Z2d09wYUR4MTVNWHRjWENRNG1NTDdEeFV3MUdhQXhQQlBQdVpWCmJxbWpnNTNRRlpNVUdnNGxKSHVDNmVrQ2dZRUF6Ry9KeWZqa282bkVGSHBFY2ZMN3hvVTg2NTEveENUMmVjNnQKYXVnZWJjYmhObTUwSjJRRkxLZUdQZzFrcnJNaHhYV2YxZno1MDRFdzBPVmJnWE9nckNndVBPMzRXT2loeXRLZgpmdXBuVDdxdGRUQUhaZ0ZVTGQxbmJwQjhiL3duR2Z5Qmk0RlRyb1NGcjlRb01oeW9jTmhyUUd2NGUrSStBTzVxCjg2NXlpVlVDZ1lFQXN1QWtlL01nMndKMnhLUzhWdE9rUHArSGpReVhFeW9mM09STGRPSEtXcFFoZzl0WGdZZjUKRmJVVW1WME5KQ3RqUm9tMnkrRHk1bCtsSTQ3UjlBWkRLRHVYTTg4b2NIY1FkR0FhdjZ3c1JMSmpmbkpsaVU3bgp5WFhZaVVVZUQyaUljVTlFa25aZU14MGVIQkFvOEdPQ3hWakZlWEl5ODF6aHNkN3BqZnNJWDhVPQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQo=

3 kubernetes(k8s)多集群切换 

默认的kubeconfig文件为:~/.kube/config 文件。

$ ls .kube/
cache  config

编写一个kubeconfig文件来管理两套k8s集群。

$ cp .kube/config config2
$ cat config2 
apiVersion: v1
clusters:
- cluster:certificate-authority-data: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUM1ekNDQWMrZ0F3SUJBZ0lCQURBTkJna3Foa2lHOXcwQkFRc0ZBREFWTVJNd0VRWURWUVFERXdwcmRXSmwKY201bGRHVnpNQjRYRFRJeU1ERXdPVEE0TVRnd01Wb1hEVE15TURFd056QTRNVGd3TVZvd0ZURVRNQkVHQTFVRQpBeE1LYTNWaVpYSnVaWFJsY3pDQ0FTSXdEUVlKS29aSWh2Y05BUUVCQlFBRGdnRVBBRENDQVFvQ2dnRUJBTEZyCkRxb2YyV2twdDJ1a2xSWnljRHQyQ2xmYnNXdTBhb256NW1rTG5IaThlZFdJbkdWR09tMllxV0x2V20yRGFrYWYKSk9oNmtRU0wyYjBXZjBRbnZaMklIQ0hBYm5lTmI0NEpIaHVTL2MxU285d2VNQm5GNk9ZRjU2Qkk4dnlSamJhZgoyVXBQSUhNZTlYcitmZTYvRHRmTGFwOERkSFlCWGFPWlpZcDZIaGEyU1JWSjg4cmJRbzJuWnV6Ykl5bWdMUnpSCnpwdE9TRVpBa1JUMzRkZmF4bm0yM3hVNG9vSnRDRWhjZVNjZ3QvZ0szOFRXMmJkRmIzU1c2UWdNc0FFOG4yVXQKaDR4c203TDVla29kTHU1N2VmWHhNZTVKTU5yTXBIL0h5M3BHSlpab0NYbG5rbm9ML2EzdTBHKzgzak8zcXRzWgp0M004TDdDcTc5Qm5BQW41aS8wQ0F3RUFBYU5DTUVBd0RnWURWUjBQQVFIL0JBUURBZ0trTUE4R0ExVWRFd0VCCi93UUZNQU1CQWY4d0hRWURWUjBPQkJZRUZNTWd0NGZKTWhDa0s2NGF1WWNML1VlUEs5OVBNQTBHQ1NxR1NJYjMKRFFFQkN3VUFBNElCQVFDcFVtSittNk9nNFZuQjBSNWpxd05EakJxZ0pQVWtONHB1MFFURlg1WWs4NGFOMnQvYgpKWTFTQ3hnR2h5Q1JERVA1U0NUMXZrdHRqaFpVVnArZjdZUnE3V1BXK0JQcWE3Nm5TUlEydUkxRHoxVDhZSGNnCi9CRkNadWIwQVZ4Y0Z1RTdSb1NkbjFDOTlqaERjUCtIRW9zRFl6dUYzZmo4QzlCMkl6d3ZIaHpaUDAvVlZSRDcKay9wWk5ub3hRdHNoWHdvVnhYS1BacHNGMHhvL1ppcUVoa2ZIYURMVC9MZE5qYXhyTjNOcFRhbTNTV2tyelZ6VQpKWGpyL0xKbGs3THVBcVBVT1VBdHBRTDZSbTArTXVQTGw0YkxQNFhOOTZOZit0NDlHdS9LeXBabXpIQkFOMWl0CkYrN0szeXVoamQ4VVNtUE14SVdPR2JEc05sTHMzTmJ5S3RpNgotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==server: https://192.168.110.130:6443name: cluster1
- cluster:certificate-authority-data:这里写第二个集群的密钥 server: https://cluster2_ip:6443name: cluster2
contexts:
- context:cluster: cluster1namespace: defaultuser: admin1name: admin1@cluster1
- context:cluster: cluster2namespace: defaultuser: admin2name: admin2@cluster2
current-context: admin1@cluster1
kind: Config
preferences: {}
users:
- name: admin1user:client-certificate-data: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURJVENDQWdtZ0F3SUJBZ0lJR0ZpNStHUTdGOGd3RFFZSktvWklodmNOQVFFTEJRQXdGVEVUTUJFR0ExVUUKQXhNS2EzVmlaWEp1WlhSbGN6QWVGdzB5TWpBeE1Ea3dPREU0TURGYUZ3MHlNekF4TURrd09ERTRNRE5hTURReApGekFWQmdOVkJBb1REbk41YzNSbGJUcHRZWE4wWlhKek1Sa3dGd1lEVlFRREV4QnJkV0psY201bGRHVnpMV0ZrCmJXbHVNSUlCSWpBTkJna3Foa2lHOXcwQkFRRUZBQU9DQVE4QU1JSUJDZ0tDQVFFQXNMUVpScS9BeVF1aDlVdy8KN0craVJqekovdUFjbmtubU9VMHQ1OHNIcUw4b0ZXVlFyeUlDS3djdEtMcEp6RHBMOEZDWUtoejJSekY2VHJtawpzYVcvT2FMRmV2SjR2Y2NIbm1McGR1SWpram1TRnJ0L0R6VCsvSWdacGNlL21SRC9LR0tQUUxSQVVpUGx6NzdhClRvYU1pWGM5Ny9XZGp0Nk9ic091RGVsTnlteU4xRG5ONWJ2NWRFTkRaclh3VTFkQndhQjRXdnliTi9nVm02TUUKSjhRdXJDZ2V5d2swRjRtd3kwcGUyVldBd3Y1VHFxTmVzZ01pWHFacjZ2SjNSV285Z0tCeVhCODNBb1gwTlk4TQptY1JIWG44cWhPZ3hYTXhXUWM2SEI1cE81QnFPUnY3MUE0NC9tU1FoWkNORCtLdVhPVlQvUmMvRTU1eDBpWjZoCmVrcHo0UUlEQVFBQm8xWXdWREFPQmdOVkhROEJBZjhFQkFNQ0JhQXdFd1lEVlIwbEJBd3dDZ1lJS3dZQkJRVUgKQXdJd0RBWURWUjBUQVFIL0JBSXdBREFmQmdOVkhTTUVHREFXZ0JURElMZUh5VElRcEN1dUdybUhDLzFIanl2ZgpUekFOQmdrcWhraUc5dzBCQVFzRkFBT0NBUUVBUStXL290TUdickVFV2t6TzFnVmV3TjlSNFo5d2hESFZ5T2piCjh5d2FxN1JXQzRuZjd1WGlmT01oTThoYm1NQ3RTVjVtaTVxQzZQaWVETWhHYXpySzVYMVNmSk9aazlLdnVwaHYKNWVkdm9OZzN4OEVIWWJHaUdqMnVDRktIaklYMTh2U1lpMU4yeXFkcW5TOGFBNkcyOWFOcjY2c2NnemFMR3g1VAorTytvYk8yUmdIbHEva1N4dFZxbThkQUplcFFNR0l2ZFJQYWhLZmw2dGc1TStGSHVZQndycGRzR2NtNXFoVWc5CktrZEpUZVF0S1dwdS9SZUNUQU9PMnN2akF1NWhEVzhpMlFFUmNNdDh2cC9WZ0htK1lTalloQklqa205R3VZaWMKRVdFVGk4djF5M0l0NDZqdE1Sa0Vub3Q5ZUFIbFlLWFplWlNZb1pXVFFVWS9hbmYwRUE9PQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==client-key-data: LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcEFJQkFBS0NBUUVBc0xRWlJxL0F5UXVoOVV3LzdHK2lSanpKL3VBY25rbm1PVTB0NThzSHFMOG9GV1ZRCnJ5SUNLd2N0S0xwSnpEcEw4RkNZS2h6MlJ6RjZUcm1rc2FXL09hTEZldko0dmNjSG5tTHBkdUlqa2ptU0ZydC8KRHpUKy9JZ1pwY2UvbVJEL0tHS1BRTFJBVWlQbHo3N2FUb2FNaVhjOTcvV2RqdDZPYnNPdURlbE55bXlOMURuTgo1YnY1ZEVORFpyWHdVMWRCd2FCNFd2eWJOL2dWbTZNRUo4UXVyQ2dleXdrMEY0bXd5MHBlMlZXQXd2NVRxcU5lCnNnTWlYcVpyNnZKM1JXbzlnS0J5WEI4M0FvWDBOWThNbWNSSFhuOHFoT2d4WE14V1FjNkhCNXBPNUJxT1J2NzEKQTQ0L21TUWhaQ05EK0t1WE9WVC9SYy9FNTV4MGlaNmhla3B6NFFJREFRQUJBb0lCQVFDc09aMDVMQ3YyeUFPLwpGZVpvQ0JaZDV2bnFGWDFQT2kvT1FjOHdVTTdTUmg1SFhFeGJwZ1grOGl1dHVvUWJMZWE5LzQrUDNGS2Q2VGVRCmE1aCtIVkpZVnJHcnQ1Qy9SN0hCU2g3SzVIWlBHeFdzV21ybzQzcHpvQ04vVlVVRloyK0thU1crcHZEYUhtcnIKSk5XYUc4SDJhZVpRYjFCMTQ2MW5nQW14UFdlNGxwNjNnNnoyakY2Qk92ZTdIMXlvemxiajJNSVJJRFRYTDZ6cApZMm9hQmJjUTh2YmNLVlJ1SXUxSVh3Vk5QRk90aGRxOWNqdEViQ1d3c0pLcWU4Zm9IWjU2VVF0SkZSbVJXd3pwCjFNS0wwaDJEVG8zLzlqdGdrSDZUcStna1JiVmRWaTZYbjlxenpYaEdPaTM1dVJUUmdXZlFjQjFuYzVEUXhMZE0KcWY4dWNHaFJBb0dCQU5hclFDeHBjTVQxc0tVa2JVVElBT1h3VnBlcTg4Qmk0QUdHQTQvOFN6QklxUmpBMklZTwo5T29NaGZmZ21SaDUvQlBLRXJndk5wNklNVHpEMlpGcTNyalpieDVyU1VYenR6K2xuWjdKWkVFTDRpSXdDSE9NCkxuYVA2OW5DOEQyMy9WNXRmRDd1Unk1SnBPMGJsK01LSisvQndiaTBKL3lvNVFLRWFaT1JERjhEQW9HQkFOSzUKbE92NUV2NzExb0dCd1NUMmZqSnkyZHhxYzErU2IxR3dCRVp4aDNNSk41Y0hPVUVLWFBsOGZsc1hjZWhKS2JlSgpMUU80amFvdVFEUkJIelJiczMwL083R051dXN1UGV0eTk5ODNJYXl2OWtXd045R2FJS3kzSmxRaWdzQ2Fva3NICjlYUEhyOFFqWXJkYWpSVnlkUDhaL0hycGdIRGYxckNOVGtXVjBZcExBb0dBSWFqUWN5WkZURnpKeWRzZ1Z2eVYKUjNpYjIwUXUzQ2Vrd0JoblRwaGNvY0dDNGlLNjBLcGZ0S01xRG1mbEdYVm5GU05HTkNNVENXQ0pkK0d0cDZOKwpNTFhIT3BuUDcydjdlN3RZTDZHY1dxYW1XbjMxbFVpUnNIMTRtYmg3T3ZJeWhDL2VuMjkxTWNqU1YydFFNWVZTCkpjSFh3a0pkVXJ5WXpBQS9IYWhNckVrQ2dZRUFoN3V1WjBrcXFUdmxEY3BzaE1pWmhSbGhwNDZSL2srdWtLbVcKTjJITlk1WGVUdFFDVnhpN3hxQWdLOEN3U0hWSC84YkdUZzFFZ3dnRHB5VURXcEJ1enhBNS9TWlQ3a1Q4OFhvKwptM05CcDZBNE82OUVaU2lvUDFoQndoUHdzT3RwK25hSDdpb0QxNDBMZXh0Q29UdjJqSk5LaEVsL3lEVUdidmEyCklqQmNwbjBDZ1lCZThNTERFK1RCKytYVHFUT29wWGhaL09vRVdlSEp2M2xwdGdmOWg0eVZja3NqVEtNMkpKcEsKNFJFYmJSdUdsY1hOUzg3bEh1dUtCZE9aVzR5Q1hMTCtzcGt4YkY0ZmlFQWFkaTFDOWhZSko3Y2kzZy9jdUxLcQpPdk9EdlhBK2dlRHVaMk9Gakh6RU1XcktKUm1Sd0N1QVdqRld5WndneU16dUp4WWRkRU1raWc9PQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQo=
- name: admin2user:client-certificate-data:这里写第二个集群的用户公钥 client-key-data:这里写第二个集群的用户私钥

查看全局上下文,看有几套集群。

$ kubectl config get-contexts 
CURRENT   NAME                          CLUSTER      AUTHINFO           NAMESPACE
*         kubernetes-admin@kubernetes   kubernetes   kubernetes-admin   

切换k8s集群。

$ kubectl config use-context kubernetes-admin@kubernetes
Switched to context "kubernetes-admin@kubernetes".

这篇关于Kubernetes实战(十二)-使用kubeconfig文件管理多套kubernetes(k8s)集群的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/483589

相关文章

Python使用FastAPI实现大文件分片上传与断点续传功能

《Python使用FastAPI实现大文件分片上传与断点续传功能》大文件直传常遇到超时、网络抖动失败、失败后只能重传的问题,分片上传+断点续传可以把大文件拆成若干小块逐个上传,并在中断后从已完成分片继... 目录一、接口设计二、服务端实现(FastAPI)2.1 运行环境2.2 目录结构建议2.3 serv

MyBatis分页查询实战案例完整流程

《MyBatis分页查询实战案例完整流程》MyBatis是一个强大的Java持久层框架,支持自定义SQL和高级映射,本案例以员工工资信息管理为例,详细讲解如何在IDEA中使用MyBatis结合Page... 目录1. MyBATis框架简介2. 分页查询原理与应用场景2.1 分页查询的基本原理2.1.1 分

Spring Security简介、使用与最佳实践

《SpringSecurity简介、使用与最佳实践》SpringSecurity是一个能够为基于Spring的企业应用系统提供声明式的安全访问控制解决方案的安全框架,本文给大家介绍SpringSec... 目录一、如何理解 Spring Security?—— 核心思想二、如何在 Java 项目中使用?——

springboot中使用okhttp3的小结

《springboot中使用okhttp3的小结》OkHttp3是一个JavaHTTP客户端,可以处理各种请求类型,比如GET、POST、PUT等,并且支持高效的HTTP连接池、请求和响应缓存、以及异... 在 Spring Boot 项目中使用 OkHttp3 进行 HTTP 请求是一个高效且流行的方式。

Java使用Javassist动态生成HelloWorld类

《Java使用Javassist动态生成HelloWorld类》Javassist是一个非常强大的字节码操作和定义库,它允许开发者在运行时创建新的类或者修改现有的类,本文将简单介绍如何使用Javass... 目录1. Javassist简介2. 环境准备3. 动态生成HelloWorld类3.1 创建CtC

使用Python批量将.ncm格式的音频文件转换为.mp3格式的实战详解

《使用Python批量将.ncm格式的音频文件转换为.mp3格式的实战详解》本文详细介绍了如何使用Python通过ncmdump工具批量将.ncm音频转换为.mp3的步骤,包括安装、配置ffmpeg环... 目录1. 前言2. 安装 ncmdump3. 实现 .ncm 转 .mp34. 执行过程5. 执行结

Java使用jar命令配置服务器端口的完整指南

《Java使用jar命令配置服务器端口的完整指南》本文将详细介绍如何使用java-jar命令启动应用,并重点讲解如何配置服务器端口,同时提供一个实用的Web工具来简化这一过程,希望对大家有所帮助... 目录1. Java Jar文件简介1.1 什么是Jar文件1.2 创建可执行Jar文件2. 使用java

C#使用Spire.Doc for .NET实现HTML转Word的高效方案

《C#使用Spire.Docfor.NET实现HTML转Word的高效方案》在Web开发中,HTML内容的生成与处理是高频需求,然而,当用户需要将HTML页面或动态生成的HTML字符串转换为Wor... 目录引言一、html转Word的典型场景与挑战二、用 Spire.Doc 实现 HTML 转 Word1

Java中的抽象类与abstract 关键字使用详解

《Java中的抽象类与abstract关键字使用详解》:本文主要介绍Java中的抽象类与abstract关键字使用详解,本文通过实例代码给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧... 目录一、抽象类的概念二、使用 abstract2.1 修饰类 => 抽象类2.2 修饰方法 => 抽象方法,没有

SpringBoot 多环境开发实战(从配置、管理与控制)

《SpringBoot多环境开发实战(从配置、管理与控制)》本文详解SpringBoot多环境配置,涵盖单文件YAML、多文件模式、MavenProfile分组及激活策略,通过优先级控制灵活切换环境... 目录一、多环境开发基础(单文件 YAML 版)(一)配置原理与优势(二)实操示例二、多环境开发多文件版