3.3. カスタム SCC およびカスタムサービスアカウントを使用したパイプライン実行とタスク実行
デフォルトの pipelines
サービスアカウントに関連付けられた pipelines-scc
SCC (Security Context Constraints) を使用する場合、パイプライン実行およびタスク実行 Pod にタイムアウトが生じる可能性があります。これは、デフォルトの pipelines-scc
SCC で fsGroup.type
パラメーターが MustRunAs
に設定されているために発生します。
Pod タイムアウトの詳細は、BZ#1995779 を参照してください。
Pod タイムアウトを回避するには、fsGroup.type
パラメーターを RunAsAny
に設定してカスタム SCC を作成し、これをカスタムサービスアカウントに関連付けることができます。
ベストプラクティスとして、パイプライン実行とタスク実行にカスタム SCC およびカスタムサービスアカウントを使用します。このアプローチを使用することで、柔軟性が増し、アップグレード時にデフォルト値が変更されても実行が失敗することはありません。
手順
fsGroup.type
パラメーターをRunAsAny
に設定してカスタム SCC を定義します。例: カスタム SCC
Copy to Clipboard Copied! Toggle word wrap Toggle overflow カスタム SCC を作成します。
例:
my-scc
SCC の作成oc create -f my-scc.yaml
$ oc create -f my-scc.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow カスタムサービスアカウントを作成します。
例:
fsgroup-runasany
サービスアカウントの作成oc create serviceaccount fsgroup-runasany
$ oc create serviceaccount fsgroup-runasany
Copy to Clipboard Copied! Toggle word wrap Toggle overflow カスタム SCC をカスタムサービスアカウントに関連付けます。
例:
my-scc
SCC をfsgroup-runasany
サービスアカウントに関連付けます。oc adm policy add-scc-to-user my-scc -z fsgroup-runasany
$ oc adm policy add-scc-to-user my-scc -z fsgroup-runasany
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 特権付きタスクにカスタムサービスアカウントを使用する必要がある場合は、以下のコマンドを実行して
privileged
SCC をカスタムサービスアカウントに関連付けることができます。例:
fsgroup-runasany
サービスアカウントを使用したprivileged
SCC の関連付けoc adm policy add-scc-to-user privileged -z fsgroup-runasany
$ oc adm policy add-scc-to-user privileged -z fsgroup-runasany
Copy to Clipboard Copied! Toggle word wrap Toggle overflow パイプライン実行およびタスク実行でカスタムサービスアカウントを使用します。
例:
fsgroup-runasany
カスタムサービスアカウントを使用した Pipeline 実行 YAMLCopy to Clipboard Copied! Toggle word wrap Toggle overflow 例:
fsgroup-runasany
カスタムサービスアカウントを使用したタスク実行 YAMLCopy to Clipboard Copied! Toggle word wrap Toggle overflow