18.2. Guaranteed QoS クラスを持つ Pod の作成


高パフォーマンスのワークロード向けに、quality of service (QoS) クラスが Guaranteed の Pod を作成できます。QoS クラスが Guaranteed の Pod を設定すると、その Pod は指定された CPU とメモリーリソースに優先的にアクセスできます。

QoS クラスが Guaranteed の Pod を作成するには、次の仕様を適用する必要があります。

  • Pod 内の各コンテナーのメモリー制限フィールドとメモリー要求フィールドに同じ値を設定します。
  • Pod 内の各コンテナーの CPU 制限フィールドと CPU 要求フィールドに同じ値を設定します。

一般的に、QoS クラスが Guaranteed の Pod はノードから削除されません。唯一の例外は、予約済みリソースを超えたシステムデーモンによってリソース競合が発生した場合です。このシナリオでは、kubelet は、ノードの安定性を維持するために最も優先度の低い Pod から順番に Pod を削除する可能性があります。

前提条件

  • cluster-admin ロールを持つユーザーとしてクラスターにアクセスできる。
  • OpenShift CLI (oc)

手順

  1. 次のコマンドを実行して、Pod の namespace を作成します。

    Copy to Clipboard Toggle word wrap
    $ oc create namespace qos-example 
    1
    1
    この例では qos-example namespace を使用します。

    出力例

    Copy to Clipboard Toggle word wrap
    namespace/qos-example created

  2. Pod リソースを作成します。

    1. Pod リソースを定義する YAML ファイルを作成します。

      qos-example.yaml ファイルの例

      Copy to Clipboard Toggle word wrap
      apiVersion: v1
      kind: Pod
      metadata:
        name: qos-demo
        namespace: qos-example
      spec:
        securityContext:
          runAsNonRoot: true
          seccompProfile:
            type: RuntimeDefault
        containers:
        - name: qos-demo-ctr
          image: quay.io/openshifttest/hello-openshift:openshift 
      1
      
          resources:
            limits:
              memory: "200Mi" 
      2
      
              cpu: "1" 
      3
      
            requests:
              memory: "200Mi" 
      4
      
              cpu: "1" 
      5
      
          securityContext:
            allowPrivilegeEscalation: false
            capabilities:
              drop: [ALL]

      1
      この例では、パブリック hello-openshift イメージを使用します。
      2
      メモリー制限を 200 MB に設定します。
      3
      CPU 制限を 1 CPU に設定します。
      4
      メモリー要求を 200 MB に設定します。
      5
      CPU 要求を 1 CPU に設定します。
      注記

      コンテナーのメモリー制限を指定しても、メモリー要求を指定しなかった場合、OpenShift Container Platform によって制限に合わせてメモリー要求が自動的に割り当てられます。同様に、コンテナーの CPU 制限を指定しても、CPU 要求を指定しなかった場合、OpenShift Container Platform によって制限に合わせて CPU 要求が自動的に割り当てられます。

    2. 次のコマンドを実行して、Pod リソースを作成します。

      Copy to Clipboard Toggle word wrap
      $ oc apply -f qos-example.yaml --namespace=qos-example

      出力例

      Copy to Clipboard Toggle word wrap
      pod/qos-demo created

検証

  • 次のコマンドを実行して、Pod の qosClass 値を表示します。

    Copy to Clipboard Toggle word wrap
    $ oc get pod qos-demo --namespace=qos-example --output=yaml | grep qosClass

    出力例

    Copy to Clipboard Toggle word wrap
        qosClass: Guaranteed

トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2025 Red Hat, Inc.