Difference between revisions of "Manila/ManilaWithGREtunnels"
(Created page with "== Manila with GRE Tunnels == Some notes on setting up Manila with GRE tunnels on a multi-node Devstack ==== VM setup ==== These notes have been tested on Ubuntu 14.04 (Trus...") |
(→Compute Node) |
||
(4 intermediate revisions by the same user not shown) | |||
Line 3: | Line 3: | ||
Some notes on setting up Manila with GRE tunnels on a multi-node Devstack | Some notes on setting up Manila with GRE tunnels on a multi-node Devstack | ||
− | + | === VM setup === | |
These notes have been tested on Ubuntu 14.04 (Trusty) | These notes have been tested on Ubuntu 14.04 (Trusty) | ||
− | + | ==== All nodes ==== | |
− | + | '''login''' | |
− | + | ||
+ | '''switch to root''' | ||
+ | |||
+ | <code> | ||
sudo su | sudo su | ||
− | + | ||
+ | </code> | ||
+ | '''update''' | ||
+ | |||
+ | <code> | ||
apt-get update | apt-get update | ||
− | + | </code> | |
+ | '''add stack user''' | ||
+ | |||
+ | <code> | ||
groupadd stack | groupadd stack | ||
− | + | ||
useradd -g stack -s /bin/bash -d /opt/stack -m stack | useradd -g stack -s /bin/bash -d /opt/stack -m stack | ||
echo "stack ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers | echo "stack ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers | ||
− | + | </code> | |
+ | '''Download devstack''' | ||
+ | |||
+ | <code> | ||
apt-get install git | apt-get install git | ||
su stack | su stack | ||
+ | |||
cd | cd | ||
+ | |||
git clone https://git.openstack.org/openstack-dev/devstack.git | git clone https://git.openstack.org/openstack-dev/devstack.git | ||
cd devstack | cd devstack | ||
+ | |||
sed -i 's/git:/https:/g' stackrc | sed -i 's/git:/https:/g' stackrc | ||
− | + | ||
− | + | </code> | |
+ | ==== Controller Node ==== | ||
+ | '''setup manila''' | ||
+ | |||
+ | <code> | ||
git clone https://github.com/stackforge/manila.git | git clone https://github.com/stackforge/manila.git | ||
+ | |||
cp manila/contrib/devstack/lib/manila devstack/lib/ | cp manila/contrib/devstack/lib/manila devstack/lib/ | ||
+ | |||
cd; cp manila/contrib/devstack/extras.d/70-manila.sh devstack/extras.d/ | cd; cp manila/contrib/devstack/extras.d/70-manila.sh devstack/extras.d/ | ||
+ | </code> | ||
+ | |||
+ | '''edit local.conf''' | ||
+ | |||
+ | '''Add this controller node IP for <controller_IP> below''' | ||
− | |||
<code> | <code> | ||
− | [[local|localrc]] | + | <nowiki>[[local|localrc]]</nowiki> |
+ | |||
− | |||
DATABASE_PASSWORD=password | DATABASE_PASSWORD=password | ||
+ | |||
ADMIN_PASSWORD=password | ADMIN_PASSWORD=password | ||
+ | |||
SERVICE_PASSWORD=password | SERVICE_PASSWORD=password | ||
+ | |||
SERVICE_TOKEN=password | SERVICE_TOKEN=password | ||
+ | |||
RABBIT_PASSWORD=password | RABBIT_PASSWORD=password | ||
− | + | ||
ENABLED_SERVICES=rabbit,mysql,key | ENABLED_SERVICES=rabbit,mysql,key | ||
+ | |||
ENABLED_SERVICES+=,n-api,n-crt,n-obj,n-cond,n-sch,n-novnc,n-cauth | ENABLED_SERVICES+=,n-api,n-crt,n-obj,n-cond,n-sch,n-novnc,n-cauth | ||
+ | |||
ENABLED_SERVICES+=,neutron,q-svc,q-agt,q-dhcp,q-l3,q-meta | ENABLED_SERVICES+=,neutron,q-svc,q-agt,q-dhcp,q-l3,q-meta | ||
+ | |||
ENABLED_SERVICES+=,g-api,g-reg | ENABLED_SERVICES+=,g-api,g-reg | ||
+ | |||
ENABLED_SERVICES+=,cinder,c-api,c-vol,c-sch,c-bak | ENABLED_SERVICES+=,cinder,c-api,c-vol,c-sch,c-bak | ||
+ | |||
ENABLED_SERVICES+=,horizon | ENABLED_SERVICES+=,horizon | ||
ENABLED_SERVICES+=,manila,m-api,m-sch,m-shr | ENABLED_SERVICES+=,manila,m-api,m-sch,m-shr | ||
+ | |||
HORIZON_REPO=https://github.com/NetApp/horizon.git | HORIZON_REPO=https://github.com/NetApp/horizon.git | ||
+ | |||
HORIZON_BRANCH=manila | HORIZON_BRANCH=manila | ||
disable_service n-net | disable_service n-net | ||
− | + | ||
MULTI_HOST=1 | MULTI_HOST=1 | ||
− | |||
HOST_IP=<controller_ip> | HOST_IP=<controller_ip> | ||
− | |||
Q_PLUGIN=ml2 | Q_PLUGIN=ml2 | ||
+ | |||
ENABLE_TENANT_TUNNELS=True | ENABLE_TENANT_TUNNELS=True | ||
+ | |||
TENANT_TUNNEL_RANGES=1:1000 | TENANT_TUNNEL_RANGES=1:1000 | ||
+ | |||
ML2_VLAN_RANGES=physnet1:100:200 | ML2_VLAN_RANGES=physnet1:100:200 | ||
+ | |||
PHYSICAL_NETWORK=physnet1 | PHYSICAL_NETWORK=physnet1 | ||
+ | |||
OVS_PHYSICAL_BRIDGE=br-eth0 | OVS_PHYSICAL_BRIDGE=br-eth0 | ||
+ | |||
Q_ML2_PLUGIN_MECHANISM_DRIVERS=openvswitch | Q_ML2_PLUGIN_MECHANISM_DRIVERS=openvswitch | ||
+ | |||
Q_ML2_PLUGIN_TYPE_DRIVERS=gre | Q_ML2_PLUGIN_TYPE_DRIVERS=gre | ||
+ | |||
Q_ML2_TENANT_NETWORK_TYPE=gre | Q_ML2_TENANT_NETWORK_TYPE=gre | ||
+ | |||
SHARE_BACKING_FILE_SIZE=8G | SHARE_BACKING_FILE_SIZE=8G | ||
− | |||
− | |||
IMAGE_URLS+=",http://cdn.download.cirros-cloud.net/0.3.2/cirros-0.3.2-x86_64-disk.img" | IMAGE_URLS+=",http://cdn.download.cirros-cloud.net/0.3.2/cirros-0.3.2-x86_64-disk.img" | ||
− | + | ||
+ | LOGFILE=/opt/stack/logs/stack.sh.log | ||
+ | |||
+ | VERBOSE=True | ||
+ | |||
+ | LOG_COLOR=True | ||
+ | |||
+ | SCREEN_LOGDIR=/opt/stack/logs | ||
+ | |||
+ | </code> | ||
+ | '''stack it!''' | ||
+ | <code> | ||
+ | ./stack.sh | ||
+ | |||
+ | </code> | ||
+ | '''fix mtu size''' | ||
+ | |||
+ | '''add to /etc/neutron/dhcp_agent.ini''' | ||
+ | |||
+ | <code> | ||
+ | echo "dnsmasq_config_file=/etc/neutron/dnsmasq-neutron.conf " >> /etc/neutron/dhcp_agent.ini | ||
+ | |||
+ | </code> | ||
+ | '''add mtu size''' | ||
+ | |||
+ | <code> | ||
+ | echo "dhcp-option-force=26,1400" >> /etc/neutron/dnsmasq-neutron.conf | ||
+ | |||
+ | </code> | ||
+ | '''restart DHCP agent in screen for q-dhcp''' | ||
+ | |||
+ | cntrl + c | ||
+ | |||
+ | up arrow to perfomr last command + Enter | ||
+ | |||
+ | ====Compute Node==== | ||
+ | '''edit local.conf''' | ||
+ | |||
+ | ''''Put controller_IP and this node compute_ip in config below''' | ||
+ | |||
+ | <code> | ||
+ | <nowiki>[[local|localrc]]</nowiki> | ||
+ | |||
+ | DATABASE_PASSWORD=password | ||
+ | |||
+ | ADMIN_PASSWORD=password | ||
+ | |||
+ | SERVICE_PASSWORD=password | ||
+ | |||
+ | SERVICE_TOKEN=password | ||
+ | |||
+ | RABBIT_PASSWORD=password | ||
+ | |||
+ | |||
+ | ENABLED_SERVICES=rabbit | ||
+ | |||
+ | ENABLED_SERVICES+=,n-cpu,n-novnc,n-cauth | ||
+ | |||
+ | ENABLED_SERVICES+=,neutron,q-agt | ||
+ | |||
+ | disable_service n-net | ||
+ | |||
+ | |||
+ | MULTI_HOST=1 | ||
+ | |||
+ | |||
+ | HOST_IP=<compute_ip> | ||
+ | |||
+ | SERVICE_HOST=<controller_ip> | ||
+ | |||
+ | MYSQL_HOST=$SERVICE_HOST | ||
+ | |||
+ | RABBIT_HOST=$SERVICE_HOST | ||
+ | |||
+ | GLANCE_HOSTPORT=$SERVICE_HOST:9292 | ||
+ | |||
+ | Q_HOST=$SERVICE_HOST | ||
+ | |||
+ | DATABASE_TYPE=mysql | ||
+ | |||
+ | |||
+ | Q_PLUGIN=ml2 | ||
+ | |||
+ | ENABLE_TENANT_TUNNELS=True | ||
+ | |||
+ | TENANT_TUNNEL_RANGES=1:1000 | ||
+ | |||
+ | ML2_VLAN_RANGES=physnet1:100:200 | ||
+ | |||
+ | PHYSICAL_NETWORK=physnet1 | ||
+ | |||
+ | OVS_PHYSICAL_BRIDGE=br-eth0 | ||
+ | |||
+ | |||
+ | Q_ML2_PLUGIN_MECHANISM_DRIVERS=openvswitch | ||
+ | |||
+ | Q_ML2_PLUGIN_TYPE_DRIVERS=gre | ||
+ | |||
+ | Q_ML2_TENANT_NETWORK_TYPE=gre | ||
+ | |||
+ | |||
LOGFILE=/opt/stack/logs/stack.sh.log | LOGFILE=/opt/stack/logs/stack.sh.log | ||
+ | |||
VERBOSE=True | VERBOSE=True | ||
+ | |||
LOG_COLOR=True | LOG_COLOR=True | ||
+ | |||
SCREEN_LOGDIR=/opt/stack/logs | SCREEN_LOGDIR=/opt/stack/logs | ||
+ | |||
+ | </code> | ||
+ | |||
+ | '''Stack it!''' | ||
+ | |||
+ | <code> | ||
+ | ./stack.sh | ||
+ | |||
</code> | </code> | ||
+ | |||
+ | ====Additional Compute Nodes==== | ||
+ | '''Additional compute nodes can be added using the same instructions as [[#Compute Node|Compute Node]]''' |
Latest revision as of 21:42, 6 August 2014
Contents
Manila with GRE Tunnels
Some notes on setting up Manila with GRE tunnels on a multi-node Devstack
VM setup
These notes have been tested on Ubuntu 14.04 (Trusty)
All nodes
login
switch to root
sudo su
update
apt-get update
add stack user
groupadd stack
useradd -g stack -s /bin/bash -d /opt/stack -m stack
echo "stack ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers
Download devstack
apt-get install git
su stack
cd
git clone https://git.openstack.org/openstack-dev/devstack.git
cd devstack
sed -i 's/git:/https:/g' stackrc
Controller Node
setup manila
git clone https://github.com/stackforge/manila.git
cp manila/contrib/devstack/lib/manila devstack/lib/
cd; cp manila/contrib/devstack/extras.d/70-manila.sh devstack/extras.d/
edit local.conf
Add this controller node IP for <controller_IP> below
[[local|localrc]]
DATABASE_PASSWORD=password
ADMIN_PASSWORD=password
SERVICE_PASSWORD=password
SERVICE_TOKEN=password
RABBIT_PASSWORD=password
ENABLED_SERVICES=rabbit,mysql,key
ENABLED_SERVICES+=,n-api,n-crt,n-obj,n-cond,n-sch,n-novnc,n-cauth
ENABLED_SERVICES+=,neutron,q-svc,q-agt,q-dhcp,q-l3,q-meta
ENABLED_SERVICES+=,g-api,g-reg
ENABLED_SERVICES+=,cinder,c-api,c-vol,c-sch,c-bak
ENABLED_SERVICES+=,horizon
ENABLED_SERVICES+=,manila,m-api,m-sch,m-shr
HORIZON_REPO=https://github.com/NetApp/horizon.git
HORIZON_BRANCH=manila
disable_service n-net
MULTI_HOST=1
HOST_IP=<controller_ip>
Q_PLUGIN=ml2
ENABLE_TENANT_TUNNELS=True
TENANT_TUNNEL_RANGES=1:1000
ML2_VLAN_RANGES=physnet1:100:200
PHYSICAL_NETWORK=physnet1
OVS_PHYSICAL_BRIDGE=br-eth0
Q_ML2_PLUGIN_MECHANISM_DRIVERS=openvswitch
Q_ML2_PLUGIN_TYPE_DRIVERS=gre
Q_ML2_TENANT_NETWORK_TYPE=gre
SHARE_BACKING_FILE_SIZE=8G
IMAGE_URLS+=",http://cdn.download.cirros-cloud.net/0.3.2/cirros-0.3.2-x86_64-disk.img"
LOGFILE=/opt/stack/logs/stack.sh.log
VERBOSE=True
LOG_COLOR=True
SCREEN_LOGDIR=/opt/stack/logs
stack it!
./stack.sh
fix mtu size
add to /etc/neutron/dhcp_agent.ini
echo "dnsmasq_config_file=/etc/neutron/dnsmasq-neutron.conf " >> /etc/neutron/dhcp_agent.ini
add mtu size
echo "dhcp-option-force=26,1400" >> /etc/neutron/dnsmasq-neutron.conf
restart DHCP agent in screen for q-dhcp
cntrl + c
up arrow to perfomr last command + Enter
Compute Node
edit local.conf
'Put controller_IP and this node compute_ip in config below
[[local|localrc]]
DATABASE_PASSWORD=password
ADMIN_PASSWORD=password
SERVICE_PASSWORD=password
SERVICE_TOKEN=password
RABBIT_PASSWORD=password
ENABLED_SERVICES=rabbit
ENABLED_SERVICES+=,n-cpu,n-novnc,n-cauth
ENABLED_SERVICES+=,neutron,q-agt
disable_service n-net
MULTI_HOST=1
HOST_IP=<compute_ip>
SERVICE_HOST=<controller_ip>
MYSQL_HOST=$SERVICE_HOST
RABBIT_HOST=$SERVICE_HOST
GLANCE_HOSTPORT=$SERVICE_HOST:9292
Q_HOST=$SERVICE_HOST
DATABASE_TYPE=mysql
Q_PLUGIN=ml2
ENABLE_TENANT_TUNNELS=True
TENANT_TUNNEL_RANGES=1:1000
ML2_VLAN_RANGES=physnet1:100:200
PHYSICAL_NETWORK=physnet1
OVS_PHYSICAL_BRIDGE=br-eth0
Q_ML2_PLUGIN_MECHANISM_DRIVERS=openvswitch
Q_ML2_PLUGIN_TYPE_DRIVERS=gre
Q_ML2_TENANT_NETWORK_TYPE=gre
LOGFILE=/opt/stack/logs/stack.sh.log
VERBOSE=True
LOG_COLOR=True
SCREEN_LOGDIR=/opt/stack/logs
Stack it!
./stack.sh
Additional Compute Nodes
Additional compute nodes can be added using the same instructions as Compute Node