设为首页 收藏本站
查看: 385|回复: 0

[经验分享] manila newton源码安装

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2016-12-14 08:27:30 | 显示全部楼层 |阅读模式
一、准备环境
1、预安装软件
1
2
yum insall epel-release -y
yum install python-virtualenv git screen -y



2、编辑/etc/pip.conf
1
2
3
4
[global]
index-url = http://mirrors.aliyun.com/pypi/simple/
[install]
trusted-host=mirrors.aliyun.com



3、创建用户
1
2
3
4
useradd -m m
cat /etc/sudoers.d/m
Defaults:m !requiretty
m ALL=(ALL) NOPASSWD:ALL



4、初始环境

1
2
3
4
5
6
7
8
su - m
virtualenv ven_m
source ven_m/bin/activate
pip install pip --upgrade

# 同步数据库时会提供缺少模块pymysql,python-memcached
pip install pymysql
pip install python-memcached




5、创建数据库

1
2
3
mysql -hmariadb_host -uroot -p
create database manila;
GRANT ALL PRIVILEGES ON manila.* TO 'manila'@'%' IDENTIFIED BY '123456';



6、创建manila的user,endpoint
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# user
openstack user create --password 123456 manila
openstack role add --project service --user manila admin

# service
openstack service create --name manila \
  --description "OpenStack Shared File Systems" share
openstack service create --name manilav2 \
  --description "OpenStack Shared File Systems" sharev2

# endpoint
openstack endpoint create --region RegionOne \
  share public http://192.168.1.200:8786/v1/%\(tenant_id\)s
openstack endpoint create --region RegionOne \
  share internal http://192.168.1.200:8786/v1/%\(tenant_id\)s
openstack endpoint create --region RegionOne \
  share admin http://192.168.1.200:8786/v1/%\(tenant_id\)s

openstack endpoint create --region RegionOne \
  sharev2 public http://192.168.1.200:8786/v2/%\(tenant_id\)s
openstack endpoint create --region RegionOne \
  sharev2 internal http://192.168.1.200:8786/v2/%\(tenant_id\)s
openstack endpoint create --region RegionOne \
  sharev2 admin http://192.168.1.200:8786/v2/%\(tenant_id\)s



7、下载并安装manila

1
2
3
4
5
git clone https://github.com/openstack/manila.git
cd manila
git checkout stable/newton
pip install -r requirements.txt
python setup.py install



8、准备配置文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
mkdir -p ~/log/manila
mkdir -p /etc/manila
mkdir -p ~/var/lib/manila/tmp

cp -r %git_dir%/manila/etc/manila/{api-paste.ini,policy.json,rootwrap.conf,rootwrap.d/} \
    /etc/manila/

# 生成manila.conf
pip install tox
yum install postgresql-devel
tox -e genconfig
yum remove postgresql-devel -y && yum autoremove -y
cp %git_dir%/etc/manila/manila.conf.sample /etc/manila/manila.conf

# 默认生成的配置的文件
sed /^#/d /etc/manila/manila.conf  | sed /^$/d
[DEFAULT]
[cinder]
[cors]
[cors.subdomain]
[database]
[keystone_authtoken]
[matchmaker_redis]
[neutron]
[nova]
[oslo_concurrency]
[oslo_messaging_amqp]
[oslo_messaging_notifications]
[oslo_messaging_rabbit]
[oslo_messaging_zmq]
[oslo_middleware]
[oslo_policy]



二、配置manila控制节点

1、编辑/etc/manila/manila.conf

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
[DEFAULT]
transport_url = rabbit://openstack:RABBIT_PASS@192.168.1.200

default_share_type = default_share_type
share_name_template = share-%s
rootwrap_config = /etc/manila/rootwrap.conf
api_paste_config = /etc/manila/api-paste.ini

auth_strategy = keystone

my_ip = 192.168.1.200

# log_file = manila.log
log_dir = /home/m/log/manila

[keystone_authtoken]
memcached_servers = 192.168.1.200:11211
auth_uri = http://192.168.1.200:5000
auth_url = http://192.168.1.200:35357
auth_type = password
project_domain_id = default
user_domain_id = default
project_name = service
username = manila
password = 123456

[database]
connection = mysql+pymysql://manila:123456@192.168.1.200/manila

[oslo_concurrency]
# lock_path = /var/lock/manila
# lock_path = /var/lib/manila/tmp
lock_path = /home/m/var/lib/manila/tmp



2、同步数据库
1
manila-manage db sync



三、 配置共享节点,非share server 模式
1、安装依赖

1
yum install lvm2 nfs-utils nfs4-acl-tools



