[Sysadmins] ejabberd

dobr dobr на iop.kiev.ua
Сб Фев 8 20:49:04 MSK 2014


On 02/08/2014 06:28 PM, dobr wrote:
> On 02/08/2014 06:07 PM, dobr wrote:
>> On 02/08/2014 06:00 PM, dobr wrote:
>>> Всем привет,
>>> Столкнулся с трудностями при запуске ejabberd из p7.
>>> Установлены:
>>> ejabberd-2.1.10-alt1
>>> erlang-R15B.2-alt3
>>> erlang-otp-bin-R15B.2-alt3
>>> В конфиге изменил
>>> {hosts, ["jabber.iop.kiev.ua"]}.
>>> а в /etc/sysconfig/ejabberd
>>> INET_DIST_INTERFACE={0,0,0,0}
>>> ERLANG_NODE=ejabberd на jabber.iop.kiev.ua
>>> проблема в том, что сервер не запускается. Согласно отчетам.
>>> А админка работает. Веб адрес откликается и просит дать логин/пароль.
>>> А поскольку ejabberdctl не может создать пользователя, не могу и 
>>> залогиниться.
>>> Что у нас надо ещё крутить чтоб запустить ejabberd?
>>>
>>> ejabberdctl status
>>> Failed RPC connection to the node 'ejabberd на jabber.iop.kiev.ua': 
>>> nodedown
>>>
>>> Commands to start an ejabberd node:
>>> start Start an ejabberd node in server mode
>>> debug Attach an interactive Erlang shell to a running ejabberd node
>>> live Start an ejabberd node in live (interactive) mode
>>>
>>> Optional parameters when starting an ejabberd node:
>>> --config-dir dir Config ejabberd: /etc/ejabberd
>>> --config file Config ejabberd: /etc/ejabberd/ejabberd.cfg
>>> --ctl-config file Config ejabberdctl: /etc/sysconfig/ejabberd
>>> --logs dir Directory for logs: /var/log/ejabberd
>>> --spool dir Database spool dir: /var/lib/ejabberd
>>> --node nodename ejabberd node name: ejabberd на jabber.iop.kiev.ua
>>> В логе ничего не вижу криминального.
>>> Последние записи:
>>> =INFO REPORT==== 2014-02-08 17:44:57 ===
>>> I(<0.539.0>:ejabberd_s2s_out:892) : Closing connection with 
>>> gmail.com: timeout
>>>
>>> =INFO REPORT==== 2014-02-08 17:48:16 ===
>>> I(<0.544.0>:ejabberd_s2s_out:892) : Closing connection with 
>>> jabber.ru: timeout
>>>
>>> Как будто сервер работает. Но кучка креш-дампов рядом с логами 
>>> наводит на мысли об обратном...
>>> Эрланг в процессах есть.
>>>
>>> Андрей
>>>
>>>
>> Feb  8 15:23:29 first apt-shell: ejabberd-2.1.10-alt1 installed
>> Feb  8 16:31:52 first ejabberd: Starting ejabberd service: succeeded
>> Feb  8 16:52:37 first epmd: epmd: node name already occupied ejabberd
>> Feb  8 16:53:49 first epmd: epmd: node name already occupied ejabberd
>> Feb  8 16:57:39 first epmd: epmd: node name already occupied ejabberd
>> Feb  8 17:03:59 first ejabberdctl: Failed RPC connection to the node 
>> ejabberd на first: nodedown
>> Feb  8 17:03:59 first ejabberdctl: Commands to start an ejabberd node:
>> Feb  8 17:03:59 first ejabberdctl:   start  Start an ejabberd node in 
>> server mode
>> Feb  8 17:03:59 first ejabberdctl:   debug  Attach an interactive 
>> Erlang shell to a running ejabberd node
>> Feb  8 17:03:59 first ejabberdctl:   live   Start an ejabberd node in 
>> live (interactive) mode
>> Feb  8 17:03:59 first ejabberdctl: Optional parameters when starting 
>> an ejabberd node:
>> Feb  8 17:03:59 first ejabberdctl:   --config-dir dir   Config 
>> ejabberd:    /etc/ejabberd
>> Feb  8 17:03:59 first ejabberdctl:   --config file      Config 
>> ejabberd:    /etc/ejabberd/ejabberd.cfg
>> Feb  8 17:03:59 first ejabberdctl:   --ctl-config file  Config 
>> ejabberdctl: /etc/sysconfig/ejabberd
>> Feb  8 17:03:59 first ejabberdctl:   --logs dir Directory for logs: 
>> /var/log/ejabberd
>> Feb  8 17:03:59 first ejabberdctl:   --spool dir        Database 
>> spool dir: /var/lib/ejabberd
>> Feb  8 17:03:59 first ejabberdctl:   --node nodename    ejabberd node 
>> name: ejabberd
>> Feb  8 17:03:59 first ejabberd: Stopping ejabberd service: failed
>> Feb  8 17:12:10 first ejabberdctl: Failed RPC connection to the node 
>> ejabberd на first: nodedown
>> Feb  8 17:12:10 first ejabberdctl: Commands to start an ejabberd node:
>> Feb  8 17:12:10 first ejabberdctl:   start  Start an ejabberd node in 
>> server mode
>> Feb  8 17:12:10 first ejabberdctl:   debug  Attach an interactive 
>> Erlang shell to a running ejabberd node
>> Feb  8 17:12:10 first ejabberdctl:   live   Start an ejabberd node in 
>> live (interactive) mode
>> Feb  8 17:12:10 first ejabberdctl: Optional parameters when starting 
>> an ejabberd node:
>> Feb  8 17:12:10 first ejabberdctl:   --config-dir dir   Config 
>> ejabberd:    /etc/ejabberd
>> Feb  8 17:12:10 first ejabberdctl:   --config file      Config 
>> ejabberd:    /etc/ejabberd/ejabberd.cfg
>> Feb  8 17:12:10 first ejabberdctl:   --ctl-config file  Config 
>> ejabberdctl: /etc/sysconfig/ejabberd
>> Feb  8 17:12:10 first ejabberdctl:   --logs dir Directory for logs: 
>> /var/log/ejabberd
>> Feb  8 17:12:10 first ejabberdctl:   --spool dir        Database 
>> spool dir: /var/lib/ejabberd
>> Feb  8 17:12:10 first ejabberdctl:   --node nodename    ejabberd node 
>> name: ejabberd
>> Feb  8 17:12:10 first ejabberd: Stopping ejabberd service: failed
>> Feb  8 17:13:34 first ejabberdctl: Failed RPC connection to the node 
>> ejabberd на first: nodedown
>> Feb  8 17:13:34 first ejabberdctl: Commands to start an ejabberd node:
>> Feb  8 17:13:34 first ejabberdctl:   start  Start an ejabberd node in 
>> server mode
>> Feb  8 17:13:34 first ejabberdctl:   debug  Attach an interactive 
>> Erlang shell to a running ejabberd node
>> Feb  8 17:13:34 first ejabberdctl:   live   Start an ejabberd node in 
>> live (interactive) mode
>> Feb  8 17:13:34 first ejabberdctl: Optional parameters when starting 
>> an ejabberd node:
>> Feb  8 17:13:34 first ejabberdctl:   --config-dir dir   Config 
>> ejabberd:    /etc/ejabberd
>> Feb  8 17:13:34 first ejabberdctl:   --config file      Config 
>> ejabberd:    /etc/ejabberd/ejabberd.cfg
>> Feb  8 17:13:34 first ejabberdctl:   --ctl-config file  Config 
>> ejabberdctl: /etc/sysconfig/ejabberd
>> Feb  8 17:13:34 first ejabberdctl:   --logs dir Directory for logs: 
>> /var/log/ejabberd
>> Feb  8 17:13:34 first ejabberdctl:   --spool dir        Database 
>> spool dir: /var/lib/ejabberd
>> Feb  8 17:13:34 first ejabberdctl:   --node nodename    ejabberd node 
>> name: ejabberd
>> Feb  8 17:13:34 first ejabberd: Stopping ejabberd service: failed
>> Feb  8 17:13:56 first ejabberd: Starting ejabberd service: succeeded
>> Feb  8 17:37:06 first ejabberd: Starting ejabberd service: succeeded
>> Feb  8 17:49:03 first epmd: epmd: node name already occupied ejabberd
>> Feb  8 17:54:04 first epmd: epmd: node name already occupied ejabberd
>> выжимка из лога....
>> Как понимать ситуацию? Почему нода занята а связи нет?
>> Или пока эрланг крутится сервер реально не остановлен? Почему ни разу 
>> не удалось остановить сервер?
>>
> Прибил процессы c erlang. Попробовал стартануть снова.
> В логе добавилась запись об успешном старте. ejabberdctl считает, что 
> сервер мертв. И добавить админа не получается.
>  epmd -names
> epmd: up and running on port 4369 with data:
>  netstat -atnp | grep 5222 глухо 5280 тоже. И теперь доступа нет совсем.
>
Вернул к исходному виду /etc/sysconfig/ejabberd
теперь:
  netstat -atnp | grep 52**
