k8s?clientConfig和rawConfig區(qū)別解析
k8s clientConfig和rawConfig區(qū)別
k8s.io/client-go v0.28.2
nonInteractiveDeferredLoadingClientConfig := clientcmd.NewNonInteractiveDeferredLoadingClientConfig(
&clientcmd.ClientConfigLoadingRules{ExplicitPath: "/root/.kube/config"},
&clientcmd.ConfigOverrides{})
clientConfig, err := nonInteractiveDeferredLoadingClientConfig.ClientConfig()
rawConfig, err := nonInteractiveDeferredLoadingClientConfig.RawConfig()
基于kubeconfig可以創(chuàng)建clientConfig和rawConfig。兩者區(qū)別在于,clientConfig包含了訪問kube-apiserver的地址和認(rèn)證鑒權(quán)信息,缺少cluster信息;rawConfig是包含kubeconfig所有內(nèi)容的對象。
補(bǔ)充:k8s解析kubeconfig的兩種常用方式
k8s解析kubeconfig的兩種常用方式
k8s v1.19.0
方法1
staging/src/k8s.io/client-go/tools/clientcmd/client_config.goBuildConfigFromFlags函數(shù)根據(jù)本地kubeconfig文件路徑來生成restclient.Config對象。

staging/src/k8s.io/client-go/tools/clientcmd/loader.goLoad方法讀取指定目錄下多個文件內(nèi)容并合并,轉(zhuǎn)換成clientcmdapi.Config對象。

Load函數(shù)基于字節(jié)切片生成clientcmdapi.Config對象。


方法2
staging/src/k8s.io/client-go/tools/clientcmd/client_config.goBuildConfigFromKubeconfigGetter函數(shù)根據(jù)KubeconfigGetter來生成kubeconfig對象。其中,KubeconfigGetter是生成clientcmdapi.Config對象的方法,可以調(diào)用上面的Load函數(shù)來實(shí)現(xiàn)。

到此這篇關(guān)于k8s clientConfig和rawConfig區(qū)別解析的文章就介紹到這了,更多相關(guān)k8s clientConfig和rawConfig內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
kubernetes?部署dashboard最新詳細(xì)步驟
這篇文章主要介紹了kubernetes?部署dashboard最新詳細(xì)步驟,本文給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧2024-06-06
詳解Rainbond內(nèi)置ServiceMesh微服務(wù)架構(gòu)
這篇文章主要為大家介紹了詳解Rainbond內(nèi)置ServiceMesh微服務(wù)架構(gòu),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-04-04
Kubernetes集群中Calico網(wǎng)絡(luò)插件報錯問題分析及解決過程
Kubernetes集群中Calico網(wǎng)絡(luò)插件報錯(如FailedCreatePodSandBox)通常由配置錯誤、RBAC權(quán)限缺失或組件故障導(dǎo)致,解決方法包括重啟Calico組件、驗(yàn)證配置和權(quán)限,定期監(jiān)控與維護(hù)以確保網(wǎng)絡(luò)正常運(yùn)行2025-10-10

