AWS
時折重くなるAWSの原因
私はトレーディングbotをAmazonWebService(AWS)のcloud9上で動かしています。
時々、この環境がとても重くなって困ることがありました。
その時にCPUなどを食いつぶしているプロセスはこれでした。
「vfs-worker」
topやpsで確認できます。
topだと大体一番上を陣取って90%前後のCPUを使用している状況です。
■top結果 これちょっとスクショのタイミング悪かったですね…。変動するんですがCPU90とか使っていたのです。
■psしてgrepしてみると2個ある?
対策
これ何かしら、どうしたらいいかしら…
ということで調べていたら日本語のページが全然なかったので
メモとして書いておきます。
色々ググってて、イマイチ情報の集まりが良くなかったんですが、
サポート(twitter)がぶっ殺せ、再接続するからOK
っぽいことを言ってることがわかりました。英語苦手なんだよなあ…
これです。
@kpcmm If that’s the case, then it’s a bug. You should only have 1 of those per connected client. You can kill them. They will reconnect.
— Cloud9 IDE Support (@C9Support) December 9, 2014
このケースだと「バグである、killすることができる」…といったような内容だと思います。
この質問者はなおらなかったみたいですが、多分別の、inotifyプロセスが原因だったと思われるので、「vfs-worker」が重くなってる場合にはサポートの回答は有効なのではないかと考えられます。
で、私の場合。特に何かをする前に、なおってしまいました。
えー。しばらく耐えればなおるのかな?そういうもん?
ちなみに、なおったというのは
・[プロセスは変わらず存在する]が[負荷が下がった]
という状態です。
ちなみに、このプロセス殺すと何が起こるかというと…
このように、reconnecting…となり、再接続されました。
確かにtwitterサポートの言うとおりのようだ…
ただ、2個あって、片方は別の接続なのかな?と思ったのですがどっちを殺しても
自身の画面に「connecting…」と出ました。冗長化?
というわけで、「vfs-worker」が重くなってたらkillしてみるのも一つの手ですね。
[自分マシン-AWS]間の接続なので、そこで大きなやり取りをしていなければ
殺しても実害ないと思います。
(つまり、[自分マシン-AWS]間をぶった切りますが、[AWSbot-取引所]間のやりとりには影響を与えないと思います。)
killの仕方
ps -ef |grep vfs-worker
→vfs-workerのプロセスIDを特定
kill 特定したPID(たいてい数字4~5ケタくらい)
→すると、たぶん画面に「connecting…」と出て再接続されます。
軽くなりましたか?
試してみた
これ、ちょいちょい重くなりますね。
killを試してみました。
reconnectingされて、接続は戻るのですが…
ですが、いまいち?改善がみられる時もあるような、見られない時もあるようなという
非常に微妙な感じでした。ちょっとほっとくとなおるんですけどね。
何かご存知の方いましたら教えてください…。
私は重いのが「vfs-worker」だったらもうしばらく諦める。みたいなしょうもない運用をしています。
コメント