我正在将令牌投影到Pod中,以便使用此令牌对外部系统进行身份验证。我并不完全相信可能在此pod中运行的代码,因此我想使用令牌投影来执行身份验证,然后删除投影的令牌,以便稍后运行的代码无法使用它。 / p>
在删除投影令牌时,我收到一个文件系统为只读的答案:
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将投影的文件夹注入到Pod中):
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
有什么方法可以使投影文件系统可写,或者通常是删除投影令牌?
答案 0 :(得分:1)
否,因为它说它使用只读ramdisk,所以您不能更改任何内容。我不是100%确信这是可能的,但是您可以尝试使用initContainer将令牌复制到R / W ramdisk卷中,然后跳过将令牌卷完全装入主容器中。