web-dev-qa-db-ja.com

Ubuntuでredisの別のインスタンスを構成するにはどうすればよいですか?

基本的に、Ubuntuでredisのインスタンスを2つ作成したいと思います。 / etc/init.d/redis-serverスクリプトを見て、別の構成ファイル(新しいポートなど)を指す新しいスクリプト(redis-server-dev)を作成しようとしましたが、作成されませんでした動作しているようです。

正しい手順は何ですか?

ありがとう

8
Dan
  • 新しい設定ファイルを作成します/etc/redis/redis-new.conf(redis.confからコピー)そして新しい設定でこれらのフィールドを変更します
    • pidfile
    • ポート
    • ログファイル
    • dir(デフォルトのdbの場合)
  • 新しいファイルを作成します/etc/init.d/redis-server-new(ファイルredis-serverからコピー)そして新しいファイルのこれらのフィールドを変更します
    • 名前
    • pidfile(ステップ1の構成ファイルと同じ)
    • deamon_args(ステップ1の構成ファイルへのパス)。
  • 必要なディレクトリを作成しますmkdir /var/lib/redis-new(そしてそれに適切な権利を与えるchown redis:redis /var/lib/redis-new
  • 新しいファイルを実行可能にします:chmod +x /etc/init.d/redis-server-new
  • 新しいデーモンを登録します:update-rc.d redis-server-new defaults
19
Dan

に追加 ダンの答え

ログファイルのこのエラーによると、1つの追加ディレクトリを作成する必要があります

# Can't chdir to '/var/lib/redis-new': No such file or directory

そう

mkdir /var/lib/redis-new

さもないと /etc/init.d/redis-server-newは起動しません。

によって適切な権利を追加することを忘れないでください

chown redis:redis /var/lib/redis-new
5
Hypo

また、別の方法があります。 https://github.com/antirez/redis/blob/3.0/utils/install_server.sh にあるインストールスクリプトを使用できます(ソースに付属している場合はソースからredisをコンパイルしました)、2つのテンプレートファイルがあります:

  1. redis_init_script.tpl(utilsディレクトリにあります)
  2. redis.conf (の中に ../ソースのutilsからのディレクトリ

新しいインスタンスを実行するポートのみを指定する必要があります(他の構成可能な選択肢がありますが、デフォルトを使用できます)。残りのファイルの配置は自動的に行われます。

0
Mohit