5.3.3.2. HyperConverged オブジェクトノード配置ルールの例


OpenShift Virtualization がそのコンポーネントをデプロイするノードを指定するには、OpenShift Virtualization のインストール時に作成する HyperConverged カスタムリソース (CR) ファイルの nodePlacement オブジェクトを編集します。

nodeSelector ルールを使用した HyperConverged オブジェクトの例:

apiVersion: hco.kubevirt.io/v1
kind: HyperConverged
metadata:
  name: kubevirt-hyperconverged
  namespace: openshift-cnv
spec:
  deployment:
    nodePlacements:
      infra:
        nodeSelector:
          example.io/example-infra-key: example-infra-value
      workload:
        nodeSelector:
          example.io/example-workloads-key: example-workloads-value
  • インフラストラクチャーリソースは、example.io/example-infra-key = example-infra-value というラベルの付いたノードに配置されます。
  • ワークロードは、example.io/example-workloads-key = example-workloads-value というラベルの付いたノードに配置されます。

アフィニティー ルールを持つ ハイパーコンバージド オブジェクトの例:

apiVersion: hco.kubevirt.io/v1
kind: HyperConverged
metadata:
  name: kubevirt-hyperconverged
  namespace: openshift-cnv
spec:
  deployment:
    nodePlacements:
      infra:
        affinity:
          nodeAffinity:
            requiredDuringSchedulingIgnoredDuringExecution:
              nodeSelectorTerms:
              - matchExpressions:
                - key: example.io/example-infra-key
                  operator: In
                  values:
                  - example-infra-value
      workload:
        affinity:
          nodeAffinity:
            requiredDuringSchedulingIgnoredDuringExecution:
              nodeSelectorTerms:
              - matchExpressions:
                - key: example.io/example-workloads-key
                  operator: In
                  values:
                  - example-workloads-value
            preferredDuringSchedulingIgnoredDuringExecution:
            - weight: 1
              preference:
                matchExpressions:
                - key: example.io/num-cpus
                  operator: Gt
                  values:
                  - 8
  • インフラストラクチャーリソースは、example.io/example-infra-key = example-value というラベルの付いたノードに配置されます。
  • ワークロードは、example.io/example-workloads-key = example-workloads-value というラベルの付いたノードに配置されます。
  • ワークロード用には 9 つ以上の CPU を持つノードが優先されますが、それらが利用可能ではない場合も、Pod は依然としてスケジュールされます。

toleration ルールを持つ ハイパーコンバージド オブジェクトの例:

apiVersion: hco.kubevirt.io/v1
kind: HyperConverged
metadata:
  name: kubevirt-hyperconverged
  namespace: openshift-cnv
spec:
  deployment:
    nodePlacements:
      workload:
        tolerations:
        - key: "key"
          operator: "Equal"
          value: "virtualization"
          effect: "NoSchedule"

OpenShift Virtualization コンポーネント用に予約されているノードには、key = virtualization:NoSchedule taint のラベルが付けられています。予約済みノードには、一致する toleration を持つ Pod のみがスケジュールされます。

以下の Pod は、HyperConverged オブジェクトノードの配置ルールの影響を受けます。これらの Pod は、HyperConverged CR がデプロイされる際に作成されます。

  • cdi-apiserver
  • cdi-deployment
  • cdi-uploadproxy
  • kubemacpool-cert-manager
  • kubemacpool-mac-controller-manager
  • kubevirt-apiserver-proxy
  • kubevirt-console-plugin
  • kubevirt-ipam-controller-manager
  • kubevirt-migration-controller
  • virt-api
  • virt-controller
  • virt-exportproxy
  • virt-template-validator
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

会社概要

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

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

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

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

Legal Notice

Theme

© 2026 Red Hat
トップに戻る