BluemixでNode-REDのデプロイが突然失敗するなら、Cloudantの空き容量を確認した方が良い

久しぶりの技術ネタですが、BluemixでNode-REDを使っていたら、急にデプロイがエラーになり始めました。

Nodered deploy error

デプロイが失敗しました: {“error”:”unexpected_error”}

なんぞこれ?

だいたい、ノードの編集をしなくても(まったくしないとデプロイできないので、空のフローを追加してみる)、エラーなのだから、環境の方が怪しいですね。

Cf log

Bluemixのダッシュボードからアプリのログを見てみても(Node-REDのCloudFoundaryアプリを開いて、画面左のサイドメニューから「ログ」)、たしかにエラーは出ていますが、具体的な理由とかがない・・・。

強いていえば、デプロイの直前に自動的に行われると思うフローの保存が失敗しているのが気になる。

BluemixのNode-REDでは、フローデータはCloudantに保存されます。やや、Cloudantか?

Cloudantの空き容量不足が原因か?

Cloudant storage error

Cloudantの方を見てみると、案の定、エラーが出ています。どうやら、これが理由じゃないか?

無料プランではCloudantは1GBのストレージを使用することができます。Node-REDのフローデータくらいなら、何の問題もないのですが、私はWatson IoTからのセンサーデータの蓄積をCloudantに行っているのです。

蓄積といっても、あくまで実験レベルだから、デバイスは基本的に1個、デバイスに接続されているセンサーは気温、明るさ、音量の3つ。強いていえば5秒毎というデータ送信頻度が多めかもしれませんが、3ヶ月半ほどの運用で1GBを使い果たしてしまったようです。

で、いちおう過去のデータベースを削除してみました。(Watson IoTからCloudantにデータを蓄積する場合、設定次第で月毎または週毎にデータベースが分割されます。) でも、すぐには反映されず、まだデプロイできない状態です。

Storage assessments occur once every 24 hours.

ということなので、容量が反映されるまで24時間待ってみて、再度、試してみようと思います。

<追記>やはりCloudantの容量不足が原因だった

翌日になって、いちおう削除した分の容量は空いたのですが、”Your Lite account contains over 1GB of data”というメッセージが消えませんでした。まだ削除する必要があるのかもしれませんが、この際、1GBでリミットとなるLiteプランから20GBまで無料で使えてその後は課金になるStandardプランに変更することにしました。

Cloudant plan

これでCloudantのリミットが外れ、Node-REDのデプロイも問題なく行えるようになりました。

この記事を書いた人

井上 研一

株式会社ビビンコ代表取締役、ITエンジニア/経済産業省推進資格ITコーディネータ。AI・IoTに強いITコーディネータとして活動。2018年、株式会社ビビンコを北九州市に創業。IoTソリューションの開発・導入や、画像認識モデルを活用したアプリの開発などを行っている。近著に「使ってわかった AWSのAI」、「ワトソンで体感する人工知能」。日本全国でセミナー・研修講師としての登壇も多数。