1

OpenCPU を Ubuntu サーバー (Ubuntu 14.04.1 LTS (GNU/Linux 3.13.0-32-generic x86_64)) に既にインストールしており、すべてが問題なく完全に機能しました。ここで言いたいのは、私はこの API が本当に好きで、この API に取り組んでいる人々 (主に Jeroen Ooms だと思います) のすべての努力にとても感謝しています。もう一度インストールしましたが、別のプロバイダーでホストされている別のサーバーにインストールしました。これは Ubuntu サーバー (Ubuntu 14.04.1 LTS (GNU/Linux 3.13.0-042stab093.4 x86_64)) でもあるため、以前と同じようにスムーズに動作することを期待していました。しかし今、私には問題があります。インストールしてサービスを開始した後、ブラウザで問題がないかどうかを確認したかったのです。だから私はちょうど開いたhttp://xxx.xxx.xxx.xxx/ocpu私の他のサーバーで動作したように。今回はブラウザに OpenCPU API Explorer が表示されませんが、次のメッセージが表示されます。

Failed to set rlimit. ENOSYS

In call:
rlimit_wrapper("rlimit_as", hardlim, softlim, pid, verbose)

サーバーには1GBの物理メモリしかないので、「rlimit.as」を標準の2e9ではなく1e9に変更すると問題が解決すると思いました(750000000と500000000も試しました)が、何も役に立ちませんでした(もちろんopencpuサービスを再起動しました)変更するたびにもう一度)。また、これは問題ではないと思います。操作で複数の GB を使用する場合、サーバーは仮想メモリを使用すると思うからです。問題は RAppArmor に関係していると思います。だから私はそれを無効にしてopencpuを再起動しようとしましたが、問題は消えませんでした:

$ sudo aa-disable usr.bin.r /etc/apparmor.d/usr.bin.r を無効にします。トレースバック (最新の呼び出しが最後): file "/usr/sbin/aa-disable", line 30, in tool.cmd_disable() File "/usr/lib/python3/dist-packages/apparmor/tools.py", line 148、cmd_disable で apparmor.AppArmorException(cmd_info[1]) を発生させる apparmor.common.AppArmorException: '警告: /proc/mounts で適切な fs が見つかりません。マウントされていますか?\nオーバーライドするには --subdomainfs を使用してください。\n'

ここで問題が何であるかを知っている人はいますか、または解決策を探すための提案がありますか?

次のいずれも問題の原因ではないと思いますが、よくわからないので、とにかくこれらの警告を追加します。

OpenCPU のインストール中に遭遇した唯一の奇妙なことは、次のメッセージでした (4 回表示されました)。

iptables v1.4.21: can't initialize iptables table `nat': Table does not exist (do you need to insmod?)
Perhaps iptables or your kernel needs to be upgraded.

しかしその後、次のように言われました。

 * Reloading nginx configuration nginx          [ OK ]
OK
Setting up opencpu (1.4.4-trusty15) ...

また、RAppArmor を個別にインストールしようとすると、次の警告が表示されました。

perl: 警告: ロケール設定を確認してください: LANGUAGE = (未設定)、LC_ALL = (未設定)、LC_CTYPE = "UTF-8"、LANG = (未設定) がサポートされ、システムにインストールされています。perl: 警告: 標準ロケール ("C") にフォールバックしています。locale: LC_CTYPE をデフォルトに設定できません locale: そのようなファイルまたはディレクトリはありません locale: LC_ALL をデフォルトの locale に設定できません: そのようなファイルまたはディレクトリはありません 以前に未選択のパッケージ r-cran-rapparmor を選択しています。

そしてこれも:

警告: /proc/mounts で適切な fs が見つかりません。マウントされていますか?\n--subdomainfs を使用してオーバーライドしてください。\n

前もって感謝します!

4

1 に答える 1

0

新しいホスティング プロバイダーは、rlimit、iptables、おそらく apparmor など、あらゆる種類の Linux 機能を制限する共有カーネルを持つ何らかの仮想化システムを使用しているようです。実際のクラウド ホストですか、それとも自分でセットアップしたものですか?

これを R で (opencpu の外で) デバッグすると便利です。サーバーのコンソールで R を起動し、次のように入力します。

library(RAppArmor, lib="/usr/lib/opencpu/library")
rlimit_as(1e9)
rlimit_fsize(1e9)
rlimit_cpu(1e5)
于 2014-10-13T14:27:33.420 に答える