
Research
Two Malicious Rust Crates Impersonate Popular Logger to Steal Wallet Keys
Socket uncovers malicious Rust crates impersonating fast_log to steal Solana and Ethereum wallet keys from source code.
octavia-loxilb-driver
Advanced tools
Software Load Balancer (SLB) OpenStack Octavia provider driver for LoxiLB - bringing eBPF/XDP-powered load balancing to your OpenStack cloud through dynamic VM provisioning.
Choose your deployment scenario:
pip install octavia-loxilb-driver
# Run automated setup to create networks, flavors, and security groups
octavia-loxilb-setup
# Download LoxiLB VM image from releases
wget https://github.com/NLX-SeokHwanKong/octavia-loxilb-driver/releases/download/vm-v1.0.0/loxilb-vm-standard-v1.0.0.qcow2.gz
# Extract and upload to OpenStack with loxilb tag and performance properties
gunzip loxilb-vm-standard-v1.0.0.qcow2.gz
openstack image create --disk-format qcow2 --container-format bare \
--public --tag loxilb \
--property hw_vif_multiqueue_enabled=True \
--property hw_vif_model=virtio \
--property hw_disk_bus=virtio \
--property hw_video_model=virtio \
--property os_distro=ubuntu \
--property os_type=linux \
--file loxilb-vm-standard-v1.0.0.qcow2 loxilb-vm-standard
# Note: hw_vif_multiqueue_enabled=True is critical for LoxiLB performance
# It enables multiple queue networking for high-throughput packet processing
# Install on the controller node where Octavia services run
pip install octavia-loxilb-driver
# Edit /etc/octavia/octavia.conf and add the generated configuration
sudo vim /etc/octavia/octavia.conf
sudo systemctl restart octavia-api octavia-worker octavia-controller
# Step 3: Install in Octavia containers
sudo docker exec octavia_api pip install octavia-loxilb-driver
sudo docker exec octavia_worker pip install octavia-loxilb-driver
sudo docker exec octavia_controller pip install octavia-loxilb-driver
# Step 4: Update kolla configuration
# Add to /etc/kolla/octavia-api/octavia.conf
# Add to /etc/kolla/octavia-worker/octavia.conf
# Add to /etc/kolla/octavia-controller/octavia.conf
# Step 5: Restart containers
sudo docker restart octavia_api octavia_worker octavia_controller
# Step 3: Update helm values to include the driver
# Add to values.yaml:
# conf:
# octavia:
# api_settings:
# enabled_provider_drivers: amphora:amphora,loxilb:loxilb
# Step 4: Upgrade helm release
helm upgrade octavia ./octavia --values=values.yaml
# Step 3: Add to container customization
# Create custom container image with the driver pre-installed
# Or use ExtraConfig to install during deployment
# Install in devstack environment
source ~/devstack/openrc admin admin
pip install octavia-loxilb-driver
# Configure in local.conf for persistent setup
echo "pip install octavia-loxilb-driver" >> ~/devstack/local.sh
# Verify provider is available
openstack loadbalancer provider list
# Create your first LoxiLB load balancer
openstack loadbalancer create --provider loxilb --subnet-id <SUBNET_ID> my-lb
Note: For containerized deployments, you may need to rebuild container images or use persistent volume mounts to ensure the driver survives container restarts.
The LoxiLB Octavia Driver is a Software Load Balancer (SLB) that dynamically provisions LoxiLB VMs for each load balancer:
┌─────────────────┐ ┌──────────────────┐ ┌─────────────────┐
│ Octavia API │───▶│ LoxiLB Driver │───▶│ Dynamic LoxiLB VMs
│ (Per Load Balancer) │ | | |
└─────────────────┘ └──────────────────┘ └─────────────────┘
│
▼
┌──────────────────┐
│ OpenStack VMs │
│ (LoxiLB Instance)│
└──────────────────┘
Key Components:
Choose the right profile for your environment:
Profile | Use Case | Resources | Command |
---|---|---|---|
DevStack | Development & Testing | 1 vCPU, 4GB RAM | octavia-loxilb-setup --deployment-type devstack |
Standard | Standard Production | 2 vCPU, 8GB RAM | octavia-loxilb-setup (default) |
Production | High Performance | 4 vCPU, 16GB RAM | octavia-loxilb-setup --deployment-type production |
For advanced deployments, create a JSON configuration file:
{
"flavor": {
"name": "custom-loxilb-flavor",
"vcpus": 2,
"ram": 4096,
"disk": 30
},
"network": {
"name": "custom-mgmt-network",
"cidr": "172.16.100.0/24"
}
}
Use with: octavia-loxilb-setup --custom-config config.json
Compared to traditional software load balancers:
octavia-mgmt-net
(192.168.1.0/24)# On controller node(s)
sudo pip install octavia-loxilb-driver
octavia-loxilb-setup --deployment-type production
# Configure /etc/octavia/octavia.conf
# Restart systemd services
sudo systemctl restart octavia-api octavia-worker octavia-controller
# Method 1: Install in existing containers (temporary)
for container in octavia_api octavia_worker octavia_controller; do
sudo docker exec $container pip install octavia-loxilb-driver
done
# Method 2: Persistent installation via kolla customization
# Add to /etc/kolla/kolla-build.conf:
# [octavia-base]
# pip_packages = octavia-loxilb-driver
# Rebuild containers:
# kolla-build octavia
# Add to helm values.yaml
images:
tags:
octavia_api: custom-octavia:latest # with driver pre-installed
conf:
octavia:
api_settings:
enabled_provider_drivers: amphora:amphora,loxilb:loxilb
loxilb:
# Generated configuration here
# Install directly
pip install octavia-loxilb-driver
octavia-loxilb-setup --deployment-type devstack
# Or add to local.conf for automated setup
echo "pip_install octavia-loxilb-driver" >> local.conf
# Generate configuration only
pip install octavia-loxilb-driver
octavia-loxilb-setup --output-config /tmp/loxilb-config.conf
# Review and manually integrate configuration
# Restart services based on your deployment method
openstack loadbalancer provider list
# Should show 'loxilb' in the list
octavia-loxilb-health-check --detailed
openstack loadbalancer create --provider loxilb --subnet-id <SUBNET_ID> test-lb
openstack loadbalancer show test-lb
Document | Description |
---|---|
Quick Start Guide | Get running in 10 minutes |
Installation Guide | Comprehensive setup instructions |
Troubleshooting Guide | Common issues and solutions |
VM Images Guide | LoxiLB VM distribution and setup |
Architecture Docs | Technical deep-dive documentation |
Key configuration sections in /etc/octavia/octavia.conf
:
[api_settings]
enabled_provider_drivers = amphora:amphora,loxilb:loxilb
[driver_loxilb]
# LoxiLB VM Configuration
api_timeout = 30
api_retries = 3
debug_api_calls = true
# OpenStack Authentication (REQUIRED for VM provisioning)
auth_url = YOUR_KEYSTONE_AUTH_URL
auth_type = password
username = octavia
password = YOUR_OCTAVIA_PASSWORD
user_domain_name = Default
project_name = service
project_domain_name = Default
# OpenStack resource IDs (populated by setup script)
lb_mgmt_net_id = abc123-def456-ghi789
lb_security_group_id = def456-ghi789-jkl012
lb_flavor_id = ghi789-jkl012-mno345
lb_image_id = jkl012-mno345-pqr678
Provider not available:
# Check configuration
sudo grep -A 10 "enabled_provider_drivers" /etc/octavia/octavia.conf
# Restart services
sudo systemctl restart octavia-api octavia-worker
LoxiLB VM issues:
# Check LoxiLB VM status
openstack server list --name loxilb-vm
# Check VM console logs
openstack console log show <LOXILB_VM_ID>
# Check security groups
openstack security group show loxilb-mgmt-sec-grp
For detailed troubleshooting, see the Troubleshooting Guide.
We welcome contributions! Please see our contributing guidelines:
python -m pytest
git clone https://github.com/NLX-SeokHwanKong/octavia-loxilb-driver.git
cd octavia-loxilb-driver
pip install -e .
python -m pytest octavia_loxilb_driver/tests/unit/ -v
octavia-loxilb-health-check
The LoxiLB Octavia Driver is designed for production use with:
This project is licensed under the Apache License 2.0 - see the LICENSE file for details.
# Install the driver
pip install octavia-loxilb-driver
# Setup OpenStack resources
octavia-loxilb-setup
# Download VM image and configure Octavia (see Quick Start above)
Transform your OpenStack load balancing with the power of eBPF/XDP!
Questions? Check out our documentation or open an issue.
Made with ❤️ by the LoxiLB and OpenStack communities
FAQs
LoxiLB provider driver for OpenStack Octavia Load Balancer as a Service
We found that octavia-loxilb-driver demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Socket uncovers malicious Rust crates impersonating fast_log to steal Solana and Ethereum wallet keys from source code.
Research
A malicious package uses a QR code as steganography in an innovative technique.
Research
/Security News
Socket identified 80 fake candidates targeting engineering roles, including suspected North Korean operators, exposing the new reality of hiring as a security function.