Skip to content

erj826/WEaaS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

WEaaS                                                                    

Watch Endpoints as a Service project for Red Hat. WEaaS is for use with Kuryr and OpenStack.

WEaaS (a.k.a stop polling all the things) is offered as a more efficient alternative to monitor endpoints by tapping directly into Neutron's messaging queue. Currently, the Kuryr Controller polls the Neutron using the OpenStack API to watch for networking events. By communicating directly with RabbitMQ, OpenStack's messaging service, WEaaS is able to return endpoint information faster than polling.

Intended client: Kuryr Controller

Supported Endpoints

  • Neutron:
    • port

More info here.

  • LBaaS v2:
    • loadbalancer
    • listener
    • pool
    • member

More info here.

Usage

Setting up Authentication:

Request a token using the Keystone api.

Admin:

To start up the gunicorn app server, run:

gunicorn -b 127.0.0.1:5000 --threads 8 watchEndpoints:app

More info on gunicorn args here.

Client:

USing the API with Keystone authentication (for example):

curl http://127.0.0.1:5000/$some_endpoint -H "X-Auth-Token: $A_VALID_TOKEN"

Notes:

     Client connections and server may be terminated by a keyboard interrupt


WEaaS Developer Guide

Project Architecture: