Summarizing my requirement here.
Configure Ejabberd cluster setup under AWS application load balancer, then register 10K users with Ejabberd API request. Once the user accounts created, login with those users, create rooms & perform the chat test with multiple rooms with multiple user accounts.
Summarizing the existing Ejabberd cluster setup.
I have configured the Ejabberd cluster setup with two nodes in AWS instance. Then I have created an AWS Application Load balancer with two target groups, one target group with port number 5280 (Admin URL) & other target group 5222 (XMPP client authentication). Then I’m registering the ejabberd user with below API request (I may create 10K accounts with script).
http://<AWS Load balancer domain name>:5280/api/register
{
"user": "test_user1",
"host": "<AWS Load balancer domain name>",
"password": "********"
}
Until here the Ejabberd setup working fine (I have created a virtual host with AWS load balancer domain name in Ejabberd config file : “/opt/ejabberd/conf/ejabberd.yml”).
When I’m trying to authenticate the registered user with Pidgin XMPP client, I’m not able to authenticate the registered user with load balancer domain name.
I have noticed that the Ejabberd servers are receiving the request from AWS load balancer internal private IP address (not from the load balancer actual domain name), hence the ejabberd authentication is not working with AWS application load balancer.
Please help me to achieve this requirement..