Files
spinifex/docs/vpc-networking
2026-03-16 22:47:08 +11:00
..
2026-03-16 22:47:08 +11:00

title, description, category, tags, resources
title description category tags resources
VPC Networking Create and manage Virtual Private Clouds with subnets, DHCP, and Geneve overlay networking. Environments
vpc
networking
ovn
title url
Hive Repository https://github.com/mulgadc/hive
title url
OVN Architecture https://www.ovn.org/en/

VPC Networking

Create and manage Virtual Private Clouds with subnets, DHCP, and Geneve overlay networking.

Table of Contents


Overview

Every EC2 instance runs inside a VPC with an isolated virtual network. Hive uses OVN (Open Virtual Network) to provide the networking layer.

How it works:

  • VPC becomes an OVN logical router
  • Subnet becomes an OVN logical switch with DHCP
  • Each instance gets an OVN port with automatic IP assignment
  • Cross-host traffic uses Geneve tunnels (UDP 6081)

Instructions

Create VPC

aws ec2 create-vpc --cidr-block 10.200.0.0/16
export HIVE_VPC="vpc-XXX"

Create Subnet

aws ec2 create-subnet --vpc-id $HIVE_VPC --cidr-block 10.200.1.0/24
export HIVE_SUBNET="subnet-XXX"

Verify

aws ec2 describe-vpcs
aws ec2 describe-subnets
sudo ovn-nbctl lr-list
sudo ovn-nbctl ls-list

Troubleshooting

VPC creation fails

Ensure OVN services are running and the vpcd daemon is active:

sudo systemctl is-active ovn-controller

Check the vpcd logs for errors:

cat ~/hive/logs/vpcd.log

Instances cannot reach each other

This typically means Geneve tunnels are not established between hosts. Verify tunnel configuration:

sudo ovs-vsctl show | grep -i geneve

Ensure UDP port 6081 is open between all hosts:

sudo ss -ulnp | grep 6081

From inside a VM, check that the private IP was assigned via DHCP:

ip addr show