mirror of
https://github.com/ceph/ceph-csi.git
synced 2024-12-22 21:10:22 +00:00
76ddf8e306
At present we have single log level configuration for all the containers running for our CSI pods, which has been defaulted to log Level 5. However this cause many logs to be spitted in a cluster and cause log spamming to an extent. This commit introduce one more log level control for CSI pods called sidecarLogLevel which defaults to log Level 1. The sidecar controllers like snapshotter, resizer, attacher..etc has been configured with this new log level and driver pods are with old configruation value. This allow us to have different configuration options for sidecar constrollers and driver pods. With this, we will also have a choice of different configuation setting instead of locking onto one variable for the containers deployed via CSI driver. To summarize the CSI containers maintained by Ceph CSI driver has log level 5 and controllers/sidecars not maintained by Ceph CSI driver has log level 1 configuration. Signed-off-by: Humble Chirammal <hchiramm@redhat.com>
250 lines
7.9 KiB
YAML
250 lines
7.9 KiB
YAML
---
|
|
kind: Service
|
|
apiVersion: v1
|
|
metadata:
|
|
name: csi-rbdplugin-provisioner
|
|
# replace with non-default namespace name
|
|
namespace: default
|
|
labels:
|
|
app: csi-metrics
|
|
spec:
|
|
selector:
|
|
app: csi-rbdplugin-provisioner
|
|
ports:
|
|
- name: http-metrics
|
|
port: 8080
|
|
protocol: TCP
|
|
targetPort: 8680
|
|
|
|
---
|
|
kind: Deployment
|
|
apiVersion: apps/v1
|
|
metadata:
|
|
name: csi-rbdplugin-provisioner
|
|
# replace with non-default namespace name
|
|
namespace: default
|
|
spec:
|
|
replicas: 3
|
|
selector:
|
|
matchLabels:
|
|
app: csi-rbdplugin-provisioner
|
|
template:
|
|
metadata:
|
|
labels:
|
|
app: csi-rbdplugin-provisioner
|
|
spec:
|
|
affinity:
|
|
podAntiAffinity:
|
|
requiredDuringSchedulingIgnoredDuringExecution:
|
|
- labelSelector:
|
|
matchExpressions:
|
|
- key: app
|
|
operator: In
|
|
values:
|
|
- csi-rbdplugin-provisioner
|
|
topologyKey: "kubernetes.io/hostname"
|
|
serviceAccountName: rbd-csi-provisioner
|
|
priorityClassName: system-cluster-critical
|
|
containers:
|
|
- name: csi-provisioner
|
|
image: k8s.gcr.io/sig-storage/csi-provisioner:v3.2.1
|
|
args:
|
|
- "--csi-address=$(ADDRESS)"
|
|
- "--v=1"
|
|
- "--timeout=150s"
|
|
- "--retry-interval-start=500ms"
|
|
- "--leader-election=true"
|
|
# set it to true to use topology based provisioning
|
|
- "--feature-gates=Topology=false"
|
|
- "--feature-gates=HonorPVReclaimPolicy=true"
|
|
- "--prevent-volume-mode-conversion=true"
|
|
# if fstype is not specified in storageclass, ext4 is default
|
|
- "--default-fstype=ext4"
|
|
- "--extra-create-metadata=true"
|
|
env:
|
|
- name: ADDRESS
|
|
value: unix:///csi/csi-provisioner.sock
|
|
imagePullPolicy: "IfNotPresent"
|
|
volumeMounts:
|
|
- name: socket-dir
|
|
mountPath: /csi
|
|
- name: csi-snapshotter
|
|
image: registry.k8s.io/sig-storage/csi-snapshotter:v6.0.1
|
|
args:
|
|
- "--csi-address=$(ADDRESS)"
|
|
- "--v=1"
|
|
- "--timeout=150s"
|
|
- "--leader-election=true"
|
|
- "--extra-create-metadata=true"
|
|
env:
|
|
- name: ADDRESS
|
|
value: unix:///csi/csi-provisioner.sock
|
|
imagePullPolicy: "IfNotPresent"
|
|
volumeMounts:
|
|
- name: socket-dir
|
|
mountPath: /csi
|
|
- name: csi-attacher
|
|
image: registry.k8s.io/sig-storage/csi-attacher:v3.5.0
|
|
args:
|
|
- "--v=1"
|
|
- "--csi-address=$(ADDRESS)"
|
|
- "--leader-election=true"
|
|
- "--retry-interval-start=500ms"
|
|
env:
|
|
- name: ADDRESS
|
|
value: /csi/csi-provisioner.sock
|
|
imagePullPolicy: "IfNotPresent"
|
|
volumeMounts:
|
|
- name: socket-dir
|
|
mountPath: /csi
|
|
- name: csi-resizer
|
|
image: registry.k8s.io/sig-storage/csi-resizer:v1.5.0
|
|
args:
|
|
- "--csi-address=$(ADDRESS)"
|
|
- "--v=1"
|
|
- "--timeout=150s"
|
|
- "--leader-election"
|
|
- "--retry-interval-start=500ms"
|
|
- "--handle-volume-inuse-error=false"
|
|
- "--feature-gates=RecoverVolumeExpansionFailure=true"
|
|
env:
|
|
- name: ADDRESS
|
|
value: unix:///csi/csi-provisioner.sock
|
|
imagePullPolicy: "IfNotPresent"
|
|
volumeMounts:
|
|
- name: socket-dir
|
|
mountPath: /csi
|
|
- name: csi-rbdplugin
|
|
# for stable functionality replace canary with latest release version
|
|
image: quay.io/cephcsi/cephcsi:canary
|
|
args:
|
|
- "--nodeid=$(NODE_ID)"
|
|
- "--type=rbd"
|
|
- "--controllerserver=true"
|
|
- "--endpoint=$(CSI_ENDPOINT)"
|
|
- "--csi-addons-endpoint=$(CSI_ADDONS_ENDPOINT)"
|
|
- "--v=5"
|
|
- "--drivername=rbd.csi.ceph.com"
|
|
- "--pidlimit=-1"
|
|
- "--rbdhardmaxclonedepth=8"
|
|
- "--rbdsoftmaxclonedepth=4"
|
|
- "--enableprofiling=false"
|
|
- "--setmetadata=true"
|
|
env:
|
|
- name: POD_IP
|
|
valueFrom:
|
|
fieldRef:
|
|
fieldPath: status.podIP
|
|
- name: NODE_ID
|
|
valueFrom:
|
|
fieldRef:
|
|
fieldPath: spec.nodeName
|
|
- name: POD_NAMESPACE
|
|
valueFrom:
|
|
fieldRef:
|
|
fieldPath: metadata.namespace
|
|
# - name: KMS_CONFIGMAP_NAME
|
|
# value: encryptionConfig
|
|
- name: CSI_ENDPOINT
|
|
value: unix:///csi/csi-provisioner.sock
|
|
- name: CSI_ADDONS_ENDPOINT
|
|
value: unix:///csi/csi-addons.sock
|
|
imagePullPolicy: "IfNotPresent"
|
|
volumeMounts:
|
|
- name: socket-dir
|
|
mountPath: /csi
|
|
- mountPath: /dev
|
|
name: host-dev
|
|
- mountPath: /sys
|
|
name: host-sys
|
|
- mountPath: /lib/modules
|
|
name: lib-modules
|
|
readOnly: true
|
|
- name: ceph-csi-config
|
|
mountPath: /etc/ceph-csi-config/
|
|
- name: ceph-csi-encryption-kms-config
|
|
mountPath: /etc/ceph-csi-encryption-kms-config/
|
|
- name: keys-tmp-dir
|
|
mountPath: /tmp/csi/keys
|
|
- name: ceph-config
|
|
mountPath: /etc/ceph/
|
|
- name: oidc-token
|
|
mountPath: /run/secrets/tokens
|
|
readOnly: true
|
|
- name: csi-rbdplugin-controller
|
|
# for stable functionality replace canary with latest release version
|
|
image: quay.io/cephcsi/cephcsi:canary
|
|
args:
|
|
- "--type=controller"
|
|
- "--v=5"
|
|
- "--drivername=rbd.csi.ceph.com"
|
|
- "--drivernamespace=$(DRIVER_NAMESPACE)"
|
|
- "--setmetadata=true"
|
|
env:
|
|
- name: DRIVER_NAMESPACE
|
|
valueFrom:
|
|
fieldRef:
|
|
fieldPath: metadata.namespace
|
|
imagePullPolicy: "IfNotPresent"
|
|
volumeMounts:
|
|
- name: ceph-csi-config
|
|
mountPath: /etc/ceph-csi-config/
|
|
- name: keys-tmp-dir
|
|
mountPath: /tmp/csi/keys
|
|
- name: ceph-config
|
|
mountPath: /etc/ceph/
|
|
- name: liveness-prometheus
|
|
image: quay.io/cephcsi/cephcsi:canary
|
|
args:
|
|
- "--type=liveness"
|
|
- "--endpoint=$(CSI_ENDPOINT)"
|
|
- "--metricsport=8680"
|
|
- "--metricspath=/metrics"
|
|
- "--polltime=60s"
|
|
- "--timeout=3s"
|
|
env:
|
|
- name: CSI_ENDPOINT
|
|
value: unix:///csi/csi-provisioner.sock
|
|
- name: POD_IP
|
|
valueFrom:
|
|
fieldRef:
|
|
fieldPath: status.podIP
|
|
volumeMounts:
|
|
- name: socket-dir
|
|
mountPath: /csi
|
|
imagePullPolicy: "IfNotPresent"
|
|
volumes:
|
|
- name: host-dev
|
|
hostPath:
|
|
path: /dev
|
|
- name: host-sys
|
|
hostPath:
|
|
path: /sys
|
|
- name: lib-modules
|
|
hostPath:
|
|
path: /lib/modules
|
|
- name: socket-dir
|
|
emptyDir: {
|
|
medium: "Memory"
|
|
}
|
|
- name: ceph-config
|
|
configMap:
|
|
name: ceph-config
|
|
- name: ceph-csi-config
|
|
configMap:
|
|
name: ceph-csi-config
|
|
- name: ceph-csi-encryption-kms-config
|
|
configMap:
|
|
name: ceph-csi-encryption-kms-config
|
|
- name: keys-tmp-dir
|
|
emptyDir: {
|
|
medium: "Memory"
|
|
}
|
|
- name: oidc-token
|
|
projected:
|
|
sources:
|
|
- serviceAccountToken:
|
|
path: oidc-token
|
|
expirationSeconds: 3600
|
|
audience: ceph-csi-kms
|