kubeconfig
kube config 文件结构kube config 文件内容apiVersion: v1 ##都是固定值,用户不需要关心clusters:##记录了 clusters(一个或多个 K8S 集群)信息- cluster:## 证书数据,只有当 cluster(K8S 集群)的连接方式是 https 时,为了安全起见需要证书数据certificate-authority-data: LS0tLS1
kube config 文件结构
kube config 文件内容
apiVersion: v1 ##都是固定值,用户不需要关心
clusters: ##记录了 clusters(一个或多个 K8S 集群)信息
- cluster:
## 证书数据,只有当 cluster(K8S 集群)的连接方式是 https 时,为了安全起见需要证书数据
certificate-authority-data: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUM1ekNDQWMrZ0F3SUJBZ0lCQURBTkJna3Foa2lHOXcwQkFRc0ZBREFWTVJNd0VRWURWUVFERXdwcmRXSmwKY201bGRHVnpNQjRYRFRJeE1UQXlOVEExTXpVeU9Wb1hEVE14TVRBeU16QTFNelV5T1Zvd0ZURVRNQkVHQTFVRQpBeE1LYTNWaVpYSnVaWFJsY3pDQ0FTSXdEUVlKS29aSWh2Y05BUUVCQlFBRGdnRVBBRENDQVFvQ2dnRUJBUHpZCjdJa2JTdFF1RzZBbGFTU25CQWpnYWRZUm1EMFlKTk55d04xTm8ydzlUcHNOWVR4QzJROWNoemxCWjdHdWpoYzUKN2ZmaGVYNldEci9tVzljOFVGNmM2YUZqRGZUcGVxRGVIeTlLaXRkMXNpQnlsS3R0M0lHcFZNVmtVRUFvQUZmVwp2WndJNTVkU0c3RmZBQTRhcU4wZjVyNFAreUx5T3NHeDZGZm1nd1BHSU5uVFlHUHpUOTRjRnNDRlEyNEtXNG9oCjJEWUR6dlBkYzdFblRPenkvZXZlNDcwS2JVUDFtMk90NW9XbHJSV3JVRmdIanZTNVY1UjdhRnJuczJyczlqWWQKSE9wYXNQdnJ5bytmejBnQmgydWlvdTlCUUU1dU96Ly9FK2dRQlFTQkRURE1SQTdDUVVWeUhxUmhnUVF3MzBPSApSZi9NS0FtdkExamd5bFBiMk9rQ0F3RUFBYU5DTUVBd0RnWURWUjBQQVFIL0JBUURBZ0trTUE4R0ExVWRFd0VCCi93UUZNQU1CQWY4d0hRWURWUjBPQkJZRUZBV1hkR1M0SnRWblI3UStvcnlER3ZPbFF5MFZNQTBHQ1NxR1NJYjMKRFFFQkN3VUFBNElCQVFCUVFLYldNK21LVFBPeHphaFlIS01OY2ROa1haY0htcGdLZFIxLytXQ2pPU0JJRHVDTgpqR2I0ZE96TXMxSjQxS0hwWWhHTGdSWG5SRkoxNmswSWtsZld3a0t0aUxWWXZ3RWJPSDFwdVZtbWR2VHYwNkRwCkhwK2dKZjQ5YnMxeFZPaTVSOTR6eG1BcG9WRlQ5U3RpSzFnR2NtZEpIc0wyaUNqN2swbnViQWk3OGh0Q0NtNHUKWU9ueHgrNlV1RlE1cVNOVlFGL09UUzh5UkQyUTVyQ0lOQ0s0RW1JbWRRczFBNHVOK2Zxa2dKMk5EMGpqRG12Uwpkdng0L2VlY3hCUm5rMGlZM24rallJekdTb1QxeU1vZld1cXVXZ1JXeTBYRWQyMWdmL0RZVkgwK3BNYktJbzlOCkdhNmNjTzlnS0hROWJNMFRLV1hIaW5FdWdNZk1tZFhScmE5UQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==
##cluster(K8S 集群)的访问方式,一般为 IP+PORT
server: https://kubernetes.docker.internal:6443
name: docker-desktop ##cluster(K8S 集群)的名称代号
contexts: ##记录当前 kubectl 默认使用的上下文信息
- context:
cluster: docker-desktop
namespace: default
user: docker-desktop
name: docker-desktop
current-context: docker-desktop
kind: Config
preferences: {}
users: ## 访问 cluster(K8S 集群)的账号信息
- name: docker-desktop ##用户账号
user:
## 用户的 token 认证方式,token 不是用户认证的唯一方式,其他还有账号+密码等
client-certificate-data: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURRakNDQWlxZ0F3SUJBZ0lJSFBzZzdPTzRRWEV3RFFZSktvWklodmNOQVFFTEJRQXdGVEVUTUJFR0ExVUUKQXhNS2EzVmlaWEp1WlhSbGN6QWVGdzB5TVRFd01qVXdOVE0xTWpsYUZ3MHlNakV5TWprd01qUTBOVGhhTURZeApGekFWQmdOVkJBb1REbk41YzNSbGJUcHRZWE4wWlhKek1Sc3dHUVlEVlFRREV4SmtiMk5yWlhJdFptOXlMV1JsCmMydDBiM0F3Z2dFaU1BMEdDU3FHU0liM0RRRUJBUVVBQTRJQkR3QXdnZ0VLQW9JQkFRQzNFRWNjQVY2aWFiMG0KZWJUZHQ1bE5aVEhvdFN5Z0wyZHliSmNlTi8yVEFyRTE0UG9ScEFsM01ncGNRb2hDYUVva2VDR29sRk9UZjlkSgpxdmJNaFFsR1c5anMrZXFzaERKaUVPQjltYUFVNXBVeXVjcE0rOXRMbVFpK2ZIVXJpVnV6bUpURDJhL1FWdytNCjhneXpCR2tpVFd1b1JGc2hCSEE5RlpuczRpR0U3THcydGRaNE5CRHdxWU9MZWw5N28zRmI3T1VZanZvcTRYNWUKL2Q1RzFQRkZtWnhobDFvNUorb1hOaWRiUUJCTTlBMXBWdklXN3hXUURTWHkzVkRHSjVKOFYxNDFYbk03MlVDNQp4eGRNY3FLdEFGZm1UQUdJaXRSRjZuT05sNTVJa3EzTVhFeVd5Q3dpMjJwdlpVTlNHbE10SUdzb2xWVVFxYW5jCm9Hend2Y3d6QWdNQkFBR2pkVEJ6TUE0R0ExVWREd0VCL3dRRUF3SUZvREFUQmdOVkhTVUVEREFLQmdnckJnRUYKQlFjREFqQU1CZ05WSFJNQkFmOEVBakFBTUI4R0ExVWRJd1FZTUJhQUZBV1hkR1M0SnRWblI3UStvcnlER3ZPbApReTBWTUIwR0ExVWRFUVFXTUJTQ0VtUnZZMnRsY2kxbWIzSXRaR1Z6YTNSdmNEQU5CZ2txaGtpRzl3MEJBUXNGCkFBT0NBUUVBdGVybEd2ckxzUkJ0Sm10RE4xWFpxblFsTFpSbXZlTU1uRWUvd1ZBWnRVNWdQVzMxNUVXRnppVEMKQjRVWDUwNFRDSDZuUmhQVFRqNzQyRXBaNVAyZEEyQkp2K2VVR053TWpDejBLbjBndC82LzRLMDJ4RGtLbHEwTwpDZVE2ZTlIdEVGNlNTVWJGOERwOWNTSHdKd0dpbDRzUFliWnp4alB2ZjByMXhCOS85OTBTaWVqMTFBUVFMTlhMCjNWRGN2MDk2ZUwreG13NFBTbmJ4K1RTZ2JzMVFoU01taHFRWUh2L1JBZ2xzL0pnRVZ1NXl2a3R4Z1BCYXBSSSsKOUlVYUZzMFI3V3JnekIyM0NQcU5YN21kOEVzV0VoM1BzRms1RHowREN6QWs4WnRrYmVtS0VhVUUxUzdSQng0egpmVWMxTzVlbWFLNnFyRWpubHNjYWZqS3U0aThnTnc9PQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==
client-key-data: LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFb3dJQkFBS0NBUUVBdHhCSEhBRmVvbW05Sm5tMDNiZVpUV1V4NkxVc29DOW5jbXlYSGpmOWt3S3hOZUQ2CkVhUUpkeklLWEVLSVFtaEtKSGdocUpSVGszL1hTYXIyeklVSlJsdlk3UG5xcklReVloRGdmWm1nRk9hVk1ybksKVFB2YlM1a0l2bngxSzRsYnM1aVV3OW12MEZjUGpQSU1zd1JwSWsxcnFFUmJJUVJ3UFJXWjdPSWhoT3k4TnJYVwplRFFROEttRGkzcGZlNk54Vyt6bEdJNzZLdUYrWHYzZVJ0VHhSWm1jWVpkYU9TZnFGelluVzBBUVRQUU5hVmJ5CkZ1OFZrQTBsOHQxUXhpZVNmRmRlTlY1ek85bEF1Y2NYVEhLaXJRQlg1a3dCaUlyVVJlcHpqWmVlU0pLdHpGeE0KbHNnc0l0dHFiMlZEVWhwVExTQnJLSlZWRUttcDNLQnM4TDNNTXdJREFRQUJBb0lCQUdPRm9QTVR0NHdhYWkrNQpxTitFeWY0dWpyU1Jrb0kvWTBEczBqY21mMS9sN2N0NTFObTBVVVVRMmxzUC9KNEZycEVuRWoxZzdoTFpSSVNUClFuc3J0RUFnL016UWpZbGVrVG1KTFZKN0szRlJiamxXa2luS0hvMTUxQ3dpNDF4WTM1YkMwOVdweWhBODFJSnUKc1FLOTJoNUE4czlXNGlnUURxald6b2plNHhRczUzYVdjUXRzZ1F6TjVIREVqaWxEeXlKZkJEcVZNb3RiRkMvZwo4cXRMM2thbzRnWGh4czNKYjIyeHZVNGpZK3k1Vk9ZbW1QUGh2YXR6K25vWUJUZEpVbEgwVlBDTWNpS3dNVEVDCmg2UG1qdEVVdTRNL1Exb01QdGsvYmliV0h0NjVWZW9WTXpxdlUxUGdudktTVW5VdUZPS1czbUtGcXZtR1ZodFQKemMvOFJhRUNnWUVBeDM2Y3p1UWdrd2JMMFBMUnNtbWYrak1VRG9WQUZyekVSL2RzZ0J4TkJsWHIvSVFDT2E1ZgpEK2FHL2dyMStQVmJRcEJVVVplb3ZZRW9SWHNJVFVXTTlrNjBVS3oyK0VTVEk1emtVdUFpdVhWS3NyNVViMEY1CldTWDRHVFJVUVIvelNHZFh2bXNSWHdSTENZd1haVDd3RWFma1M4bW5wREs5SXVXeW1FRjIwQkVDZ1lFQTZ1cEEKT0ZoVnRQVHlLTUk1blpadnN5ZUp5am9kb0VRNFhJQWx0V3ZDMktWdXpwSWVSY0hYdlFnb29qZ2JPcWdLUDZ6RwpYVUZJajJzZU9yRU5GWjByRStOaGZUSy9SeTUzeVJ3VlJGK1FjenVVRW1LU0lsditqbFdZcExMamkzUXFlWDdrCkJxRjVqZ3Z1NkZ6WXE0OUJqTHl2T3AwM1cxT0J2bmpxbHR1Zm5BTUNnWUJNNFJZOUJOMG95KzJ2MEdQUGhiVUoKRHJZa0FtWDRYVGFuSlVyQzlDVWEwL0hsbGxubE1MV2h3dzB5eWJhUkFyendvZjVja3oyTUNrSWl4SThtZUM4aQpuS0lRbFJkNEJiVk9mQi9oY0U3eGVhb1h5QkZ4N3FGOUlZekM2Yyt1YVVtd0ZXTlRGcC9USml4a3VZQXFuRjZYCjcwT2prVXJ4bER3ZlByWGN4eDJxZ1FLQmdRQ0NDWVhmS3RiV3dyakI0ekh0ai9icEh6dmhHK2FHYnYwY0J6dlkKZjN4dVhMVkgyQTYxNHFXLzJDSldHZVRJeFhoVzR4Y3pUQTRVaGVGSDcvWWtQc28zeWlpUEcyWlN5dUE0RFRtZwpqWjN5aThwZG12NzEwaUxKTzR5eHJ1elNwMDFUeisvOTA2anIvcU1UTVVJblJiZXRaazFCandHenBqZ3Q3ZFUrCkNQa0RiUUtCZ0dId0orRHpMcFhGOUQvSVl3cy9Cd2Fmd0FEV09ITXpyaTFJMGloZ0lHZG1EZFovYktHcGpMUysKcTFVOVVienRKdVhzZXZyMi9FOEJRbGFQT2dxNGVIR0Z0aWx5ZG9yd1EwQ3psWUhhM0Q5NGpVbDNucll2ZGRwegpVNnBWYW85ZC90MXBmeStKK1ZPYkY4U1owM2h6U3U3ZnExUCtLNkhWN3ZlQ25uTGIwbEIrCi0tLS0tRU5EIFJTQSBQUklWQVRFIEtFWS0tLS0tCg==
kubectl 配置文件
-
–kubeconfig参数。第一种办法是每次执行 kubectl 的时候,都带上–kubeconfig= C O N F I G P A T H 。 给 一 点 温 馨 小 提 示 : 每 次 都 带 这 么 一 长 串 的 字 符 非 常 麻 烦 , 可 以 用 a l i a s 别 名 来 简 化 码 字 量 , 比 如 a l i a s k = k u b e c t l − − k u b e c o n f i g = {CONFIG_PATH}。给一点温馨小提示:每次都带这么一长串的字符非常麻烦,可以用 alias 别名来简化码字量,比如alias k=kubectl --kubeconfig= CONFIGPATH。给一点温馨小提示:每次都带这么一长串的字符非常麻烦,可以用alias别名来简化码字量,比如aliask=kubectl−−kubeconfig={CONFIG_PATH}。
-
KUBECONFIG环境变量。第二种做法是使用环境变量KUBECONFIG把所有配置文件都记录下来,即export KUBECONFIG= K U B E C O N F I G : KUBECONFIG: KUBECONFIG:{CONFIG_PATH}。接下来就可以放心执行 kubectl 命令了。
-
H O M E / . k u b e / c o n f i g 配 置 文 件 。 第 三 种 做 法 是 把 配 置 文 件 的 内 容 放 到 HOME/.kube/config 配置文件。第三种做法是把配置文件的内容放到 HOME/.kube/config配置文件。第三种做法是把配置文件的内容放到HOME/.kube/config 内。具体做法为:
-
如果$HOME/.kube/config 不存在,那么cp ${CONFIG_PATH} $HOME/.kube/config即可;
-
如果如果 $HOME/.kube/config已经存在,那么需要把新的配置内容加到 $HOME/.kube/config 下。单单只是cat ${CONFIG_PATH} >> H O M E / . k u b e / c o n f i g 是 不 行 的 , 正 确 的 做 法 是 : K U B E C O N F I G = HOME/.kube/config是不行的,正确的做法是:KUBECONFIG= HOME/.kube/config是不行的,正确的做法是:KUBECONFIG=HOME/.kube/config:${CONFIG_PATH} kubectl config view --flatten > H O M E / . k u b e / c o n f i g 。 解 释 下 这 个 命 令 的 意 思 : 先 把 所 有 的 配 置 文 件 添 加 到 环 境 变 量 K U B E C O N F I G 中 , 然 后 执 行 k u b e c t l c o n f i g v i e w − − f l a t t e n 打 印 出 有 效 的 配 置 文 件 内 容 , 最 后 覆 盖 HOME/.kube/config 。解释下这个命令的意思:先把所有的配置文件添加到环境变量KUBECONFIG中,然后执行kubectl config view --flatten打印出有效的配置文件内容,最后覆盖 HOME/.kube/config。解释下这个命令的意思:先把所有的配置文件添加到环境变量KUBECONFIG中,然后执行kubectlconfigview−−flatten打印出有效的配置文件内容,最后覆盖HOME/.kube/config 即可。
-
请注意,上述操作的优先级分别是 1>2>3,也就是说kubectl 会优先检查–kubeconfig,若无则检查KUBECONFIG,若无则最后检查$HOME/.kube/config,如果还是没有会报错。
更多推荐
所有评论(0)