26.3. systemd を使用した CPU リソースの割り当て
systemd
が管理するシステムでは、各システムサービスは対象の cgroup
で起動します。CPU cgroup
コントローラーのサポートを有効にすると、システムはプロセスごとのディストリビューションではなく、CPU リソースのサービス対応ディストリビューションを使用します。サービス対応ディストリビューションでは、同じサービスを使用するプロセスの数に関係なく、各サービスはシステム上で実行されている他のすべてのサービスと比較してほぼ同じ量の CPU 時間を受け取ります。
特定のサービスで多くの CPU リソースが必要な場合は、サービスの CPU 時間割り当てポリシーを変更することでリソースを付与できます。
手順
systemd
の使用時に CPU 時間割り当てポリシーオプションを設定するには、以下を実行します。
選択したサービスで、CPU 時間割り当てポリシーオプションに割り当てた値を確認します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow systemctl show --property <CPU time allocation policy option> <service name>
$ systemctl show --property <CPU time allocation policy option> <service name>
root として、CPU 時間割り当てポリシーのオプションで必要な値を設定します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow systemctl set-property <service name> <CPU time allocation policy option>=<value>
# systemctl set-property <service name> <CPU time allocation policy option>=<value>
cgroup プロパティーは、プロパティーの設定直後に適用されます。したがって、サービスを再起動する必要はありません。
検証
サービスに必要な CPU 時間割り当てポリシーオプションの値が正常に変更されたかどうかを確認するには、以下のコマンドを実行します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow systemctl show --property <CPU time allocation policy option> <service name>
$ systemctl show --property <CPU time allocation policy option> <service name>