**K8S 控制台日志大小调整**

在Kubernetes (K8S) 中,为了保持系统正常运行和监控系统运行状态,我们经常需要查看容器日志。但是默认情况下,Kubernetes 控制台日志会显示一定数量的日志信息。如果需要调整控制台日志的大小,可以通过修改相关配置来实现。

**实现步骤:**

| 步骤 | 操作 |
| --- | --- |
| 1 | 登录到 Kubernetes 集群中的 Master 节点 |
| 2 | 找到 kube-apiserver 配置文件 |
| 3 | 修改配置文件,调整控制台日志大小 |
| 4 | 重启 kube-apiserver 服务 |

**详细操作步骤:**

1. 登录到 Kubernetes 集群中的 Master 节点

使用 SSH 登录到 Kubernetes 集群的 Master 节点,通常是通过执行类似以下命令连接:

```bash
ssh user@master-node
```

2. 找到 kube-apiserver 配置文件

Kube-apiserver 是 Kubernetes 的核心组件之一,负责管理 API 请求的处理。找到 kube-apiserver 配置文件,一般位于 `/etc/kubernetes/manifests/kube-apiserver.yaml` 或类似路径下。

3. 修改配置文件,调整控制台日志大小

编辑 kube-apiserver 配置文件,添加如下参数修改控制台日志的大小:

```yaml
spec:
containers:
- command:
- kube-apiserver
args:
- --requestheader-allowed-names=kube-apiserver
- --requestheader-client-ca-file=/etc/kubernetes/pki/front-proxy-ca.crt
- --service-account-issuer=https://kubernetes.default.svc.cluster.local
- --service-account-signing-key-file=/etc/kubernetes/pki/sa.key
- --requestheader-allowed-names=kube-apiserver
- --proxy-client-cert-file=/etc/kubernetes/pki/front-proxy-client.crt
- --proxy-client-key-file=/etc/kubernetes/pki/front-proxy-client.key
- --etcd-servers=http://127.0.0.1:2379
- --insecure-port=9090
- --logtostderr
- --v=2
- --requestheader-client-ca-file=/etc/kubernetes/pki/front-proxy-ca.crt
- --requestheader-allowed-names=front-proxy-client
- --requestheader-allowed-names=front-proxy-client
- --requestheader-username-headers=X-Remote-User
- --requestheader-group-headers=X-Remote-Group
- --requestheader-extra-headers-prefix=X-Remote-Extra-
- --requestheader-username-headers=X-Remote-User
- --requestheader-group-headers=X-Remote-Group
- --requestheader-group-headers=X-Remote-Group
- --requestheader-extra-headers-prefix=X-Remote-Extra-
- --requestheader-extra-headers-prefix=X-Remote-Extra-
- --secure-port=6443
- --anonymous-auth=false
- --client-ca-file=/etc/kubernetes/pki/ca.crt
- --service-account-key-file=/etc/kubernetes/pki/sa.pub
- --tls-private-key-file=/etc/kubernetes/pki/apiserver.key
- --service-cluster-ip-range=10.96.0.0/12
- --kubelet-client-certificate=/etc/kubernetes/pki/apiserver-kubelet-client.crt
- --kubelet-client-key=/etc/kubernetes/pki/apiserver-kubelet-client.key
- --enable-swagger-ui=true
- --experimental-encryption-provider-config=/etc/kubernetes/encryption-config.yaml
- --service-node-port-range=30000-32767
- --advertise-address=192.168.50.12
- --allow-privileged=true
- --cert-dir=/etc/kubernetes/pki
- --kubelet-client-certificate=/etc/kubernetes/pki/apiserver-kubelet-client.crt
- --kubelet-client-key=/etc/kubernetes/pki/apiserver-kubelet-client.key
- --etcd-servers=http://127.0.0.1:2379
- --insecure-port=9090
- --logtostderr
- --v=2
- --log-file=/var/log/kube-apiserver.log # 修改日志文件目录及大小
```

在上述配置中,将 `--log-file=/var/log/kube-apiserver.log` 修改为你要保存日志的路径及文件名,并可以添加 `--log-file-max-size=100` 来指定日志文件大小,单位通常是 MB。

4. 重启 kube-apiserver 服务

修改完配置文件后,保存退出编辑器,然后重启 kube-apiserver 服务使修改生效:

```bash
systemctl restart kube-apiserver
```

完成以上步骤后,你已经成功调整了 Kubernetes 控制台日志的大小。当你需要重新查看日志时,可以通过指定路径下的日志文件查看最新的日志信息。希望这篇文章对你有所帮助,如果有任何疑问或问题,欢迎留言交流。