Download as pdf or txt
Download as pdf or txt
You are on page 1of 8

OpenStack Pike

2017/09/03

Travaux de synthèse : Taylor VOLI

Volet 12
2

OpenStack Pike : Configure Manila#1 (Control Node)


2017/09/07

Install OpenStack Shared File System (Manila).


This example is based on the emvironment like follows.
------------+---------------------------+--------------------------
-+------------
| |
|
eth0|10.0.0.30 eth0|10.0.0.50
eth0|10.0.0.51
+-----------+-----------+ +-----------+-----------+ +----------
-+-----------+
| [ Control Node ] | | [ Storage Node ] | | [
Compute Node ] |
| | | | |
|
| MariaDB RabbitMQ | | Open vSwitch | |
Libvirt |
| Memcached httpd | | L2 Agent | | Nova
Compute |
| Keystone Glance | | L3 Agent | | Open
vSwitch |
| Nova API | | Metadata Agent | | L2
Agent |
| Neutron Server | | Manila Share | |
|
| Metadata Agent | | | |
|
| Manila API | | | |
|
+-----------------------+ +-----------------------+ +----------
-------------+

[1] Add a user or endpoint for Manila on Keystone Server.


# add manila user

[root@dlp ~(keystone)]#
openstack user create --domain default --project service --password servicepassword manila

+---------------------+----------------------------------+
| Field | Value |
+---------------------+----------------------------------+
| default_project_id | c9ab6e9feb4d444c8f637fcfe7a67305 |
| domain_id | default |
| enabled | True |
| id | 5fbb222565e64da18521e36c431381c5 |
| name | manila |
| options | {} |
| password_expires_at | None |
+---------------------+----------------------------------+

2
3

# add manila user to admin role

[root@dlp ~(keystone)]#
openstack role add --project service --user manila admin
# add service entry for manila

[root@dlp ~(keystone)]#
openstack service create --name manila --description "OpenStack Shared Filesystem" share

+-------------+----------------------------------+
| Field | Value |
+-------------+----------------------------------+
| description | OpenStack Shared Filesystem |
| enabled | True |
| id | 35c02ef749c2440686cb9af77b8cbb8d |
| name | manila |
| type | share |
+-------------+----------------------------------+

[root@dlp ~(keystone)]#
openstack service create --name manilav2 --description "OpenStack Shared Filesystem V2"
sharev2

+-------------+----------------------------------+
| Field | Value |
+-------------+----------------------------------+
| description | OpenStack Shared Filesystem V2 |
| enabled | True |
| id | 047e55325aa3480ba36b37cfcc7c2d35 |
| name | manilav2 |
| type | sharev2 |
+-------------+----------------------------------+

# define IP of a node for installing Manila API

[root@dlp ~(keystone)]#
export controller=10.0.0.30
# add endpoint for manila (public)

[root@dlp ~(keystone)]#
openstack endpoint create --region RegionOne share public
http://$controller:8786/v1/%\(tenant_id\)s

+--------------+----------------------------------------+
| Field | Value |
+--------------+----------------------------------------+
| enabled | True |
| id | 8216460efae54ce1abf02990dc5052ab |
| interface | public |
| region | RegionOne |

3
4

| region_id | RegionOne |
| service_id | 35c02ef749c2440686cb9af77b8cbb8d |
| service_name | manila |
| service_type | share |
| url | http://10.0.0.30:8786/v1/%(tenant_id)s |
+--------------+----------------------------------------+

# add endpoint for manila (internal)

[root@dlp ~(keystone)]#
openstack endpoint create --region RegionOne share internal
http://$controller:8786/v1/%\(tenant_id\)s

+--------------+----------------------------------------+
| Field | Value |
+--------------+----------------------------------------+
| enabled | True |
| id | 3300e0b86e974bf988f13afef1517dd3 |
| interface | internal |
| region | RegionOne |
| region_id | RegionOne |
| service_id | 35c02ef749c2440686cb9af77b8cbb8d |
| service_name | manila |
| service_type | share |
| url | http://10.0.0.30:8786/v1/%(tenant_id)s |
+--------------+----------------------------------------+

# add endpoint for manila (admin)

[root@dlp ~(keystone)]#
openstack endpoint create --region RegionOne share admin
http://$controller:8786/v1/%\(tenant_id\)s

+--------------+----------------------------------------+
| Field | Value |
+--------------+----------------------------------------+
| enabled | True |
| id | 1f61e5ef1e3c4c81a32596f28aa190c6 |
| interface | admin |
| region | RegionOne |
| region_id | RegionOne |
| service_id | 35c02ef749c2440686cb9af77b8cbb8d |
| service_name | manila |
| service_type | share |
| url | http://10.0.0.30:8786/v1/%(tenant_id)s |
+--------------+----------------------------------------+

# add endpoint for manila (v2 public)

[root@dlp ~(keystone)]#
openstack endpoint create --region RegionOne sharev2 public
http://$controller:8786/v2/%\(tenant_id\)s

4
5

