k8s中使用PodPreset进行时区配置。
基本原理是使用环境变量和localtime的重映射实现。配合PodPreset自动注入功能实现时区的自动配置。
apiVersion: settings.k8s.io/v1alpha1
kind: PodPreset
metadata:
name: allow-localtime
namespace: report-project
spec:
selector:
matchLabels:
env:
- name: TZ
value: Asia/Shanghai
volumeMounts:
- mountPath: /etc/localtime
name: localtime
volumes:
- name: localtime
hostPath:
path: etc/localtime
注意PodPreset是基于namespace自动注入的,需要根据自己的需要修改上面的namespace。
开启PodPreset的方法
还没有正式发布,需要手工打开。
打开 /etc/kubernetes/manifests/kube-apiserver.yaml 文件
修改以下两行
--enable-admission-plugins=NodeRestriction,PodPreset
--runtime-config=settings.k8s.io/v1alpha1=true
执行以下命令让配置生效
systemctl restart kubelet
网友评论