Giter Site home page Giter Site logo

ovirt-lldp-labeler's Introduction

oVirt Link Layer Discovery Protocol labeler

oVirt LLDP labeler is a service which periodically checks LLDP information for configured clusters. Based on this information the labeler tries to find VLAN tag and add label to the corresponding interface. This is standalone service which can run on any machine with python oVirt SDK installed.

CLI

oVirt LLDP labeler has built in CLI tool. For one time run you can just use python ovirt_lldp_labeler_cli.py. This tool is located in /usr/share/ovirt-lldp-labeler/.

Print help with -h or --help switch.

Service

The oVirt LLDP labeler service consists of two parts. First is ovirt-lldp-labeler.service which runs only one time and then dies. Second part is ovirt-lldp-labeler.timer, this timer service when started will run periodically ovirt-lldp-labeler.service. Please note that correct function only the timer has to be in active state.

To enable the timer service run systemctl enable ovirt-lldp-labeler.timer and systemctl start ovirt-lldp-labeler.timer. One time only run can be done by either CLI tool or by running systemctl start ovirt-lldp-labeler.

Configuration

The configuration of the labeler are splitted in to two config files. /etc/ovirt-lldp-labeler/conf.d/ovirt-lldp-credentials.conf and /etc/ovirt-lldp-labeler/conf.d/ovirt-lldp-labeler.conf.

The configuration files consists of the key value pairs, structured by sections.

ovirt-lldp-credentials.conf

This file has permissions 0600 which should prevent any security problems.

Section [credentials]

username

oVirt engine administrator username
default: admin@internal

password

oVirt engine administrator password
default: 123456

ovirt-lldp-labeler.conf

Section [labeler]

clusters

List of clusters separated by , in this list you can use wildcard e.g. Cluster*, which will run labeler through all clusters starting with word Cluster.
default: Def*

api_url

Full api url for the oVirt engine
default: https://ovirt-engine/ovirt-engine/api

ca_file

Path to the custom certificate file. Leave empty if you don’t want to use custom certificate.
default:

auto_bonding

Boolean value. If set to true the labeler will do auto bonding.
default: true

auto_labeling

Boolean value. If set to true the labeler will do auto labeling.
default: true

ovirt-lldp-labeler.timer

Systemd file used to configure the periodical timer. It is usually located in /usr/lib/systemd/system/.

Section [Timer]

OnUnitActiveSec

Time delay for every update
default: 1h

Building

For building the project into rpm clone the project git clone https://github.com/almusil/ovirt-lldp-labeler.git.

Please note that for update to the latest labeler you need to run git checkout master and git pull inside the cloned directory. Then run again the steps below. In case you are missing the local master branch run git checkout -t origin/master -b master.

And simply run make rpm. Please note that for build to work you need to install rpm-build package.

The rpm package should be located in ~/rpmbuild/RPMS/noarch.

And finally for installation/update simply run yum install $PATH_TO_RPM

ovirt-lldp-labeler's People

Contributors

almusil avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.