+--------------+----------------------------------------+
| Field | Value |
+--------------+----------------------------------------+
| enabled | True |
| id | 7488a8b4bea34531a5c30f1806691f72 |
| interface | public |
| region | RegionOne |
| region_id | RegionOne |
| service_id | 047e55325aa3480ba36b37cfcc7c2d35 |
| service_name | manilav2 |
| service_type | sharev2 |
| url | http://10.0.0.30:8786/v2/%(tenant_id)s |
+--------------+----------------------------------------+

# add endpoint for manila (v2 internal)

[root@dlp ~(keystone)]#
openstack endpoint create --region RegionOne sharev2 internal
http://$controller:8786/v2/%\(tenant_id\)s

+--------------+----------------------------------------+
| Field | Value |
+--------------+----------------------------------------+
| enabled | True |
| id | c6211d5da741405eab987dc5dc60a51f |
| interface | internal |
| region | RegionOne |
| region_id | RegionOne |
| service_id | 047e55325aa3480ba36b37cfcc7c2d35 |
| service_name | manilav2 |
| service_type | sharev2 |
| url | http://10.0.0.30:8786/v2/%(tenant_id)s |
+--------------+----------------------------------------+

# add endpoint for manila (v2 admin)

[root@dlp ~(keystone)]#
openstack endpoint create --region RegionOne sharev2 admin
http://$controller:8786/v2/%\(tenant_id\)s

+--------------+----------------------------------------+
| Field | Value |
+--------------+----------------------------------------+
| enabled | True |
| id | a6f046e0da1148c181664137590efeca |
| interface | admin |
| region | RegionOne |
| region_id | RegionOne |
| service_id | 047e55325aa3480ba36b37cfcc7c2d35 |
| service_name | manilav2 |
| service_type | sharev2 |

5
6

| url | http://10.0.0.30:8786/v2/%(tenant_id)s |
+--------------+----------------------------------------+
[2] Create a database for Manila to MariaDB.
[root@dlp ~(keystone)]#
mysql -u root -p

Enter password:
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 52
Server version: 10.1.20-MariaDB MariaDB Server

Copyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]>
create database manila;

Query OK, 1 row affected (0.00 sec)


MariaDB [(none)]>
grant all privileges on manila.* to manila@'localhost' identified by 'password';

Query OK, 0 rows affected (0.00 sec)


MariaDB [(none)]>
grant all privileges on manila.* to manila@'%' identified by 'password';

Query OK, 0 rows affected (0.00 sec)


MariaDB [(none)]>
flush privileges;

Query OK, 0 rows affected (0.00 sec)


MariaDB [(none)]>
exit

Bye
[3] Install Manila services.
# install from Pike, EPEL

[root@dlp ~(keystone)]#
yum --enablerepo=centos-openstack-pike,epel -y install openstack-manila python-manilaclient
[4] Configure Manila.
[root@dlp ~(keystone)]#
mv /etc/manila/manila.conf /etc/manila/manila.conf.org

[root@dlp ~(keystone)]#
vi /etc/manila/manila.conf

6
7

# create new

[DEFAULT]
# own Ip address
my_ip = 10.0.0.30
rootwrap_config = /etc/manila/rootwrap.conf
api_paste_config = /etc/manila/api-paste.ini
state_path = /var/lib/manila
auth_strategy = keystone
default_share_type = default_share_type
share_name_template = share-%s
# RabbitMQ connection info
transport_url = rabbit://openstack:password@10.0.0.30

# MariaDB connection info


[database]
connection = mysql+pymysql://manila:password@10.0.0.30/manila

# Keystone auth info


[keystone_authtoken]
auth_uri = http://10.0.0.30:5000
auth_url = http://10.0.0.30:35357
memcached_servers = 10.0.0.30:11211
auth_type = password
project_domain_name = default
user_domain_name = default
project_name = service
username = manila
password = servicepassword

[oslo_concurrency]
lock_path = $state_path/tmp

[root@dlp ~(keystone)]#
chmod 640 /etc/manila/manila.conf

[root@dlp ~(keystone)]#
chgrp manila /etc/manila/manila.conf

[root@dlp ~(keystone)]#
su -s /bin/bash manila -c "manila-manage db sync"

[root@dlp ~(keystone)]#
systemctl start openstack-manila-api openstack-manila-scheduler

[root@dlp ~(keystone)]#
systemctl enable openstack-manila-api openstack-manila-scheduler

# show status

[root@dlp ~(keystone)]#

7
8

manila service-list

+----+------------------+---------------+------+---------+-------+------------------
----------+
| Id | Binary | Host | Zone | Status | State | Updated_at
|
+----+------------------+---------------+------+---------+-------+------------------
----------+
| 1 | manila-scheduler | dlp.srv.world | nova | enabled | up | 2017-09-
08T02:30:02.000000 |
+----+------------------+---------------+------+---------+-------+------------------
----------+
[5] If Firewalld is running, allow service ports.
[root@dlp ~(keystone)]#
firewall-cmd --add-port=8786/tcp --permanent

success
[root@dlp ~(keystone)]#
firewall-cmd --reload

success

You might also like