Várias caixas memcached no Ubuntu 11.04

2

Acabei de instalar o memcached no Ubuntu 11.04 (que é o meu servidor de desenvolvimento). Durante a instalação, o script ordenou que o memcached fosse iniciado automaticamente na inicialização. Ótimo, exatamente o que eu precisava.

Exceto, eu preciso de 2 (ou possivelmente 3) caixas memcached diferentes (em outras palavras, uma na porta 11211, uma 11212), mas não consigo encontrar onde configurar o Ubuntu para iniciar ambas as instâncias do memcached na inicialização. .

Atualmente estou usando o memcached 1.4.5

Por solicitação, meus arquivos /etc/init.d/memcached se parecem com:

#! /bin/sh
### BEGIN INIT INFO
# Provides:             memcached
# Required-Start:       $remote_fs $syslog
# Required-Stop:        $remote_fs $syslog
# Should-Start:         $local_fs
# Should-Stop:          $local_fs
# Default-Start:        2 3 4 5
# Default-Stop:         0 1 6
# Short-Description:    Start memcached daemon
# Description:          Start up memcached, a high-performance memory caching daemon
### END INIT INFO


PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DAEMON=/usr/bin/memcached
DAEMONBOOTSTRAP=/usr/share/memcached/scripts/start-memcached
NAME=memcached
DESC=memcached
PIDFILE=/var/run/$NAME.pid

test -x $DAEMON || exit 0
test -x $DAEMONBOOTSTRAP || exit 0

set -e

. /lib/lsb/init-functions

# Edit /etc/default/memcached to change this.
ENABLE_MEMCACHED=no
test -r /etc/default/memcached && . /etc/default/memcached

case "$1" in
  start)
        echo -n "Starting $DESC: "
  if [ $ENABLE_MEMCACHED = yes ]; then
        start-stop-daemon --start --quiet --exec $DAEMONBOOTSTRAP
        echo "$NAME."
        else
                echo "$NAME disabled in /etc/default/memcached."
        fi
        ;;
  stop)
        echo -n "Stopping $DESC: "
        start-stop-daemon --stop --quiet --oknodo --pidfile $PIDFILE --exec $DAEMON
        echo "$NAME."
        rm -f $PIDFILE
        ;;

  restart|force-reload)
        #
        #       If the "reload" option is implemented, move the "force-reload"
        #       option to the "reload" entry above. If not, "force-reload" is
        #       just the same as "restart".
        #
        echo -n "Restarting $DESC: "
        start-stop-daemon --stop --quiet --oknodo --pidfile $PIDFILE
        rm -f $PIDFILE
        sleep 1
        start-stop-daemon --start --quiet --exec $DAEMONBOOTSTRAP
        echo "$NAME."
        ;;
  status)
        status_of_proc $DAEMON $NAME
        ;;
  *)
        N=/etc/init.d/$NAME
        echo "Usage: $N {start|stop|restart|force-reload|status}" >&2
        exit 1
        ;;
esac

exit 0
    
por Peter 18.12.2012 / 11:39

1 resposta

2

Então, se você ler o arquivo /etc/init.d/memcached, poderá ver isso

FILES = (/ etc / memcached _ *. conf).

Então, creio que, se você criar um arquivo memcached_1.conf, com as configurações, ele executará mais um processo do memcached com a nova porta (fornecida no arquivo criado por você).

Você pode pegar o arquivo de amostra do /etc/memcached.conf e copiá-lo para /etc/memcached_1.conf.

apenas substitua a porta padrão 11211, com o que você precisa, como 11212.

E reinicie o sistema. Ele deve executar o mais um binário memcached com a nova porta e configs.

    
por 18.12.2012 / 12:13