2、创建vg
1
2
pvcreate /dev/sda
vgcreate manila-volumes /dev/sda



3、编辑manila-share配置文件
1
2
3
4
5
6
7
8
9
10
11
12
13
cp manila.conf manila-shared.conf
# 编辑 manila-share.conf,在已经配置好的manila.conf上添加下面的配置
[DEFAULT]
...
enabled_share_backends = lvm
enabled_share_protocols = NFS

[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 = 192.168.1.200



4、复制命令

1
sudo cp /home/m/ven_m/bin/manila-rootwrap  /usr/bin/



5、配置nfs

1
2
3
4
5
6
7
8
9
systemctl enable rpcbind
systemctl enable nfs-server

ln -s /usr/lib/systemd/system/nfs-server.service /usr/lib/systemd/system/nfs-kernel-server.service
systemctl daemon-reload
systemctl status nfs-kernel-server

mkdir -p /var/lib/manila
chown m:m  /var/lib/manila



6、 启动servie

1
2
3
4
5
6
7
8
screen -S manila-api manila-api \
   --config-file /etc/manila/manila.conf
  
screen -S manila-scheduler manila-scheduler \
  --config-file /etc/manila/manila.conf
  
screen -S manila-share manila-share \
  --config-file /etc/manila/manila-share.conf



7、使用manila
1
2
3
4
manila type-create default_share_type False

manila create NFS 2 --name share1
manila access-allow cdd7590f-b11a-4bc7-a5c1-78fccc936fe9 ip  192.168.1.16



四、配置共享节点,share server 模式
1、编辑manila-share配置文件,在已经配置好的manila.conf上添加下面的配置
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
[DEFAULT]
...
enabled_share_backends = generic
enabled_share_protocols = NFS

[neutron]
url = http://192.168.1.200:9696
auth_uri = http://192.168.1.200:5000
auth_url = http://192.168.1.200:35357
memcached_servers = 192.168.1.200:11211
auth_type = password
project_domain_name = default
user_domain_name = default
region_name = RegionOne
project_name = service
username = neutron
password = NEUTRON_PASS

[nova]
auth_uri = http://192.168.1.200:5000
auth_url = http://192.168.1.200:35357
memcached_servers = 192.168.1.200:11211
auth_type = password
project_domain_name = default
user_domain_name = default
region_name = RegionOne
project_name = service
username = nova
password = NOVA_PASS

[cinder]
auth_uri = http://192.168.1.200:5000
auth_url = http://192.168.1.200:35357
memcached_servers = 192.168.1.200:11211
auth_type = password
project_domain_name = default
user_domain_name = default
region_name = RegionOne
project_name = service
username = cinder
password = CINDER_PASS


[generic]
share_driver = manila.share.drivers.generic.GenericShareDriver
interface_driver = manila.network.linux.interface.OVSInterfaceDriver
driver_handles_share_servers = True
service_instance_flavor_id = 6
#service_instance_password = manila
service_instance_user = centos
service_image_name = manila-service-image
#service_image_name = centos
share_backend_name = GENERIC

path_to_private_key = /etc/manila/ssh/id_rsa
path_to_public_key = /etc/manila/ssh/id_rsa.pub



2、下载并上传mysql image
1
2
3
4
5
6
7
8
9
wget \


soure admin-rc.sh
glance image-create --name "manila-service-image" \
       --disk-format qcow2  \
       --container-format bare  \
       --file manila-service-image-master.qcow2  \
       --progress



3、生成 ssh key
1
2
3
4
ssh-keygen
mkdir -p /etc/manila/ssh
cp -r .ssh/{id_rsa,id_rsa.pub} /etc/manila/ssh
chmod +r /etc/manila/ssh/id_rsa*



4、启动servie

1
2
3
4
5
6
7
8
screen -S manila-api manila-api \
   --config-file /etc/manila/manila.conf
  
screen -S manila-scheduler manila-scheduler \
  --config-file /etc/manila/manila.conf
  
screen -S manila-share manila-share \
  --config-file /etc/manila/manila-share.conf



5、使用manila
1
2
3
4
5
6
7
8
9
10
11
12
soure admin-rc.sh
manila type-create default_share_type True

soure demo-rc.sh
neutron net-list

manila share-network-create --name demo-share-network1 \
--neutron-net-id PRIVATE_NETWORK_ID \
--neutron-subnet-id PRIVATE_NETWORK_SUBNET_ID

manila create NFS 1 --name demo-share1 --share-network demo-share-network1
manila access-allow demo-share1 ip INSTANCE_IP







运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-313939-1-1.html 上篇帖子: centos 安装后ssh登入慢 下篇帖子: CentOS6.6(单用户模式)重设root密码
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表