Skip to content

Instantly share code, notes, and snippets.

@odyssey4me
Created October 31, 2017 09:08
Show Gist options
  • Save odyssey4me/355b96e7485d3d6908852b56800d8d76 to your computer and use it in GitHub Desktop.
Save odyssey4me/355b96e7485d3d6908852b56800d8d76 to your computer and use it in GitHub Desktop.
OSA Single bridge implementation
# Physical interface, could be bond. This only needs to be set once
auto eth0
iface eth0 inet manual
bond-master bond0
bond-primary eth0
auto eth1
iface eth1 inet manual
bond-master bond0
auto bond0
iface bond0 inet manual
mtu 9000
bond-slaves none
bond-mode 4
bond-miimon 100
bond-downdelay 200
bond-updelay 200
auto br-mgmt
iface br-mgmt inet static
### flat veth
pre-up ip link add flat-veth1 mtu 9000 type veth peer name flat-veth2 mtu 9000 || true # Create veth pair
pre-up ip link set flat-veth1 up # Set the veth UP
pre-up ip link set flat-veth2 up # Set the veth UP
post-down ip link del flat-veth1 || true # Delete veth pair on DOWN
### flat veth
bridge_stp off
bridge_waitport 10
bridge_fd 0
bridge_ports bond0 flat-veth1
offload-sg off
address 172.16.24.52/22
gateway 172.16.24.2
iface br-mgmt inet static
address 172.16.25.52/22
---
cidr_networks:
container: "172.16.26.0/24"
used_ips:
- "172.16.26.1,172.16.26.2"
global_overrides:
internal_lb_vip_address: "172.16.26.1"
external_lb_vip_address: "172.16.26.2"
tunnel_bridge: "br-vxlan"
management_bridge: "br-mgmt"
provider_networks:
- network:
container_bridge: "br-mgmt"
container_type: "veth"
container_interface: "eth1"
container_netmask: "255.255.252.0"
ip_from_q: "container"
type: "vlan"
net_name: "vlan"
range: "10:10"
group_binds:
- all_containers
- hosts
is_container_address: true
is_ssh_address: true
swift:
part_power: 8
storage_network: 'br-mgmt'
replication_network: 'br-mgmt'
drives:
- name: disk1
- name: disk2
- name: disk3
mount_point: /srv
storage_policies:
- policy:
name: default
index: 0
default: True
###
### Anchors
###
cinder_block: &cinder_block
cinder1:
ip: 172.16.24.51
container_vars:
cinder_backends:
limit_container_types: cinder_volume
lvm:
volume_group: cinder-volumes
volume_driver: cinder.volume.drivers.lvm.LVMVolumeDriver
volume_backend_name: LVM_iSCSI
iscsi_ip_address: 172.16.24.51
compute_block: &compute_block
compute1:
ip: 172.16.24.52
compute2:
ip: 172.16.24.53
infra_block: &infra_block
compute1:
ip: 172.16.24.52
loadbalancer_block: &loadbalancer_block
lab-lb01:
ip: 172.16.26.1
log_block: &log_block
swift1:
ip: 172.16.24.50
swift_block: &swift_block
swift1:
ip: 172.16.24.50
###
### Infrastructure
###
# galera, memcache, rabbitmq, utility
shared-infra_hosts: *infra_block
# repository (apt cache, python packages, etc)
repo-infra_hosts: *infra_block
# rsyslog server
log_hosts: *log_block
# load balancer
haproxy_hosts: *loadbalancer_block
# Legacy infra hosts
os-infra_hosts: *infra_block
###
### OpenStack
###
# keystone
identity_hosts: *infra_block
# cinder api services
storage-infra_hosts: *infra_block
# cinder storage host (LVM-backed)
storage_hosts: *cinder_block
# glance
image_hosts: *infra_block
# nova api, conductor, etc services
compute-infra_hosts: *infra_block
# nova hypervisors
compute_hosts: *compute_block
# heat
orchestration_hosts: *infra_block
# horizon
dashboard_hosts: *infra_block
# neutron server, agents (L3, etc)
network_hosts: *infra_block
# ceilometer (telemetry data collection)
metering-infra_hosts: *infra_block
# aodh (telemetry alarm service)
metering-alarm_hosts: *infra_block
# gnocchi (telemetry metrics storage)
metrics_hosts: *infra_block
# ceilometer compute agent (telemetry data collection)
metering-compute_hosts: *compute_block
# swift storage hosts
swift_hosts: *swift_block
# swift infra hosts
swift-proxy_hosts: *infra_block
security_host_group: &physical_hosts
swift1:
ip: 172.16.24.50
cinder1:
ip: 172.16.24.51
compute1:
ip: 172.16.24.52
compute2:
ip: 172.16.24.53
openstack_host_group: *physical_hosts
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment