How to get the Farm List with ZAPI v1

Posted by Zevenet | 13 October, 2015 | Technical

Hi Zen Masters, today we bring an example about how to use our Zen Load Balancer API! This article presents the use of this API to get a farm list with the name, profile and status parameters of all created farms.

Zen Load Balancer API (ZAPI)

This ZAPI allows you to use the powerful Zen Load Balancer without the graphical user interface (GUI) through several commands using curl (a command line tool for getting or sending files using URL syntax).

If you want to use this API, go to ‘Users’ section (in Zen GUI) and enable zapi user.

Once zapi user is enabled, it’s necessary to set a key (custom or random key) and a password. These parameters are required to use the ZAPI.

For the following example, these parameters will be used:

Key: CiEuYlS4GtfSq3yrknv0YMnA7j5fhm4piVZh49yt5JcjQ0aDyxImz2Y7DAUhstce5
Password: admin
Zen Load Balancer IP: 192.168.101.25
Zen Web Port: 444

How to get the farm list with ZAPI

In the first place we have to open a terminal where the commands will be introduced. Then let’s get the farm list with a GET request:

curl --tlsv1 -k -X GET -H 'Content-Type: text/json' -H "ZAPI_KEY: CiEuYlS4GtfSq3yrknv0YMnA7j5fhm4piVZh49yt5JcjQ0aDyxImz2Y7DAUhstce5" -u zapi:admin  https://192.168.101.25:444/zapi/v1/zapi.cgi/farms

HTTP verb: GET, used for getting parameters of farms, backends, services…
JSON parameters: None.
URI parameters: None.

Once this command is launched, the following response will be shown:

{
    "description" : "List farms",
    "params" : [
        {
            "farmname" : "FarmTCP",
            "profile" : "tcp",
            "status" : "up"
        },
        {
            "farmname" : "FarmHTTP",
            "profile" : "http",
            "status" : "up"
        },
        {
            "farmname" : "FarmDATALINK",
            "profile" : "datalink",
            "status" : "up"
        },
        {
            "farmname" : "FarmL4",
            "profile" : "l4xnat",
            "status" : "down"
        },
        {
            "farmname" : "FarmGSLB",
            "profile" : "gslb",
            "status" : "up"
        }
    ]
}

As we can see, there are 5 farms in our virtual machine with Zen Load Balancer. All these farms are ‘up’ except the L4xNAT farm called FarmL4.

ZAPI Advantages

This ZAPI is a powerful tool that allows you to use and configure Zen Load Balancer thought curl. What are the advantages of getting this tool?

  • Use of an external software through ZAPI. For example a monitoring software like Nagios.
  • Load balancing automation with ZAPI to view, create, delete and modify resources in the load balancer.
  • It’s included in your Zen Load Balancer Enterprise Edition 4.0 (or higher) version!

There is a detailed documentation about all the possible commands and examples of a success execution here
https://www.zevenet.com/zapidoc/.

We hope you enjoy the ZAPI experience!

SHARE ON:

Related Blogs

Posted by zenweb | 18 April 2017
Netdev Conf is a community-driven conference dedicated to technical Linux networking where the most important and relevant contributors, maintainers and open source supported companies meet together to present the brand…
Posted by zenweb | 17 October 2016
These two pages were the beginning of Load Balancing with nftables project, developed between Pablo Neira (Netfilter Core Team) and Laura García (Zen Load Balancer Team) and presented at the last Netdev 1.2…
Posted by zenweb | 10 October 2016
In this post we're going to highlight the most important topics and discussions addressed in Netdev 1.2 in Tokyo the last 5th-7th of October to create the networking evolution in…