第18章 リソース使用状況の管理
Red Hat Gluster Storage が他のリソース集中型ソフトウェアおよびサービスと同じマシンにデプロイされる場合、プロセス間のリソースの競合を避けるために glusterd が使用するリソースを制限すると便利です。
Red Hat Enterprise Linux 6 では、リソース管理が異なります。詳細は『Red Hat Enterprise Linux 6 リソース管理ガイド』を参照してください。https://access.redhat.com/documentation/ja-JP/Red_Hat_Enterprise_Linux/6/html/Resource_Management_Guide/ch-Using_Control_Groups.html
重要
Red Hat Gluster Storage は 3.5 Batch Update 1 以降では、Red Hat Enterprise Linux 6 (RHEL 6) でサポートされません。インストールガイドの『バージョンの詳細』表および『Red Hat Gluster Storage ソフトウェアコンポーネントおよびバージョン』 を参照してください。
手順18.1 Gluster デーモンの CPU 使用率の制御
control-cpu-load
スクリプトは、cgroup フレームワークを使用してプロセスの CPU クォータを設定して、Gluster デーモンの CPU 使用率を制御するユーティリティーを提供します。
- 以下のコマンドを使用して scripts フォルダーに移動します。
# cd /usr/share/glusterfs/scripts
- 以下のコマンドを使用して、必要な gluster デーモンの PID を確認します。
# ps -aef | grep daemon_name
出力は以下の形式になります。root 1565...output omitted...grep --color=auto daemon_name
この出力では、1565 はデーモンサービスの PID を表します。PID が異なるシステムやデーモンの異なるインスタンスで一致しないため、このプロセスを実行するたびに関連する PID を確認するようにしてください。 - 以下のコマンドを使用して
control-cpu-load
スクリプトを実行します。# sh control-cpu-load.sh
- システムで以下の入力を求めるプロンプトが出されたら、前の手順で取得したデーモンの PID を入力して
Enter
キーを押します。[root@XX-XX scripts]# sh control-cpu-load.sh Enter gluster daemon pid for which you want to control CPU. 1565
- システムに以下の入力を求めるプロンプトが出されたら、
y
と入力してEnter
キーを押します。If you want to continue the script to attach 1565 with new cgroup_gluster_1565 cgroup Press (y/n)?
- システムが以下の通知を要求したら、デーモンに割り当てるのに必要なクォータ値を入力して
Enter
キーを押します。Creating child cgroup directory 'cgroup_gluster_1565 cgroup' for daemon_name.service. Enter quota value in range [10,100]: 25
この例では、デーモンサービスのクォータ値は25
に設定されます。クォータ値が正常に設定されていると、システムは以下のメッセージが表示されます。Entered quota value is 25 Setting 25000 to cpu.cfs_quota_us for gluster_cgroup. Tasks are attached successfully specific to 1565 to cgroup_gluster_1565.
重要
デーモンが再起動し、新しいデーモン PID が使用されるたびに、この手順を実施します。
手順18.2 Gluster デーモンのメモリー使用量の制御
control-mem
スクリプトは、cgroup フレームワークを使用してプロセスのメモリー制限を設定して、Gluster デーモンのメモリー使用率を制御するユーティリティーを提供します。
- 以下のコマンドを使用して scripts フォルダーに移動します。
# cd /usr/share/glusterfs/scripts
- 以下のコマンドを使用して、必要な gluster デーモンの PID を確認します。
# ps -aef | grep daemon_name
出力は以下の形式になります。root 1565 1 0 Feb05 ? 00:09:17 /usr/sbin/glusterfs -s localhost --volfile-id gluster/daemon_name -p /var/run/gluster/daemon_name/daemon_name.pid -l /var/log/glusterfs/daemon_name.log -S /var/run/gluster/ed49b959a0dc9b2185913084e3b2b339.socket --xlator-option *replicate*.node-uuid=13dbfa1e-ebbf-4cee-a1ac-ca6763903c55 root 16766 14420 0 19:00 pts/0 00:00:00 grep --color=auto daemon_name
この出力では、1565 はデーモンサービスの PID を表します。 - 以下のコマンドを使用して
control-cpu-load
スクリプトを実行します。# sh control-mem.sh
- システムが以下の入力を要求したら、前の手順で取得したデーモンの PID を入力して
Enter
キーを押します。[root@XX-XX scripts]# sh control-mem.sh Enter gluster daemon pid for which you want to control CPU. 1565
この例では、1565 はデーモンサービスの PID を表します。デーモンサービスの PID は、システムによって異なる場合があります。 - システムが以下の入力を要求したら、
y
と入力してEnter
キーを押します。If you want to continue the script to attach daeomon with new cgroup. Press (y/n)?
システムは、以下の通知を要求します。Creating child cgroup directory 'cgroup_gluster_1565 cgroup' for daemon_name.service.
- システムが以下の入力を要求したら、デーモンに割り当てるのに必要なメモリー値を入力して
Enter
キーを押します。Enter Memory value in Mega bytes [100,8000000000000]:
この例では、メモリー値は5000
に設定されます。メモリー値が正しく設定されていると、システムは以下のメッセージを表示します。Entered memory limit value is 5000. Setting 5242880000 to memory.limit_in_bytes for /sys/fs/cgroup/memory/system.slice/daemon_name.service/cgroup_gluster_1565. Tasks are attached successfully specific to 1565 to cgroup_gluster_1565.
重要
デーモンが再起動し、新しいデーモン PID が使用されるたびに、この手順を実施します。