メインコンテンツにスキップ
ブログデベロッパーツールオブジェクト・ストレージをプライマリ・ストレージとして使うNextcloud

オブジェクトストレージを Nextcloudの プライマリストレージとして使用する

オブジェクトストレージを Nextcloudの プライマリストレージとして使用する

この投稿は元々 Linode コミュニティLinode カスタマーサポートスペシャリストの Mike Fischler 氏により投稿されました。

Linode オブジェクトストレージをNextcloud導入のプライマリストレージとして使用することができます。(Nextcloudに馴染みがない場合は、Google Drive、OneDrive、Dropboxなどのクローズドソースサービスに似た、オープンソースの生産性およびストレージ管理プラットフォームです。)Nextcloudの豊富なアプリライブラリを使用して、チームごとにグループフォルダを設定したり、個々のユーザーに帯域幅の制限を設定したりと、さまざまなことが可能になります。

Linode オブジェクトストレージとのインタラクションは、アクセス制御リストやバケットポリシー、コマンドラインを気にすることなく、この安全な代替方法により行うことができます。始める前に、オブジェクトストレージをプライマリストレージとして使用する場合にメタデータ (名前やディレクトリ構造など) はバケットに保存されないことに注意してください。メタデータはデータベースにのみ保存され、バケットはファイルの内容を一意の識別子で保持するだけなので、オブジェクトストレージのバケットに保存されたものは、Nextcloud の外部からはアクセスできません。

まず、このプロジェクト専用のアクセスキーとオブジェクトストレージバケットを作成します。必須ではありませんが、セキュリティ上の懸念が生じた場合には、他のプロジェクトに支障をきたすことなく、柔軟にキーを取り消したり、バケットを削除したりすることができます。これらの手順については、以下のリンクを参照してください。

また、このNextcloudのデプロイメントのためにドメイン名を指定できるようにしておくと便利です。Nextcloud One-Click アプリはDNSレコードを自動的に設定することができるので、必要なのはドメインが Linode ネームサーバーを指すようにすることだけです。必要に応じて、以下のリストを参照してください。ネームサーバーの変更が伝搬するまでには最大48時間かかる場合がありますのでご注意ください。

ns1.linode.com
ns2.linode.com
ns3.linode.com
ns4.linode.com
ns5.linode.com

Nextcloud OCAコンパニオンガイドを開いて、"デプロイ後のスタートアップ" のセクションにたどり着くまで手順に従ってください。このセクションに到達したら、そのガイドに表示されているNextcloudのセットアップページを読み込んでみてください。そのページが表示されればインストールは成功です。まだセットアップの準備ができていないので、とりあえずその画面を閉じておきましょう。この時点で記入してしまうと大変なことになるので、今はまだ完了させないで下さい。

次に Linode で SSH セッションを開き、/var/www/nextcloud/config ディレクトリに cd します。そのディレクトリ内に storage.config.php というファイルを作成し、以下の例を貼り付けます。適切なフィールドに記入することを忘れないようにしてください。

<?php
$CONFIG = array(
    'objectstore' => array(
        'class' => '\\OC\\Files\\ObjectStore\\S3',
        'arguments' => array(
                'bucket'   => '<BUCKET_NAME>',
                'key'      => '<ACCESS_KEY>',
                'secret'   => '<SECRET_KEY>',
                'use_ssl'  => true,
                'hostname' => '<HOSTNAME_FOR_OBJ_REGION>',
        ),
    ),
);

これが完了したらそのファイルを保存して、先ほどのNextcloudのセットアップページに戻り、セットアップを完了させます。このプロジェクトを実行するためには、セットアップを完了する前にstorage.config.phpファイルが存在している必要があります。

すべてが正常に動作していれば、"デプロイ後のスタートアップ" のステップ4に示すように、Nextcloudハブページが表示されているはずです。これで Linode オブジェクトストレージバケットにバックアップされた Nextcloud サーバーができました。ここから、Nextcloud ライブラリからアプリのインストールを開始したり、特定のニーズに合わせてこの設定を微調整したりすることができます。手始めに、以下に私のお気に入りをいくつか挙げてみました。

Linode Community に参加して、質問を投稿してください。あなたの投稿がLinode ブログ掲載に選ばれた場合、Linode Tシャツをお送りします。


コメント (7)

  1. Author Photo

    the link to https://docs.nextcloud.com/server/latest/user_manual/files/quota.html is broken.

    any soft/hard file on a single file? I didn’t found it anywhere. I use nextcloud primary on Dedicated server, I have a lot of big > 5 GB

    another question, how to move my current data to Linode Object Storage? Any seamless way to do that without transferring data manually?

  2. Author Photo

    Many thanks for the detailed tips – much appreciated.

  3. Author Photo

    hi , I followed the above article and after creating the file , i get the below error

    Internal Server Error

    The server encountered an internal error and was unable to complete your request.
    Please contact the server administrator if this error reappears multiple times, please include the technical details below in your report.
    More details can be found in the server log.

    What happens ?

  4. Author Photo

    This didn’t work for me.

    When creating the file storage.config.php, the path didn’t exist. I had to create the www/nextcloud/config directory first. Then the install completely ignored it and used /mnt/ncdata for its storage anyway.

コメントを残す

あなたのメールアドレスは公開されません。必須項目には*印がついています。