BMC - How to achieve Load Balancing after Dynamic Clustering?

Nikhilesh Aglawe shared this question 5 years ago
Answered

I have achieved Dynamic Clustering and looking for steps to achieve Load Balancing.

Replies (17)

photo
1

Hi Nikhilesh,

We do not have a specific guide for load balancing as these are out of the scope of Yellowfin, however the actual load balancing (multiplexing requests from external requests) can be achieved with a hardware load-balancer, or load-balancing software. It is required that the load-balancing infrastructure delivers network traffic to the Yellowfin application server transparently, as if the packets were connecting directly to the application server directly. If Session Replication is not enabled, the load-balancing infrastructure will need to provide “sticky-session” functionality, where traffic for a user’s session should be sent to the same node.

Hopefully this gives some insight into load balancing.

Regards,

Paul

photo
1

Hi Nikhilesh,

Hope you're having a good week.

Just wanted to check-in and see how it's all going. Was there anything you were needing from me to help get this resolved?

Regards,

photo
1

We have been working towards Load balancing Yellowfin using Nginx. We have encountered some problems with the same. Following is the summary of what exactly we have done


  • Successfully clustered Yellowfin with http connection
  • Successfully completed Load Balancing with Nginx Load Balancer(v1.9.11) for the clustered environment of Yellowfin with http front end and back end.
  • Successfully clustered Yellowfin with https connection
  • Tried achieving Load Balancing with Nginx Load Balancer(v1.9.11) for the clustered environment of Yellowfin with https connection over front end and back end. Following are the Issues
  • Front end for the load balancer is working fine and when we go to the url of load balancer we get the login page of the Yellowfin
  • When we input the login credentials and try to login we are getting the err_connection_refused error. We tried to deep dive into the logs and tried to check the difference between normal login(successful) and Load Balancer Login(Unsuccessful) we encountered that when we hit the Load Balancer and try to login we are stuck at BrowserCheck.i4 with status code 302 and POST Protocol and cannot access the MIEntry.i4 with status code 302 and GET Protocol. Whereas we get the same in normal login.

photo
1

Hi Nikhilesh,

Sorry for the delayed response. We have been running on a tight support crew over the holiday period. As far as the load balancing goes we really only have the documentation which can provide some general guides to load balancing. If you need further assistance with load balancing, the best way to go from here would be to engage our professional services team. Would you like me to do this and get someone to contact you?

Regards,

Paul

photo
1

Hi Paul,

We have already configured the Load Balancer and its working fine with http, while the https connection gives the login page properly but we are not able to login and getting an error.

We have properly configured the load balancer(Nginx) and validated all the functionalities are working as expected for http requests.

We are facing error "err_connection_refused" after login through https

Please find attached Yellowfin log file.


Thanks,


Nikhilesh

Files: logs.txt
photo
1

Hi Nikhilesh,

Thanks for the update. Can you please send me a screenshot of the error. (Login page prior to logging in and then the responding page with the error inc URL). Can you also send me all of the Yellowfin logs as the txt file is not giving me anything to work with as there are no errors in there. Quick question - Is NGINX providing the SSL or is Yellowfin handling the SSL?

err_connection_refused can often mean a network, login related or configuration issue.

Thank you,

Paul

photo
1

Hi Paul,

Please find attached files for logs and screenshots for Nginx(Load Balancer) before and after login. Also for reference I am also attaching Normal before and after login screenshots.

Here Nginx login refers to logging in through the machine where nginx is installed and Normal login refers to logging in through the machine where yellowfin is installed.

Thanks,

Nikhilesh

photo
2

Hi Nikhilesh,

The problem appears to be within NGINX in this case and in that it is not proxying to the correct port.

Pre Login - Going to port 8443 which I am assuming is the port defined in NGINX

d36b6a6746ff39865f1e0c48cad601c2

Post Login - Going to port 80 and therefore I would also assume that there is nothing running on https on port 80 (hence network connection refused error)

073c4605126a4577eabbffc2e60006b8

The normal login is defining the port as 8441, so should you be proxying to this or perhaps the proxy_set_header Host $host:$server_port; has not ben setup in NGINX?

Therefore it looks like the redirection has not been setup correctly within the NGINX configuration. You will need to look at this again and make sure you re going to the correct port.

So the issue seems to be related to the way either NGINX is handling the requests and where it is trying to connect to and appears that it is still not correct or possibly the way the Yellowfin options have been setup or the SSL configuration.

So can we check the following please to see if any of this could be causing the problem.

1. In the server.xml file (Yellowfin/appserver/conf/)

Within the section -> <Connector port="xxxx ....

Have the parameters been set?

proxyname="hostname.domain" scheme="https" secure="true"

I.E.

<Connector port="8000" protocol="HTTP/1.1" maxHttpHeaderSize="8192" maxThreads="150" minSpareThreads="25" enableLookups="false" redirectPort="8443" acceptCount="100"

connectionTimeout="20000" disableUploadTimeout="true" URIEncoding="UTF-8" compression="on" compressionMinSize="2048" noCompressionUserAgents="gozilla, traviata"

compressibleMimeType="text/html,application/x-javascript,text/css,application/javascript,text/javascript,text/plain,text/xml,application/json,application/vnd.ms-fontobject,application/x-font-opentype,application/x-font-truetype,application/x-font-ttf,application/xml,font/eot,font/opentype,font/otf,image/svg+xml,image/vnd.microsoft.icon,image/svg,text/comma-separated-values,application/csv"

useSendfile="false" proxyname="hostname.domain" scheme="https" secure="true"/>


2. In the NGINX configuration (Have you tried using the settings as per below)

location / {

proxy_pass http://localhost:7047/;

proxy_redirect off;

proxy_set_header Host $host:$server_port;

}


Please note that we are not NGINX experts and the above is some of the work I have done with another customer, so you would need to check that these are suitable and would work for you.

Let me know how it goes.

Regards,

Paul

photo
1

Hi Nikhilesh,

Hope you're having a good week.

Just wanted to check-in and see how it's all going and whether any of my suggestions has helped you. Was there anything you were needing from me to help get this resolved?

Regards,

photo
1

Hi Paul,

I am still working on the issue. I will update on this next week. I still have some errors on this after all the changes. Will update in detail next week.

Thanks,

Nikhilesh

photo
1

Hi Nikhilesh,

No problems. Thanks for the update.

Cheers,

Paul

photo
1

Hi Nikhilesh,

Hope you're having a good week.

Just wanted to check-in and see how it's all going. Was there anything you were needing from me to help get this resolved?

Regards,

photo
1

Hi Paul,

I have checked and updated the setup with the edits that you have suggested. I have a good progress over the issue. Yet I am still remaining to check and test the results. I will update the status in early next week after final confirmation and tests.

Thanks,

Nikhilesh

photo
1

Hi Nikhilesh,

This sounds very promising and glad to hear it has progressed well. Yes please let me know how it goes.

Regards,

Paul

photo
1

Hi Nikhilesh,

Just touching base again on this one and seeing how things have evolved and now working as expected for you. If you could let me know that would be great.

Thanks,

Paul

photo
1

Hi Nikhilesh,

How are things going with this. Do you still need any more help or are you happy for this to be closed off?

Thanks,

Paul

photo
1

Hi Nikhilesh,

I am going to close off this ticket as I have not heard back from you for some time. If you need anything else please get back in touch and I will gladly help.

Thanks,

Paul

Leave a Comment
 
Attach a file