9.5.5. cert-manager コンポーネントの CPU およびメモリー制限をオーバーライドする
安定したリソース割り当てと動作を確保するため、cert-manager Operator for Red Hat OpenShift に対して、CPU およびメモリーの制限を設定してください。特定のクラスター要件に合わせて、cert-manager コントローラー、CA インジェクター、および Webhook に対して具体的な制約を設定できます。
前提条件
-
cluster-adminロールを持つユーザーとして OpenShift Container Platform クラスターにアクセスできる。 - cert-manager Operator for Red Hat OpenShift のバージョン 1.12.0 以降がインストールされている。
手順
次のコマンドを入力して、cert-manager コントローラー、CA インジェクター、および Webhook のデプロイメントが使用可能であることを確認します。
$ oc get deployment -n cert-manager出力例
NAME READY UP-TO-DATE AVAILABLE AGE cert-manager 1/1 1 1 53m cert-manager-cainjector 1/1 1 1 53m cert-manager-webhook 1/1 1 1 53mCPU とメモリーの制限を設定する前に、次のコマンドを入力して cert-manager コントローラー、CA インジェクター、および Webhook の既存の設定を確認します。
$ oc get deployment -n cert-manager -o yaml出力例
# ... metadata: name: cert-manager namespace: cert-manager # ... spec: template: spec: containers: - name: cert-manager-controller resources: {} # ... metadata: name: cert-manager-cainjector namespace: cert-manager # ... spec: template: spec: containers: - name: cert-manager-cainjector resources: {} # ... metadata: name: cert-manager-webhook namespace: cert-manager # ... spec: template: spec: containers: - name: cert-manager-webhook resources: {} # ...spec.resourcesフィールドはデフォルトで空です。cert-manager コンポーネントには CPU とメモリーの制限がありません。cert-manager コントローラー、CA インジェクター、Webhook の CPU およびメモリー制限を設定するには、次のコマンドを入力します。
$ oc patch certmanager.operator cluster --type=merge -p=" spec: controllerConfig: overrideResources: limits: cpu: 200m memory: 64Mi requests: cpu: 10m memory: 16Mi webhookConfig: overrideResources: limits: cpu: 200m memory: 64Mi requests: cpu: 10m memory: 16Mi cainjectorConfig: overrideResources: limits: cpu: 200m memory: 64Mi requests: cpu: 10m memory: 16Mi "オーバーライド可能なリソースパラメーターの詳細は、「CertManager カスタムリソースのフィールドの説明」の「cert-manager コンポーネントのオーバーライド可能なリソースパラメーター」を参照してください。
出力例
certmanager.operator.openshift.io/cluster patched
検証
cert-manager コンポーネントの CPU とメモリーの制限が更新されていることを確認します。
$ oc get deployment -n cert-manager -o yaml出力例
# ... metadata: name: cert-manager namespace: cert-manager # ... spec: template: spec: containers: - name: cert-manager-controller resources: limits: cpu: 200m memory: 64Mi requests: cpu: 10m memory: 16Mi # ... metadata: name: cert-manager-cainjector namespace: cert-manager # ... spec: template: spec: containers: - name: cert-manager-cainjector resources: limits: cpu: 200m memory: 64Mi requests: cpu: 10m memory: 16Mi # ... metadata: name: cert-manager-webhook namespace: cert-manager # ... spec: template: spec: containers: - name: cert-manager-webhook resources: limits: cpu: 200m memory: 64Mi requests: cpu: 10m memory: 16Mi # ...