Skip to content

Instantly share code, notes, and snippets.

@ebalduf
Created August 12, 2015 20:39
Show Gist options
  • Save ebalduf/cf9cb52aad30b3e6f036 to your computer and use it in GitHub Desktop.
Save ebalduf/cf9cb52aad30b3e6f036 to your computer and use it in GitHub Desktop.
Laptop VM local.conf for single interface
[[local|localrc]]
GIT_BASE=${GIT_BASE:-https://github.com}
DEST=/opt/stack/new
SERVICE_DIR=/tmp/OpenStack/services
ACTIVE_TIMEOUT=90
BOOT_TIMEOUT=90
ASSOCIATE_TIMEOUT=60
TERMINATE_TIMEOUT=60
MYSQL_PASSWORD=secret
DATABASE_PASSWORD=secret
RABBIT_PASSWORD=secret
ADMIN_PASSWORD=secret
SERVICE_PASSWORD=secret
SERVICE_TOKEN=111222333445
SWIFT_HASH=1234123412341234
ROOTSLEEP=0
ERROR_ON_CLONE=False
LIBVIRT_TYPE=qemu
KEYSTONE_BRANCH=stable/kilo
KEYSTONECLIENT_BRANCH=stable/kilo
GLANCE_BRANCH=stable/kilo
NOVA_BRANCH=stable/kilo
NOVACLIENT_BRANCH=stable/kilo
CINDER_BRANCH=stable/kilo
HORIZON_BRANCH=stable/kilo
NEUTRON_BRANCH=stable/kilo
SWIFT_BRANCH=2.3.0
CEILOMETER_BRANCH=stable/kilo
IRONIC_BRANCH=stable/kilo
HEAT_BRANCH=stable/kilo
NEUTRON_BRANCH=stable/kilo
NEUTRON_FWAAS_BRANCH=stable/kilo
NEUTRON_LBAAS_BRANCH=stable/kilo
NEUTRON_VPNAAS_BRANCH=stable/kilo
REQUIREMENTS_BRANCH=stable/kilo
TEMPEST_BRANCH=stable/kilo
ENABLED_SERVICES=rabbit,mysql,key
ENABLED_SERVICES+=,n-api,n-crt,n-obj,n-cpu,n-cond,n-sch,n-novnc,n-cauth
ENABLED_SERVICES+=,neutron,q-svc,q-agt,q-dhcp,q-l3,q-meta,q-lbaas
#ENABLED_SERVICES+=,n-net
#ENABLED_SERVICES+=,s-proxy,s-object,s-container,s-account
ENABLED_SERVICES+=,g-api,g-reg
ENABLED_SERVICES+=,cinder,c-api,c-vol,c-sch,
# c-bak
#ENABLED_SERVICES+=,heat,h-api,h-api-cfn,h-api-cw,h-eng
#ENABLED_SERVICES+=,trove,tr-api,tr-tmgr,tr-cond
ENABLED_SERVICES+=,horizon
ENABLED_SERVICES+=,sysstat,dstat,pidstat
#ENABLED_SERVICES+=,ceilometer-acompute,ceilometer-acentral,ceilometer-collector,ceilometer-api
#ENABLED_SERVICES+=,ceilometer-alarm-notifier,ceilometer-alarm-evaluator,ceilometer-anotification
# Networking Stuff
Q_USE_SECGROUP=True
Q_L3_ENABLED=True
PUBLIC_INTERFACE=eth0
Q_USE_PROVIDERNET_FOR_PUBLIC=True
OVS_PHYSICAL_BRIDGE=br-ex
PUBLIC_BRIDGE=br-ex
OVS_BRIDGE_MAPPINGS=public:br-ex
PROVIDER_NETWORK_TYPE=flat
#NEUTRON_CREATE_INITIAL_NETWORKS=False
SYSLOG=False
LOGDIR=$DEST/screen-logs
LOGFILE=$DEST/devstacklog.txt
LOGDAYS=2
VERBOSE=True
SWIFT_REPLICAS=1
VOLUME_BACKING_FILE_SIZE=8G
USE_SCREEN=True
IMAGE_URLS+=",http://download.cirros-cloud.net/0.3.2/cirros-0.3.2-x86_64-disk.img,http://download.cirros-cloud.net/0.3.2/cirros-0.3.2-x86_64-uec.tar.gz"
#!/usr/bin/env bash
BASEIP=10.5.1.
MYID=$(hostname -s | cut -d '-' -f 2)
MYIP=${BASEIP}$(expr $MYID + 100)
START=$(expr 109 + \( $MYID \* 8 \) )
END=$(expr $START + 7)
FLOATING_IP_START=${BASEIP}${START}
FLOATING_IP_END=${BASEIP}${END}
NAMESERVER=8.8.8.8
EXTERNAL_NETWORK_CIDR=${BASEIP}0/24
EXTERNAL_NETWORK_GATEWAY=${BASEIP}254
TENANT_NETWORK_CIDR=192.168.1.0/24
TENANT_NETWORK_GATEWAY=192.168.1.254
# Keep track of the devstack directory
TOP_DIR=$(cd $(dirname "$0") && pwd)
# Import common functions
source $TOP_DIR/functions
# Use openrc + stackrc + localrc for settings
source $TOP_DIR/stackrc
# Destination path for installation ``DEST``
DEST=${DEST:-/opt/stack}
## Determine the Public ethernet port name (THIS ONLY WORKS ON FEDORA)
PUBLIC_PORT=`ip a | awk -F': ' '/^3\: /{print $2}'`
##### Add open firewall ports here
sudo iptables -I INPUT 1 -p tcp --dport 80 -j ACCEPT
sudo iptables -I INPUT 1 -p tcp --dport 6080:6082 -j ACCEPT
### Attach the interface to the external bridge
sudo ovs-vsctl add-port br-ex $PUBLIC_PORT
sudo ip link set dev $PUBLIC_PORT up
if is_service_enabled nova; then
# Get OpenStack admin auth
source $TOP_DIR/openrc admin admin
neutron net-create ext-net --router:external --provider:physical_network external --provider:network_type flat
neutron subnet-create ext-net $EXTERNAL_NETWORK_CIDR --name ext-subnet --allocation-pool start=$FLOATING_IP_START,end=$FLOATING_IP_END --disable-dhcp --gateway $EXTERNAL_NETWORK_GATEWAY
neutron subnet-update --dns-nameserver $NAMESERVER ext-subnet
# Get OpenStack demo auth
source $TOP_DIR/openrc demo demo
neutron net-create demo-net
neutron subnet-create demo-net $TENANT_NETWORK_CIDR --name demo-subnet --gateway $TENANT_NETWORK_GATEWAY
neutron subnet-update --dns-nameserver $NAMESERVER demo-subnet
neutron router-create demo-router
neutron router-interface-add demo-router demo-subnet
neutron router-gateway-set demo-router ext-net
# Import keys from the current user into the default OpenStack user
# Add first keypair found in localhost:$HOME/.ssh
for i in $HOME/.ssh/id_rsa.pub $HOME/.ssh/id_dsa.pub; do
if [[ -r $i ]]; then
nova keypair-add --pub_key=$i `hostname`
break
fi
done
# Add tcp/22 and icmp to default security group
nova secgroup-add-rule default tcp 22 22 0.0.0.0/0
nova secgroup-add-rule default icmp -1 -1 0.0.0.0/0
fi
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment