Часовой пояс в модулях Kubernetes с использованием переменной среды
Я пытаюсь обновить время своего модуля в зоне Азии / Калькутты в соответствии с часовым поясом кубернетов в POD с помощью команды и аргумента . Однако время по-прежнему остается тем же временем UTC. Только часовой пояс обновляется с UTC на Азию.
Я смог исправить это, используя крепления для томов, как показано ниже. Создайте карту конфигурации и примените развертывание yaml.
kubectl create configmap tz --from-file=/usr/share/zoneinfo/Asia/Kolkata -n <required namespace>
Почему не работает метод переменных окружения? Произойдет ли вытеснение модуля с одного хоста на другой, если мы будем использовать время монтирования тома, и повлияет ли это на время монтирования тома после вытеснения модуля?
YAML развертывания EV ниже, который не обновляет время
apiVersion: apps/v1
kind: Deployment
metadata:
name: connector
labels:
app: connector
namespace: clients
spec:
replicas: 1
selector:
matchLabels:
app: connector
template:
metadata:
labels:
app: connector
spec:
containers:
- image: connector
name: connector
resources:
requests:
memory: "32Mi" # "64M"
cpu: "250m"
limits:
memory: "64Mi" # "128M"
cpu: "500m"
ports:
- containerPort: 3307
protocol: TCP
env:
- name: TZ
value: Asia/Kolkata
volumeMounts:
- name: connector-rd
mountPath: /home/mongobi/mongosqld.conf
subPath: mongosqld.conf
volumes:
- name: connector-rd
configMap:
name: connector-rd
items:
- key: mongod.conf
Ямл для крепления тома находится ниже.
apiVersion: apps/v1
kind: Deployment
metadata:
name: connector
labels:
app: connector
namespace: clients
spec:
replicas: 1
selector:
matchLabels:
app: connector
template:
metadata:
labels:
app: connector
spec:
containers:
- image: connector
name: connector
resources:
requests:
memory: "32Mi" # "64M"
cpu: "250m"
limits:
memory: "64Mi" # "128M"
cpu: "500m"
ports:
- containerPort: 3307
protocol: TCP
volumeMounts:
- name: tz-config
mountPath: /etc/localtime
- name: connector-rd
mountPath: /home/mongobi/mongosqld.conf
subPath: mongosqld.conf
volumes:
- name: connector-rd
configMap:
name: connector-rd
items:
- key: mongod.conf
path: mongosqld.conf
- name: tz-config
hostPath:
path: /usr/share/zoneinfo/Asia/Kolkata
2 ответа
В этом сценарии вам необходимо указать атрибут типа как File для hostPath в конфигурации развертывания. Приведенная ниже конфигурация должна работать для вас.
- name: tz-config
hostPath:
path: /usr/share/zoneinfo/Asia/Kolkata
type: File
У меня работает простая установка переменной TZ env в развертывании.