Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

Introduction

  • provide API for developers to interact with Alteon structures in Python environment via REST Backend
  • access to Alteon Management & Configuration functions
  • abstract configuration model to alteon elements via consistent Declarative-style Configurators

in this model a consistent object structures are exposed to user per configurator type. each configurator handle base commands over a device (READ, READ_ALL, DELETE, UPDATE & DEPLOY) the package handles the binding & translation between alteon device to abstract objects it works both ways: abstract <-> alteon structure, in other words it translate abstract to alteon configuration and read from alteon into abstract type. multi choices (enums) are consumed dynamically from the beans package. developer can choose to work with string_value/int/enums directly

the SDK is requires Python >3.6

Minimum Supported Alteon Versions: 31.0.10.0, 32.2.2.0

device direct API, Configurators and Management are available via the Alteon client module:

from radware.alteon.client import AlteonClient
from radware.alteon.beans.SlbNewCfgEnhRealServerTable import *

alteon_client_params = dict(
        validate_certs=False,
        user='admin',
        password='admin',
        https_port=443,
        server='172.16.1.1',
        timeout=15,
)
client = AlteonClient(**alteon_client_params)

# read bean from device:
bean = SlbNewCfgEnhRealServerTable()
bean.Index = 'real_1'
print(client.api.device.read(bean))

# work with Configurators:
client.api.mgmt.config.commit()
print(client.api.mgmt.info.software)
print(client.api.conf.type.dns_responders.read_all())
server_params = ServerParameters()
server_params.index = 'real1'
server_params.ip_address = '3.3.3.3'
client.api.conf.execute('deploy', server_params, dry_run=True, write_on_change=True, get_diff=True)

another way of use is directly via the desire Configurator:

from radware.alteon.sdk.configurators.server import *

connection = AlteonConnection(**alteon_client_params)
server_configurator = ServerConfigurator(connection)

server_params = ServerParameters()
server_params.index = 'real1'
server_params.ip_address = '3.3.3.3'
server_params.availability = 5
server_params.server_ports = [56, 78]
server_params.weight = 5
server_params.server_type = EnumSlbRealServerType.remote_server
server_params.state = EnumSlbRealServerState.enabled
server_configurator.deploy(server_params)

OR the configuration manager:

from radware.sdk.configurator import DeviceConfigurator, DeviceConfigurationManager
from radware.alteon.sdk.configurators.ssl_key import SSLKeyConfigurator

ssl_key_configurator = SSLKeyConfigurator(**alteon_client_params)
cfg_mng = DeviceConfigurationManager()
result = cfg_mng.execute(ssl_key_configurator, DeviceConfigurator.READ_ALL, None, passphrase=passphrase)
print(result.content_translate)

further details & doc will be added later

Installation

pip install alteon-sdk

Design Principles

  • 46 configurators: some indexed & others are a summary
  • management functions for facts collection, carry out operation tasks and manage device configuration
  • Alteon direct device API
  • Alteon client: aggregate all configuration & management modules along with device API
  • Bean package complied from MIB (auto generated)
  • Each configurator is standalone and can be initiate for an AdcConnection
  • Abstraction <-> beans automatic attributes binding + specific processing when needed
  • Abstraction <-> Alteon configuration bi-direction translation (deploy from abstract , read alteon config into abstract)
  • Define dry_run delete procedure for "special configurators": relevant for when there is no delete procedure, mostly for global configuration
  • Identify duplicate entries within a structure

Authors

Alteon SDK was created by Leon Meguira

Copyright

Copyright 2019 Radware LTD

License

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and

Metadata

Release files for alteon-sdk 0.6b67

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for alteon-sdk 0.6b67
File Size Uploaded
alteon-sdk-0.6b67.tar.gz 297.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for alteon-sdk 0.6b67
File Interpreter ABI Platform
alteon_sdk-0.6b67-py2.py3-none-any.whl Python 3, Python 2 none any Details

Total release size: 1.0 MB

Release files / alteon-sdk-0.6b67.tar.gz

Download URL alteon-sdk-0.6b67.tar.gz
Size 297.1 kB
Tags Source
SHA-256 checksum
How to use checksums
0becbfe60351d9d62bbfaeb212f66809f327656084e8dcb93b077d222be297f8
BLAKE2b-256 checksum
How to use checksums
cfc831738ff8d5e8bf183213e77d8c1c92e1365dd9383a8a31fd4b62082b34ff
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/50.1.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.6.13

Release files / alteon_sdk-0.6b67-py2.py3-none-any.whl

Download URL alteon_sdk-0.6b67-py2.py3-none-any.whl
Size 710.4 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
c57827af817ecee62b06dd4cb572d8faca3cb5ed976b1d2e69718d223a75cd24
BLAKE2b-256 checksum
How to use checksums
5c8582126230c6e908cdb64244b60140109447b223ee4eccaed0f32af093673d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/50.1.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.6.13

Release history Release notifications | RSS feed

This release

0.6b67 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page