SoftEther VPNの不具合??
さてSoftEtherVPNの設定が終わりました。
あれ、なんだかパソコンが熱いな・・・・?
このパソコンではvpnとsambaくらいしか動かしてないはずだけどな。
夏だからかな?
ちょっとプロセス使用率確認
$ top PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 2600 root 0 -20 1166588 170944 5220 S 119.1 8.8 5:34.77 vpnserver
信じられないCPUの使用率!
SoftEtherVPNってこんな使用率になるの???
しょうがないのでCPU使用率下げるよう小細工しましょう(後々この判断が間違いだったと気付きます)
以下はその小細工です。
CPU使用率を制限する為にcgroupを導入しました。
これを使うとCPUリソースやらメモリやらに制限をかけることができます。
$ apt-get -y install cgroup-bin
続いてcgroupのコンフィグを作成。
このファイルはうちの環境では存在しなかったので、新規作成しました。
$ vi /etc/cgconfig.conf group limit { cpu { cpu.cfs_quota_us = 200000; cpu.cfs_period_us = 1000000; } cpuacct { } }
1000000マイクロ秒(つまり1秒)あたり200000μ秒(0.2秒)単一のCPUにアクセス
出来るようになります。20%までこのプロセスにCPUを割いてくれるらしいです。
続いて何やらおまじない
$ cgconfigparser -l /etc/cgconfig.conf
これをやらないと
cgroup change of group failed
って出てきます。
そしてcgroupを使ってvpnserverを起動します。
$ cgexec -g cpu:limit /usr/local/vpnserver/vpnserver start
これで完了なんですが、そうです。
起動スクリプトも修正してやらないといけません。
最終的にこのような形になりました。
再起動後にスマホからVPNアクセス出来て、topも20%に収まりました。
とここでまた問題が発生しました。
スマホのOpenVPN ConnectのConnection statsに表示される
Bytes inが異常に増えるという現象が発生しました。
みた感じ200kByte/sくらいのスピードでどんどん通信量が増えていきます。
あれこれ設定を見直しましたが、結局SoftEtherVPNのサーバのバージョンを変更すると状況が改善しました。
うちの環境ではBuild 9546でこの事象が発生しました。
以前試していたBuild 9529に戻して確認していますが今のところこの事象は発生していません。
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 6294 root 0 -20 1036472 21984 5032 S 0.7 1.1 0:50.98 vpnserver
クライアントがガンガンアクセスするような環境なら当然負荷は高いでしょうが、個人でたててるサーバだとこんなもんなでしょう。(core2duoでもね)
結局cgroupの設定なんて必要なかったですね・・・・
まあお勉強ということで。