How to manage KEMP Virtual Loadmaster for Azure using Python

2 min read

Manage Loadmaster Azure - wikiazure

This article provides a brief overview of the KEMP Python API SDK and answers some common questions, will review how to manage KEMP Virtual Loadmaster for Azure using Python. You can refer to other articles in this library for more detailed information on the different topics. Also, will assume we are working on Windows platform.

KEMP Technologies offers a Python SDK which provides a way for users to automate the manual, long-running, error-prone, and frequently repeated tasks that are commonly performed in a cloud environment within the KEMP Virtual Loadmaster for Azure. It saves time and increases the reliability of regular administrative tasks and even schedules them to be automatically performed at regular intervals.

Pre-requisites

Automating processes with KEMP Python API SDK

The KEMP Python API SDK gives you a set of tasks that perform some automated process for your Virtual Loadmaster. It may be a simple process such as starting a virtual loadmaster and creating a log entry, or you may have to perform a complex process across multiple resources or even multiple environments such as cloud and on premise environments.

For example, you might have an existing manual process for getting a log of your Real Servers Healtcheck or simply get the list of your current virtual services configured in your KEMP Loadmaster.

Install KEMP Python API

See Getting started with KEMP Python SDK. For information about installing the latest version of the API go to the github repository:

Steps:

  1. Install the Python Kemp Package – this article assumes you already installed python
  2. Install pylint using Visual Studio Code
  3. Install travis-sphinx from console
  4. Install sphinx rth theme from console


 Notes:

Please be sure to setup this configuration on your Virtual Loadmaster for Azure:

 - Certificates & Security -> Remote Access-> Enable API
 - Certificates & Security -> Remote Access-> Allow Multiple Interface Access
 - Certificates & Security -> Admin WUI Access -> Enable session management
 - Certificates & Security -> Admin WUI Access -> Unchecked "Require Basic Authentication"

 Output example:

This example shows the list of all virtual services running on our Virtual Loadmaster for Azure:

Manage Loadmaster Azure - wikiazure

Get your Loadmaster current version:

All the commands in the article require the credentials of the loadmaster. Replace the value of top variables with the your loadmaster credentials. Create the variables.

# -*- coding: UTF-8 -*- 
import requests
import json
import sys
import time

from python_kemptech_api import LoadMaster as loadmaster 

# Assign static IP on Azure (DNS Name optional)
loadmaster_ip = "192.168.1.20" # Your LoadMaster administrative IP 
# Note: To improve security, avoid using plaintext login and passwords and consider using environmental variables instead.  
loadmaster_login = "bal" # Your LoadMaster user login
loadmaster_password = "" # Your LoadMaster user password 
loadmaster_port = "443" # By default this is 443.  
kemp_id= "drendon@kemptechnologies.com"
kemp_id_password = ""
lm = loadmaster(loadmaster_ip, loadmaster_login, loadmaster_password, loadmaster_port)  


# Specify the Virtual Service and Real Server IDs here:
virtual_service_id = 0
real_server_id = 0
#get Loadmaster version
print("Your Loadmaster Version is:")
print(lm['version'])

List all virtual services configured on your Loadmaster:

List all the current virtual services configured on your Loadmaster and export them into a json file:

virtual_services = lm.get_virtual_services() 

virtual_service_list = []
for x in virtual_services: 
    print(str(x))
    virtual_service_list.append(str(x))
     
# Print Virtual service list
print(virtual_service_list)

with open('virtual_service_list.json', 'w') as outfile:
    json.dump(virtual_service_list, outfile) 

Shutdown your Loadmaster:

The KEMP API also allows you to automate some easy common functions, such as reboot and shutdown the loadmaster:

try:
   lm.shutdown() 
except ValueError:
    lm.reboot()

Next steps

  • Learn how to use KEMP API using Linux / MacOS: https://kemptechnologies.com/blog/getting-started-kemp-python-sdk/
  • Take advantage of the current examples available at the github repository: https://github.com/KEMPtechnologies/python-kemptech-api/tree/master/examples

Leave a Reply

Your email address will not be published. Required fields are marked *