14.5. kernel samepage merging (KSM) のアクティブ化
OpenShift Virtualization は、ノードが過負荷になると kernel samepage merging (KSM) をアクティブ化できます。KSM は、仮想マシンのメモリーページにある同一データの重複を排除します。非常によく似た仮想マシンがある場合に KSM を使用すると、シングルノード上で多くの仮想マシンをスケジュールできるようになります。
KSM は、必ず信頼できるワークロードでのみ使用してください。
14.5.1. 前提条件 リンクのコピーリンクがクリップボードにコピーされました!
- OpenShift Virtualization が KSM をアクティブ化するノード上で、管理者が KSM サポートを設定していることを確認する。
 
14.5.2. OpenShift Virtualization を使用して KSM をアクティブ化する リンクのコピーリンクがクリップボードにコピーされました!
ノードでメモリーの過負荷が発生した場合に kernel samepage merging (KSM) をアクティブ化するように、OpenShift Virtualization を設定できます。
14.5.2.1. 設定方法 リンクのコピーリンクがクリップボードにコピーされました!
						OpenShift Container Platform Web コンソールを使用するか、HyperConverged カスタムリソース (CR) を編集することで、すべてのノードの KSM アクティブ化機能を有効または無効にできます。HyperConverged CR は、より詳細な設定をサポートしています。
					
CR 設定
						HyperConverged CR の spec.configuration.ksmConfiguration スタンザを編集することで、KSM アクティブ化機能を設定できます。
					
- 
								この機能を有効にして設定するには、
ksmConfigurationスタンザを編集します。 - 
								この機能を無効にするには、
ksmConfigurationスタンザを削除します。 - 
								ノード選択構文を 
ksmConfiguration.nodeLabelSelectorフィールドに追加すると、OpenShift Virtualization はノードのサブセットのみで KSM を有効化できます。 
管理者は、OpenShift Virtualization で KSM アクティブ化機能が無効になっている場合でも、それをサポートするノードでは KSM を有効化できます。
14.5.2.2. KSM ノードのラベル リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Virtualization は、KSM をサポートするように設定されたノードを識別し、次のノードラベルを適用します。
kubevirt.io/ksm-handler-managed: "false"- 
									メモリーの過負荷が発生しているノード上で OpenShift Virtualization が KSM をアクティブ化すると、このラベルが 
"true"に設定されます。管理者が KSM をアクティブ化した場合、このラベルは"true"に設定されません。 kubevirt.io/ksm-enabled: "false"- 
									OpenShift Virtualization が KSM をアクティブ化しなかった場合でも、KSM がノード上でアクティブ化されると、このラベルは 
"true"に設定されます。 
このラベルは、KSM をサポートしていないノードには適用されません。
14.5.3. Web コンソールを使用して KSM のアクティブ化を設定する リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Container Platform Web コンソールを使用して、OpenShift Virtualization がクラスター内のすべてのノードで kernel samepage merging (KSM) をアクティブ化できるように設定できます。
手順
- 
							サイドメニューから、Virtualization 
Overview をクリックします。  - Settings タブを選択します。
 - Cluster タブを選択します。
 - Resource management を展開します。
 すべてのノードの機能を有効または無効にします。
- Kernel Samepage Merging (KSM) をオンに設定します。
 - Kernel Samepage Merging (KSM) をオフに設定します。
 
14.5.4. CLI を使用して KSM のアクティブ化を設定する リンクのコピーリンクがクリップボードにコピーされました!
					HyperConverged カスタムリソース (CR) を編集することで、OpenShift Virtualization の kernel samepage merging (KSM) アクティブ化機能を有効または無効にできます。OpenShift Virtualization がノードのサブセットのみで KSM をアクティブ化するように設定する場合は、この方法を使用します。
				
前提条件
- 
							OpenShift CLI (
oc) がインストールされている。 
手順
以下のコマンドを実行して、デフォルトのエディターで
HyperConvergedCR を開きます。oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
$ oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnvCopy to Clipboard Copied! Toggle word wrap Toggle overflow ksmConfigurationスタンザを編集します。すべてのノードで KSM アクティブ化機能を有効にするには、
nodeLabelSelectorの値を{}に設定します。以下に例を示します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow ノードのサブセットで KSM アクティブ化機能を有効にするには、
nodeLabelSelectorフィールドを編集します。OpenShift Virtualization が KSM を有効にするノードに一致する構文を追加します。たとえば次の設定では、OpenShift Virtualization は<first_example_key>と<second_example_key>の両方が"true"に設定されているノードで KSM を有効にできます。Copy to Clipboard Copied! Toggle word wrap Toggle overflow KSM アクティブ化機能を無効にするには、
ksmConfigurationスタンザを削除します。以下に例を示します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 
- ファイルを保存します。