我将一个令牌投射到一个pod中,以便使用这个令牌来验证外部系统。我不完全信任可能会遇到此pod的代码,因此我希望使用令牌投影来执行身份验证,然后删除投影的令牌,以便稍后运行的代码无法使用它。
在删除计划的令牌时,我收到文件系统是只读的回答:
rm: can't remove '/var/run/secrets/tokens/..data': Read-only file system
rm: can't remove '/var/run/secrets/tokens/vault-token': Read-only file system
rm: can't remove '/var/run/secrets/tokens/..2019_12_06_09_50_26.580875372/vault-token': Read-only file system在挂载文件系统时,我指定将其挂载为读写(我使用PodPreset将投影的文件夹注入pods):
apiVersion: settings.k8s.io/v1alpha1
kind: PodPreset
metadata:
name: pod-preset
namespace: my-namespace
spec:
selector:
matchLabels:
my-pod: job
env:
volumeMounts:
- name: token-mounter
mountPath: /var/run/secrets/tokens
readOnly: false
volumes:
- name: token-mounter
projected:
sources:
- serviceAccountToken:
path: vault-token
expirationSeconds: 7200
audience: vault有没有办法使计划的文件系统可写,或者,一般来说,删除计划的令牌?
发布于 2019-12-07 03:53:03
不,因为它说它使用只读内存磁盘,所以你不能改变东西。我不是100%确定这是可能的,但您可以尝试使用initContainer将令牌复制到一个r/w ramdisk卷,然后跳过将令牌卷完全挂载到主容器中。
https://stackoverflow.com/questions/59210960
复制相似问题