I want to achieve two scenarios but confused about what should I choose "In-line load balancer" or "One-arm load balancer ".
1st - Load balancing between two web servers when a user from outside accessing the webpage.
2nd- Load balancing between two database servers when an application server wants to communicate with DB servers.
Where should I place the load balancer for both the above mentioned cases?
Below is the topology
Inline means that the LB should be the default gateway of your VMs, so all traffic goes through the LB even if it is not related to load-balanced traffic. This is a necessary topology when you have to preserve client IP address that reaches the server pool, because one-armed mode needs to SNAT the client IP to make return traffic go through the LB. With the LB as default gateway you also lose distributed routing.
My suggestion would be to use one-arm and position one LB VIP on Web LS and the other on DB LS. If you need the client IP information on your web servers you have the option to use X-Forwared-For which inserts the client IP in the HTTP header.