tcp        0      0 0.0.0.0:5280 0.0.0.0:*                   LISTEN      
8534/beam.smp
tcp        0      0 127.0.0.1:40513 0.0.0.0:*                   
LISTEN      8534/beam.smp
tcp        0      0 0.0.0.0:5222 0.0.0.0:*                   LISTEN      
8534/beam.smp
tcp        0      0 0.0.0.0:4369 0.0.0.0:*                   LISTEN      
8532/epmd
tcp        0      0 0.0.0.0:5269 0.0.0.0:*                   LISTEN      
8534/beam.smp
tcp        0      0 127.0.0.1:60832 127.0.0.1:4369              
ESTABLISHED 8534/beam.smp
tcp        0      0 127.0.0.1:4369 127.0.0.1:60832             
ESTABLISHED 8532/epmd
epmd -names
epmd: up and running on port 4369 with data:
name ejabberd at port 40513
Как видно ejabberdctl is out...
  ejabberdctl status
Failed RPC connection to the node ejabberd на first: nodedown

Commands to start an ejabberd node:
   start  Start an ejabberd node in server mode
   debug  Attach an interactive Erlang shell to a running ejabberd node
   live   Start an ejabberd node in live (interactive) mode

Optional parameters when starting an ejabberd node:
   --config-dir dir   Config ejabberd:    /etc/ejabberd
   --config file      Config ejabberd:    /etc/ejabberd/ejabberd.cfg
   --ctl-config file  Config ejabberdctl: /etc/sysconfig/ejabberd
   --logs dir         Directory for logs: /var/log/ejabberd
   --spool dir        Database spool dir: /var/lib/ejabberd
   --node nodename    ejabberd node name: ejabberd
Что понятно.
Вернул в /etc/ejabberd/ejabberd.cfg
{hosts, ["localhost"]}.
и
  epmd -names
epmd: up and running on port 4369 with data:
name ejabberd at port 52583
  netstat -atnp
tcp        0      0 0.0.0.0:5280 0.0.0.0:*                   LISTEN      
8656/beam.smp
tcp        0      0 0.0.0.0:5222 0.0.0.0:*                   LISTEN      
8656/beam.smp
tcp        0      0 127.0.0.1:52583 0.0.0.0:*                   
LISTEN      8656/beam.smp
tcp        0      0 0.0.0.0:5269 0.0.0.0:*                   LISTEN      
8656/beam.smp
tcp        0      0 127.0.0.1:41164 127.0.0.1:4369              
ESTABLISHED 8656/beam.smp
tcp        0      0 0.0.0.0:4369 0.0.0.0:*                   LISTEN      
8630/epmd
tcp        0      0 127.0.0.1:4369 127.0.0.1:41164             
ESTABLISHED 8630/epmd
Понятно, что ejabberdctl не работает...
Кто виноват и что делать? (с) Не мой.


Подробная информация о списке рассылки Sysadmins