OpenStack Queens : Manila 利用方法#12018/03/15 |
OpenStack Shared File System(Manila)による共有の設定です。
当例では以下のような環境を例に Manila をインストールして設定しています。
例として、Storage ノードのローカルブロックデバイスを
LVM バックエンドの共有ストレージとして設定し、インスタンスから利用できるようにします。
よって、前提として Storage ノードに空きブロックデバイスがある必要があります。
------------+---------------------------+---------------------------+------------ | | | eth0|10.0.0.30 eth0|10.0.0.50 eth0|10.0.0.51 +-----------+-----------+ +-----------+-----------+ +-----------+-----------+ | [ Control Node ] | | [ Storage Node ] | | [ Compute Node ] | | | | | | | | MariaDB RabbitMQ | | | | Libvirt | | Memcached httpd | | L2 Agent | | Nova Compute | | Keystone Glance | | L3 Agent | | L2 Agent | | Nova API | | Metadata Agent | | | | Neutron Server | | Manila Share | | | | Metadata Agent | | | | | | Manila API | | | | | +-----------------------+ +-----------------------+ +-----------------------+ |
[1] | Storage ノードの設定です。 |
root@storage:~#
apt-get -y install lvm2 nfs-kernel-server # 空きデバイスに Manila用ボリューム作成 root@storage:~# pvcreate /dev/sdb1 Physical volume "/dev/sdb1" successfully created root@storage:~# vgcreate manila-volumes /dev/sdb1 Volume group "manila-volumes" successfully created
root@storage:~#
vi /etc/manila/manila.conf # [DEFAULT] セクション内の任意の場所へ追記
enabled_share_backends = lvm
# 最終行へ追記 [lvm] share_backend_name = LVM share_driver = manila.share.drivers.lvm.LVMShareDriver driver_handles_share_servers = False lvm_share_volume_group = manila-volumes lvm_share_export_ip = 10.0.0.50 systemctl restart manila-share nfs-server root@storage:~# systemctl enable manila-share nfs-server
|
[2] | デフォルトの共有タイプを作成します。作業は、どこでもよいですが、当例ではコントロールノード上で行います。 |
root@dlp ~(keystone)# manila type-create default_share_type False +----------------------+--------------------------------------+ | Property | Value | +----------------------+--------------------------------------+ | required_extra_specs | driver_handles_share_servers : False | | Name | default_share_type | | Visibility | public | | is_default | - | | ID | 7fd97aa8-2159-42f6-bf97-dec9998f758c | | optional_extra_specs | | | Description | None | +----------------------+--------------------------------------+root@dlp ~(keystone)# manila type-list +-----------+--------------------+------------+------------+----------------+-------------+-------------+ | ID | Name | visibility | is_default | required_ex | optional_.. | Description | +-----------+--------------------+------------+------------+----------------+-------------+-------------+ | 7fd97aa8- | default_share_type | public | YES | driver_hand... | | None | +-----------+--------------------+------------+------------+----------------+-------------+-------------+ |
[3] | 共有を作成して自身が所有するインスタンスで利用したい任意のユーザーで、NFS 共有を作成します。 |
ubuntu@dlp ~(keystone)$ manila create NFS 10 --name share01 +---------------------------------------+--------------------------------------+ | Property | Value | +---------------------------------------+--------------------------------------+ | status | creating | | share_type_name | default_share_type | | description | None | | availability_zone | None | | share_network_id | None | | share_group_id | None | | revert_to_snapshot_support | False | | access_rules_status | active | | snapshot_id | None | | create_share_from_snapshot_support | False | | is_public | False | | task_state | None | | snapshot_support | False | | id | c0b01f7f-f8e1-4cec-865c-0acadd69f741 | | size | 10 | | source_share_group_snapshot_member_id | None | | user_id | b7b1b4b96b714e458690dd893fbbe5f5 | | name | share01 | | share_type | 7fd97aa8-2159-42f6-bf97-dec9998f758c | | has_replicas | False | | replication_type | None | | created_at | 2018-03-16T04:58:45.000000 | | share_proto | NFS | | mount_snapshot_support | False | | project_id | 142ba5a5d91c4148a4caa9227e05b504 | | metadata | {} | +---------------------------------------+--------------------------------------+ # Status が available になれば作成完了 ubuntu@dlp ~(keystone)$ manila list +-----------+---------+------+-------------+-----------+-----------+--------------------+------+---------+ | ID | Name | Size | Share Proto | Status | Is Public | Share Type Name | Host | Avai.. | +-----------+---------+------+-------------+-----------+-----------+--------------------+------+---------+ | c0b01f7f- | share01 | 10 | NFS | available | False | default_share_type | | nova | +-----------+---------+------+-------------+-----------+-----------+--------------------+------+---------+ |
[4] | 以上で、共有を作成したユーザーが所有するインスタンスから Manila の共有サービスを利用することができます。 |
ubuntu@dlp ~(keystone)$ openstack server list +-----------+-------------+---------+-----------------------------------+------------+----------+ | ID | Name | Status | Networks | Image | Flavor | +-----------+-------------+---------+-----------------------------------+------------+----------+ | fffbf3f6- | Ubuntu_1604 | SHUTOFF | int_net=192.168.100.8, 10.0.0.208 | Ubuntu1604 | m1.small | +-----------+-------------+---------+-----------------------------------+------------+----------+ # アクセス許可の設定 (IP はインスタンスの IPアドレス または インスタンスが属するサブネットを指定) ubuntu@dlp ~(keystone)$ manila access-allow share01 ip 10.0.0.0/24 --access-level rw +--------------+--------------------------------------+ | Property | Value | +--------------+--------------------------------------+ | access_key | None | | share_id | c0b01f7f-f8e1-4cec-865c-0acadd69f741 | | created_at | 2018-03-16T05:01:53.000000 | | updated_at | None | | access_type | ip | | access_to | 10.0.0.0/24 | | access_level | rw | | state | queued_to_apply | | id | d24b506e-ed25-4eaa-b3a1-36dee6688b73 | +--------------+--------------------------------------+ # State が active であれば問題なし ubuntu@dlp ~(keystone)$ manila access-list share01 +-----------+-------------+-------------+--------------+--------+------------+-----------------+------------+ | id | access_type | access_to | access_level | state | access_key | created_at | updated_at | +-----------+-------------+-------------+--------------+--------+------------+-----------------+------------+ | d24b506e- | ip | 10.0.0.0/24 | rw | active | None | 2018-03-16T0... | None | +-----------+-------------+-------------+--------------+--------+------------+-----------------+------------+
ubuntu@dlp ~(keystone)$
openstack server start Ubuntu_1604 # アクセス Path 確認 ubuntu@dlp ~(keystone)$ manila show share01 | grep path | cut -d'|' -f3 path = 10.0.0.50:/var/lib/manila/mnt/share-f115e00a-9d9c-47fb-8cca-fd0d19100d9b ssh ubuntu@10.0.0.208 Welcome to Ubuntu 16.04.4 LTS (GNU/Linux 4.4.0-116-generic x86_64) * Documentation: https://help.ubuntu.com * Management: https://landscape.canonical.com * Support: https://ubuntu.com/advantage 0 packages can be updated. 0 updates are security updates. Last login: Thu Mar 15 11:19:07 2018 # Manila 共有ストレージをマウント ubuntu@ubuntu-1604:~$ sudo mount -t nfs 10.0.0.50:/var/lib/manila/mnt/share-f115e00a-9d9c-47fb-8cca-fd0d19100d9b /mnt ubuntu@ubuntu-1604:~$ df -hT Filesystem Size Used Avail Use% Mounted on udev 981M 0 981M 0% /dev tmpfs 201M 3.2M 197M 2% /run /dev/mapper/ubuntu--vg-root 8.3G 1.6G 6.4G 20% / tmpfs 1001M 0 1001M 0% /dev/shm tmpfs 5.0M 0 5.0M 0% /run/lock tmpfs 1001M 0 1001M 0% /sys/fs/cgroup /dev/vda1 472M 58M 390M 13% /boot tmpfs 201M 0 201M 0% /run/user/1000 10.0.0.50:/var/lib/manila/mnt/share-f115e00a-... 9.8G 23M 9.2G 1% /mnt |
Sponsored Link |