test:)
LBWeb
Introduction
LBWeb is the new interface to loadbalancing management. It offloads all the the previous operations from the user to automation scripts, so that you don't have to worry about requesting DNS aliases and modifying Quattor scripts - it's all done for you. Also, it guarantees the sanity of the configuration values.
Prerequisites
- A modern web browser (IE8+, Firefox and Chrome were tested)
- The nodes which will be part of the cluster must exist on the network
UI Help
Cluster name
This field let's allows you to choose the name of your cluster. Only the hostname part is necessary. It will alert you if the name you have chosen is already taken (by an existing cluster or a different machine on the CERN network).
Cluster chooser (Edit/Delete only)
This list shows all the clusters already registered with the load balancing service. If you're editing a cluster, selecting one from the list will allow you to edit that cluster.
External
This setting lets you choose if the cluster should be accesible only from withing the CERN network (No), or be visible on the Internet (Yes).
Nodes
This element lets you add and remove nodes from the cluster. Simply enter the hostnames of the desired nodes, and press the -> button to add it to the list of nodes. If you want to remove some from the list, select then and press the <- button. You can select more than one node. The application checks the validity of each potential node at runtime by checking if their hostname is registered on the CERN network.
Best Hosts (Optional)
The load balancer periodically checks the load on each of the nodes, and chooses the best ones to be used. This setting decides how many of the best ones will be assigned to the alias at any given time. This value is automatically derived from the number of nodes in the cluster, but for advanced users or big clusters (more than 20 nodes) you may want to set this value yourself. Please note that this value is recalculated each time you modify the list of nodes, so please set this value last.
Code
This application is running on 2 distinct elements:
One is drupal which provides the UI elements and layout, some scripting, and email functionality. Adding to this is the LBCluster.js + 3 LB* javascript files and 2 supporting PHP scripts which get the data from CBDWeb, handle the app logic, do realtime form validation and some UI effects. The javascript is tied to drupal with a subtheme. It has 3 custom layouts for each form, which allows you to hook-in the custom JS, do positioning of the elements, and hook in any additional JS/CSS if necessary. The subtheme also contains the custom supporting JS and PHP scripts needed for the app.
The second one is [to be filled when done]
XML
The application loads the data about the state of the loadbalancing configuration from a XML file generated by CBDWeb. It's structure is as follows:
--
PiotrMaksymiuk - 12-Jan-2011
- nodes.png: