博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Kubernetes探秘—配置文件目录结构
阅读量:6389 次
发布时间:2019-06-23

本文共 3810 字,大约阅读时间需要 12 分钟。

hot3.png

Kubernetes的配置目录包括/etc/kubernetes、/home/supermap/.kube和/var/lib/kubelet目录。

下面我们来看一看,这些目录里到底有些什么文件(操作系统使用Ubuntu 18.04LTS desktop)。

安装tree命令:

sudo apt  install tree

1、kubernetes主配置目录

显示/etc/kubernetes目录结构:

supermap@podc01:/etc/kubernetes$ tree ..├── admin.conf├── controller-manager.conf├── kubelet.conf├── manifests│   ├── etcd.yaml│   ├── kube-apiserver.yaml│   ├── kube-controller-manager.yaml│   └── kube-scheduler.yaml├── pki│   ├── apiserver.crt│   ├── apiserver-etcd-client.crt│   ├── apiserver-etcd-client.key│   ├── apiserver.key│   ├── apiserver-kubelet-client.crt│   ├── apiserver-kubelet-client.key│   ├── ca.crt│   ├── ca.key│   ├── etcd│   │   ├── ca.crt│   │   ├── ca.key│   │   ├── healthcheck-client.crt│   │   ├── healthcheck-client.key│   │   ├── peer.crt│   │   ├── peer.key│   │   ├── server.crt│   │   └── server.key│   ├── front-proxy-ca.crt│   ├── front-proxy-ca.key│   ├── front-proxy-client.crt│   ├── front-proxy-client.key│   ├── sa.key│   └── sa.pub├── scheduler.conf└── tmp [error opening dir]4 directories, 30 files

2、kubernetes用户配置目录

主用户目录下的隐藏目录.kube包含用户的配置参数和缓存数据。目录结构为:

/home/supermap/.kube├── cache│   └── discovery│       ├── 10.1.1.181_6443│       └── 10.1.1.201_6443├── config└── http-cache    ├── 028d83935e12ce471cbe29f4096ef4ed

其中,配置文件config的内容为:

apiVersion: v1clusters:- cluster:    certificate-authority-data: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0t...    server: https://10.1.1.201:6443  name: kubernetescontexts:- context:    cluster: kubernetes    user: kubernetes-admin  name: kubernetes-admin@kubernetescurrent-context: kubernetes-admin@kuberneteskind: Configpreferences: {}users:- name: kubernetes-admin  user:    client-certificate-data: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1...    client-key-data: LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUl...

3、kubelet服务的配置目录

每一个ks节点都需要运行kubelet服务。kubelet服务的配置在/var/lib/kubelet目录下:

supermap@podc01:/var/lib/kubelet$ tree.├── config.yaml├── cpu_manager_state├── device-plugins│   ├── DEPRECATION│   ├── kubelet_internal_checkpoint│   └── kubelet.sock├── kubeadm-flags.env├── pki│   ├── kubelet-client-2018-11-23-10-08-12.pem│   ├── kubelet-client-2018-11-23-10-08-38.pem│   ├── kubelet-client-current.pem -> /var/lib/kubelet/pki/kubelet-client-2018-11-23-10-08-38.pem│   ├── kubelet.crt│   └── kubelet.key├── plugin-containers [error opening dir]├── plugins [error opening dir]├── plugins_registry [error opening dir]├── pod-resources [error opening dir]└── pods [error opening dir]7 directories, 11 files

4、kubelet.service服务目录

kubelet使用systemd管理,service定义文件位于: /lib/systemd/system/kubelet.service。

最新的dropin文件位于: /etc/systemd/system/kubelet.service.d,内容为:

supermap@podc01:/etc/systemd/system/kubelet.service.d$ cat 10-kubeadm.conf # Note: This dropin only works with kubeadm and kubelet v1.11+[Service]Environment="KUBELET_KUBECONFIG_ARGS=--bootstrap-kubeconfig=/etc/kubernetes/bootstrap-kubelet.conf --kubeconfig=/etc/kubernetes/kubelet.conf"Environment="KUBELET_CONFIG_ARGS=--config=/var/lib/kubelet/config.yaml"# This is a file that "kubeadm init" and "kubeadm join" generates at runtime, populating the KUBELET_KUBEADM_ARGS variable dynamicallyEnvironmentFile=-/var/lib/kubelet/kubeadm-flags.env# This is a file that the user can use for overrides of the kubelet args as a last resort. Preferably, the user should use# the .NodeRegistration.KubeletExtraArgs object in the configuration files instead. KUBELET_EXTRA_ARGS should be sourced from this file.EnvironmentFile=-/etc/default/kubeletExecStart=ExecStart=/usr/bin/kubelet $KUBELET_KUBECONFIG_ARGS $KUBELET_CONFIG_ARGS $KUBELET_KUBEADM_ARGS $KUBELET_EXTRA_ARGS

可以看到,在新的kubernetes配置结构中,这个kublet服务参数的配置有了很大的变化。启动参数不再放在kubelet.service文件里了,放到了/var/lib/kubelet、/etc/default/kubelet。

  • 注意,这个变化可能会导致以前的很多手动安装的脚本工具不再可用。

更多参考:

转载于:https://my.oschina.net/u/2306127/blog/2980162

你可能感兴趣的文章
OSChina 周日乱弹 —— 爱丽丝爱吃京酱肉丝
查看>>
2018.11月微信小程序优质开源项目
查看>>
IOS 未来几年的认知
查看>>
解决中文乱码--加密
查看>>
浅析全民社交创业梦
查看>>
Java操纵MongoDB_1(环境设置)
查看>>
C#字符串操作--获取字符或字符串的位置、数量
查看>>
php - 字符串处理
查看>>
bulk collect 以及ref cursor使用
查看>>
mysql性能优化-慢查询分析、优化索引和配置
查看>>
图解分布式一致性协议Paxos
查看>>
Jedis与Redisson选型对比
查看>>
MongoDB学习笔记(查询)
查看>>
freemarker自定义标签的写法和使用
查看>>
使用Gitlab CI进行持续集成
查看>>
Win32编程基本概念
查看>>
×××灯式样的站点链接说明,链接提示
查看>>
Linux下动态IP和静态IP的设置方法
查看>>
mysql 行长度
查看>>
SUSE配置网关
查看>>