k8s环境优化、docker优化
k8s优化
·
前言
下面讲解安装好k8s集群之后,如何优化参数。
优化docker
[root@nginx ~]# cat /etc/docker/daemon.json
{
"registry-mirrors": [
"https://wli8urvv.mirror.aliyuncs.com",
"https://docker.mirrors.ustc.edu.cn"
],
"exec-opts": ["native.cgroupdriver=systemd"],
"insecure-registries": ["192.168.118.143:1443"],
"log-opts": {
"max-size": "300m",
"max-file":"5"
},
"data-root": "/var/lib/docker",
"max-concurrent-downloads": 3,
"max-concurrent-uploads": 5,
"live-restore": true
}
systemctl restart docker
参数解释:
"registry-mirrors" #镜像下载地址,这个就不用多说了,可以配置多个镜像下载地址
"exec-opts": ["native.cgroupdriver=systemd"] #将cgroupdriver设置为systemd
"insecure-registries": #这个定义的是harbor的仓库地址
"max-concurrent-downloads": 3 #docker拉取镜像并发下载的线程数
"max-concurrent-uploads": 5 #docker并发上传镜像的线程数
"data-root": "/var/lib/docker" #docker的主目录,默认是/var/lib/docker,在生产环境中建议设置ssd硬盘单独挂一个lvm逻辑卷
"live-restore": true #Docker 容器的自动重启是由 Docker 守护进程完成的。在较老版本 Docker 中,如果 docker 守护进程重启,容器会全
部挂掉。新版本 Docker 中,允许设置,当 docker 守护进程重启,容器不受影响。该场景比较多见,例如修改了 docker 的配置而需要重新加载
docker 守护进程,如果 docker 容器重启,业务会短暂中断,尤其是在生产环境这是不可接受的。所以这个设置很有必要。
具体设置方法有两种:第一种,编辑 /etc/docker/daemon.json,添加 "live-restore": true ,第二种,命令启用,dockerd --live-restore systemd。
"log-opts": {
"max-size": "300m",
"max-file":"5"
} #设置docker最大的日志限制,在/var/lib/docker/containers/2a201024b135073bd9d0037227501e09ce0cddeedd523f15f2651ab5ed436670有个log文件,这个文件就是容器里面的默认控制台输出文件,容器没有很长时间没有重启过,也不进行切割该文件,则该文件会越来越来大, "max-size"表示这个文件最大多少,到达指定大小会自动切割,"max-file"表示最多保留多少个文件。
设置controller-manager的证书有效期
#这个是二进制安装的1.22.15版本,其他版本请找到对应的文件添加参数即可
[root@matser ~]# cat /opt/kubernetes/config/kube-controller-manager.conf
KUBE_CONTROLLER_MANAGER_OPTS="--logtostderr=false \
--v=2 \
--log-dir=/opt/kubernetes/logs \
--leader-elect=true \
--kubeconfig=/opt/kubernetes/config/kube-controller-manager.kubeconfig \
--bind-address=0.0.0.0 \
--allocate-node-cidrs=true \
--cluster-cidr=10.244.0.0/16 \
--service-cluster-ip-range=10.0.0.0/24 \
--cluster-signing-cert-file=/opt/kubernetes/ssl/ca.pem \
--cluster-signing-key-file=/opt/kubernetes/ssl/ca-key.pem \
--root-ca-file=/opt/kubernetes/ssl/ca.pem \
--service-account-private-key-file=/opt/kubernetes/ssl/ca-key.pem \
--cluster-signing-duration=87600h0m0s" #证书有效期,旧版本的使用--experimental-cluster-signing-duration参数
[root@matser ~]#
kubelet优化
[root@matser ~]# cat /opt/kubernetes/config/kubelet.conf
KUBELET_OPTS="--logtostderr=false \
--v=2 \
--log-dir=/opt/kubernetes/logs \
--hostname-override=master \
--network-plugin=cni \
--kubeconfig=/opt/kubernetes/config/kubelet.kubeconfig \
--bootstrap-kubeconfig=/opt/kubernetes/config/bootstrap.kubeconfig \
--config=/opt/kubernetes/config/kubelet-config.yml \
--cert-dir=/opt/kubernetes/ssl \
--pod-infra-container-image=registry.aliyuncs.com/google_containers/pause:3.5 \
--tls-cipher-suites=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 \ #设置k8s的加密方式,防止漏洞扫描
--image-pull-progress-deadline=30m" #下载镜像的时间,防止镜像下载很慢情况下超时
[root@matser ~]#
更多推荐
已为社区贡献32条内容
所有评论(0)