Red Hat Training

A Red Hat training course is available for OpenShift Container Platform

16.3.5. ジョブ仕様の作成

Descheduler の ジョブ設定 を作成します。

apiVersion: batch/v1
kind: Job
metadata:
  name: descheduler-job
  namespace: kube-system
spec:
  parallelism: 1
  completions: 1
  template:
    metadata:
      name: descheduler-pod 1
      annotations:
        scheduler.alpha.kubernetes.io/critical-pod: "true" 2
    spec:
        containers:
        - name: descheduler
          image: registry.access.redhat.com/openshift3/ose-descheduler
          volumeMounts: 3
          - mountPath: /policy-dir
            name: policy-volume
          command:
          - "/bin/sh"
          - "-ec"
          - |
            /bin/descheduler --policy-config-file /policy-dir/policy.yaml 4
        restartPolicy: "Never"
        serviceAccountName: descheduler-sa 5
        volumes:
        - name: policy-volume
          configMap:
            name: descheduler-policy-configmap
1
ジョブの名前を指定します。
2
スケジュール解除が実行されないように Pod を設定します。
3
ジョブがマウントされるコンテナーのボリューム名およびマウントパスです。
4
作成した ポリシーファイル が保存されるコンテナー内のパスです。
5
作成したサービスアカウントの名前を指定します。

ポリシーファイルは、設定マップからボリュームとしてマウントされます。