検索

5.5. インスタンスにファイルベースのメモリーを使用するコンピュートノードの設定

download PDF

ファイルベースのメモリーを使用して、コンピュートノードのメモリー容量を拡張することができます。この場合、libvirt メモリーバッキングディレクトリー内のファイルをインスタンスのメモリーとして割り当てます。インスタンスのメモリーとして使用できるホストディスクの容量、およびインスタンスメモリーファイルのディスク上の場所を設定することができます。

Compute サービスは、ファイルベースのメモリーに設定された容量をシステムメモリーの合計容量として Placement サービスに報告します。これにより、コンピュートノードは通常システムメモリー内で対応できるよりも多くのインスタンスをホストすることができます。

インスタンスにファイルベースのメモリーを使用するには、コンピュートノードでファイルベースのメモリーを有効にする必要があります。

制限

  • ファイルベースのメモリーが有効なコンピュートノードとファイルベースのメモリーが有効ではないコンピュートノード間で、インスタンスのライブマイグレーションを行うことはできません。
  • ファイルベースのメモリーとヒュージページとの間に互換性はありません。ファイルベースのメモリーが有効なコンピュートノード上で、ヒュージページを使用するインスタンスを起動することはできません。ホストアグリゲートを使用して、ヒュージページを使用するインスタンスがファイルベースのメモリーが有効なコンピュートノードに配置されないようにします。
  • ファイルベースのメモリーとメモリーのオーバーコミットとの間に互換性はありません。
  • NovaReservedHostMemory を使用してホストのプロセス用にメモリーを確保することはできません。ファイルベースのメモリーが使用されている場合、確保されるメモリーはファイルベースのメモリー用に用意されないディスク領域を表します。ファイルベースのメモリーは、キャッシュメモリーとして使用される RAM と共に、システムメモリーの合計として Placement サービスに報告されます。

前提条件

  • ノードおよびノードが追加されたすべてのホストアグリゲートで、NovaRAMAllocationRatio を 1.0 に設定する必要があります。
  • NovaReservedHostMemory を 0 に設定する必要があります。

手順

  1. Compute 環境ファイルを開きます。
  2. Compute 環境ファイルに以下のパラメーターを追加して、インスタンスの RAM 用に利用可能なホストディスク容量を MiB 単位で設定します。

    parameter_defaults:
      NovaLibvirtFileBackedMemory: 102400
  3. オプション: メモリーバッキングファイルを保存するディレクトリーを設定するには、Compute 環境ファイルに QemuMemoryBackingDir パラメーターを設定します。設定しなければ、メモリーバッキングディレクトリーはデフォルトの /var/lib/libvirt/qemu/ram/ に設定されます。

    注記

    デフォルトのディレクトリー (/var/lib/libvirt/qemu/ram/) またはそれより上の階層のディレクトリーに、バッキングストアを配置する必要があります。

    バッキングストアのホストディスクを変更することもできます。詳細は、メモリーバッキングディレクトリーのホストディスクの変更 を参照してください。

  4. 更新内容を Compute 環境ファイルに保存します。
  5. その他の環境ファイルと共に Compute 環境ファイルをスタックに追加して、オーバークラウドをデプロイします。

    (undercloud)$ openstack overcloud deploy --templates \
      -e [your environment files] \
      -e /home/stack/templates/<compute_environment_file>.yaml

5.5.1. メモリーバッキングディレクトリーのホストディスクの変更

デフォルトのプライマリーディスクから別のディスクに、メモリーバッキングディレクトリーを変更することができます。

手順

  1. 代替のバッキングデバイスにファイルシステムを作成します。たとえば、/dev/sdbext4 ファイルシステムを作成するには、以下のコマンドを入力します。

    # mkfs.ext4 /dev/sdb
  2. バッキングデバイスをマウントします。たとえば、/dev/sdb をデフォルトの libvirt メモリーバッキングディレクトリーにマウントするには、以下のコマンドを入力します。

    # mount /dev/sdb /var/lib/libvirt/qemu/ram
    注記

    マウントポイントは、QemuMemoryBackingDir パラメーターの値と一致する必要があります。

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

© 2024 Red Hat, Inc.