multi memcached in upstart

やりたいこと

check

$ ps -ax | grep memcached
 8501 ?        Ssl    0:00 /usr/bin/memcached -m 64 -p 11211 -u memcache -l 127.0.0.1

これを21211でも起動したい

やり方をぐるる

/etc/init.d/memcachedにヒントがあるとのこと

# Usage:
# cp /etc/memcached.conf /etc/memcached_server1.conf
# cp /etc/memcached.conf /etc/memcached_server2.conf
# start all instances:
# /etc/init.d/memcached start
# start one instance:
# /etc/init.d/memcached start server1
# stop all instances:
# /etc/init.d/memcached stop
# stop one instance:
# /etc/init.d/memcached stop server1
# There is no "status" command.

設定をコピー

$ sudo cp /etc/memcached.conf /etc/memcached_server1.conf

コピーしたほうのconfを編集してポートを21211に変更

で、起動しなかった

ぐぐったらupstartだしね無理だよねという話に遭遇。

stackoverflow.com

なのでsystemctlでそれっぽく動きそうなリファレンスを捜索

これがヒット

yomon.hatenablog.com

これベースでやるとよさそう

service をコピー

$ cd /lib/systemd/system
$ sudo cp memcached.service memcached.21211.service

コピーした方を新しい設定ファイルを読みに行くように修正する

起動

$ sudo systemctl start memcached.21211

$ ps -ax | grep memcached
 8501 ?        Ssl    0:00 /usr/bin/memcached -m 64 -p 11211 -u memcache -l 127.0.0.1
10125 ?        Ssl    0:00 /usr/bin/memcached -m 64 -p 21211 -u memcache -l 127.0.0.1

めでたしめでたし