Jump to: navigation, search

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 ====
+
=== VM setup ===
 
These notes have been tested on Ubuntu 14.04 (Trusty)
 
These notes have been tested on Ubuntu 14.04 (Trusty)
===== All nodes =====
+
==== All nodes ====
#login
+
'''login'''
#switch to root
+
 
 +
'''switch to root'''
 +
 
 +
<code>
 
sudo su
 
sudo su
#update
+
 
 +
</code>
 +
'''update'''
 +
 
 +
<code>
 
apt-get update
 
apt-get update
  
#add stack user
+
</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
  
#Download devstack
+
</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
===== Controller Node =====
+
 
# setup manila
+
</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'''
  
'''#edit local.conf'''
 
 
<code>
 
<code>
[[local|localrc]]
+
<nowiki>[[local|localrc]]</nowiki>
 +
 
  
# Credentials
 
 
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
  
# Services
+
 
 
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
+
 
 
MULTI_HOST=1
 
MULTI_HOST=1
  
# Services IP
 
 
HOST_IP=<controller_ip>
 
HOST_IP=<controller_ip>
  
# Neutron OVS (gre)
 
 
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
  
  
# Images
 
# Use this image when creating test instances
 
 
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"
  
  
# Enable Logging
+
 
 +
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

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