3.6. fsGroup을 사용하여 Pod 타임아웃 감소

스토리지 볼륨에 여러 파일(~1TiB 이상)이 포함된 경우 Pod 시간 초과가 발생할 수 있습니다.

기본적으로 OpenShift Container Platform은 볼륨이 마운트될 때 Pod의 securityContext 에 지정된 fsGroup 과 일치하도록 각 볼륨의 콘텐츠에 대한 소유권 및 권한을 재귀적으로 변경했기 때문입니다. 대규모 볼륨의 경우 소유권 및 권한의 확인 및 변경 시간이 오래되어 Pod 시작 속도가 느려질 수 있습니다. securityContext 내에서 fsGroupChangePolicy 필드를 사용하여 OpenShift Container Platform이 볼륨의 소유권 및 권한을 확인하고 관리하는 방법을 제어할 수 있습니다.

fsGroupChangePolicy 는 Pod 내부에서 노출되기 전에 볼륨의 소유권 및 권한을 변경하는 동작을 정의합니다. 이 필드는 fsGroup을 지원하는 볼륨 유형(제어 소유권 및 권한)에만 적용됩니다. 이 필드에는 두 가지 가능한 값이 있습니다.

  • OnRootMismatch: root 디렉터리의 권한 및 소유권이 예상 볼륨 권한과 일치하지 않는 경우에만 권한 및 소유권을 변경합니다. 이렇게 하면 Pod 시간 초과를 줄이기 위해 볼륨의 소유권 및 권한을 변경하는 데 걸리는 시간을 단축할 수 있습니다.
  • Always: 볼륨이 마운트될 때 볼륨의 권한 및 소유권을 항상 변경합니다.

fsGroupChangePolicy example

securityContext:
  runAsUser: 1000
  runAsGroup: 3000
  fsGroup: 2000
  fsGroupChangePolicy: "OnRootMismatch" 1
  ...

1
OnRootMismatch 는 재귀 권한 변경을 건너뛰므로 Pod 시간 초과 문제를 방지하는 데 도움이 됩니다.
참고

fsGroupChangePolicyfield는 secret, configMap, emptydir과 같은 임시 볼륨 유형에는 영향을 미치지 않습니다.