ejabberd + tsung

I am simply trying to get the most basic of load tests working on my ejabberd instance. I want to run a tsung client (1.4.2) against ejabberd 2.1.8. I don't care what type of ssl auth I have going on...I simply want to get my first load test running. I believe my current problem is auth + ssl configuration issues. I have created users test_1-test_1000 with passwords test_1-test_1000

My ejabberd.cfg script has

{loglevel, 5}.
{hosts, ["tsung"]}.

{listen,
[

  {5222, ejabberd_c2s, [
                        {certfile, "/opt/ecs/ejabberd-2.1.8/conf/server.pem"},
                        {access, c2s}
                       ]},

  {5280, ejabberd_http, [
                         {request_handlers, [
                                {["rest"], mod_rest},
                                {["monitor"], mod_monitor_web}
                         ]},
                         web_admin
                        ]}

]}.

I have also tried it with

  {5222, ejabberd_c2s, [
                        {certfile, "/opt/ecs/ejabberd-2.1.8/conf/server.pem"},
                        {access, c2s},
                        tls
                       ]},

and

  {5222, ejabberd_c2s, [
                        {certfile, "/opt/ecs/ejabberd-2.1.8/conf/server.pem"},
                        {access, c2s},
                        starttls
                       ]},

and

  {5222, ejabberd_c2s, [
                        {certfile, "/opt/ecs/ejabberd-2.1.8/conf/server.pem"},
                        {access, c2s},
                        starttls_required
                       ]},

The script I'm running is very simple (tsung xml):

<tsung loglevel="notice" version="1.0">

  <clients>
    <client host="localhost" use_controller_vm="true"></client>
  </clients>

<servers>
  <server host="localhost" port="5222" type="tcp"></server>
</servers>

  <load>
   <arrivalphase phase="1" duration="3" unit="minute">
    <users interarrival="1" unit="second"></users>
   </arrivalphase>
  </load>

<options>
  <option type="ts_jabber" name="global_number" value="100"></option>
  <option type="ts_jabber" name="userid_max" value="1000"></option>
  <option type="ts_jabber" name="domain" value="tsung"></option>
  <option type="ts_jabber" name="username" value="zach"></option>
  <option type="ts_jabber" name="passwd" value="zach"></option>
</options>

  <sessions>
   <session probability="100" name="xmpp-connection" type="ts_jabber">

    <request>
       <jabber type="connect" ack="no_ack"></jabber>
    </request>

    <thinktime value="2"></thinktime>

    <transaction name="authenticate">
      <request> <jabber type="auth_get" ack="no_ack"></jabber> </request>
      <request> <jabber type="auth_set_plain" ack="no_ack"></jabber> </request>
    </transaction>

    <thinktime value="30"></thinktime>

    <transaction name="close">
      <request> <jabber type="close" ack="no_ack"></jabber> </request>
    </transaction>

  </session>
</sessions>
</tsung>

I see lots of port activity and established connections when I run

netstat -an | grep 5222

but when running

./ejabberdctl connected_users

there are never ANY connected users.

I have tried the following types in tsung:

   <server host="localhost" port="5222" type="tcp"></server>
<!-- OR -->
   <server host="localhost" port="5222" type="ssl"></server>

I've poured over documentation, and asked questions at the Tsung mailing list:
http://lists.process-one.net/pipermail/tsung-users/2012-July/002135.html
I have received responses that TLS isn't supported. So fine, how do I turn off tls in ejabberd and make Tsung work for ejabberd at all? There are tons of people talking about having done it, but nobody has posted an ejabberd.ctl with a corresponding jabber-tsung.xml. Any and all help here would be greatly appreciated!!!

Syndicate content