内容简介:Ceph实验室:第二课:集成ceph与openstack
本课程介绍如何配置ceph作为Nova的后端存储,用来存放vm的临时磁盘。
集成ceph与Openstack Nova
安装ceph客户端
集成ceph与Openstack的第一步就是要在openstack的节点上安装ceph客户端(一些ceph命令行 工具 和连接ceph集群需要的libraries)。
$ ceph-deploy install --cli --no-adjust-repos openstack $ ceph-deploy config push openstack
创建pool
给虚拟机的ephemeral disks创建一个ceph pool。
$ ceph osd pool create compute 256 pool 'compute' created
给nova客户端创建一个ceph用户和密钥
ceph get-or-create 会产生一个用户名和一个秘钥,并将它们保存在ceph monitor上。下面命令给nova客户端创建一个用户和秘钥,并赋予合适的权限。
[root@ceph ceph]# ceph auth get-or-create client.compute mon "allow r" osd "allow class-read object_prefix rbd_children, allow rwx pool=volumes, allow rwx pool=compute, allow rx pool=images" [client.compute] key = AQBLHcJYm1XxBBAA75foQeQ72bT3GsGVDzBZcg==
分发秘钥给nova客户端,并修改秘钥文件的group和权限
客户端需要ceph秘钥去访问集群,ceph创建了一个默认用户client.admin,他有足够的权限去访问ceph集群。不能把这个用户共享给其他客户端。更好的做法是用分开的秘钥,创建一个新的ceph用户去访问特定的pool。
[root@ceph ceph]# ceph auth get-key client.compute | ssh openstack tee /etc/ceph/ceph.client.compute.keyring AQBLHcJYm1XxBBAA75foQeQ72bT3GsGVDzBZcg== [root@openstack]# chgrp nova /etc/ceph/ceph.client.compute.keyring [root@openstack]# chmod 0640 /etc/ceph/ceph.client.compute.keyring
建一个临时秘钥,用来配置libvirt
[root@ceph ceph]# ceph auth get-key client.compute | ssh openstack tee /etc/ceph/client.compute AQBLHcJYm1XxBBAA75foQeQ72bT3GsGVDzBZcg==
把密钥配置在计算节点的ceph.conf文件
compute节点,其进程需要nova的密钥环文件。
vi /etc/ceph/ceph.conf [client.compute] keyring = /etc/ceph/ceph.client.compute.keyring
集成ceph和libvirt
libvirt进程需要有访问ceph集群的权限。所以需要把nova客户端的密钥存进libvirt。在计算节点上把nova客户端密钥加进libvirt 。
生成一个uuid
[root@openstack]# uuidgen c1261b3e-eb93-49bc-aa13-557df63a6347
创建libvirt secret文件,设置uuid
<secret ephemeral="no" private="no">
<uuid>c1261b3e-eb93-49bc-aa13-557df63a6347</uuid>
<usage type="ceph">
<name>client.compute secret</name>
</usage>
</secret>
[root@openstack]# virsh secret-define --file ceph.xml
Secret c1261b3e-eb93-49bc-aa13-557df63a6347 created
把nova密钥加进libvirt
[root@openstack]# virsh secret-set-value --secret c1261b3e-eb93-49bc-aa13-557df63a6347 --base64 $(cat client.compute.key)
Secret value set
[root@openstack]# virsh secret-list
UUID Usage
---------------------------------------------------
c1261b3e-eb93-49bc-aa13-557df63a6347 ceph client.compute secret
配置nova
修改/etc/nova/nova.conf文件里的libvirt部分,增加ceph的认证信息。libvirt会使用该用户来和Ceph集群进行连接和认证。
[libvirt] images_rbd_pool=compute images_type=rbd rbd_secret_uuid=c1261b3e-eb93-49bc-aa13-557df63a6347 rbd_user=compute
重启nova compute服务
[root@openstack]#systemctl restart openstack-nova-compute
测试
新建一个vm,然后检查VM’s ephemeral disk是否健在ceph上。
[root@ceph ceph]# rbd -p compute ls 24e6ca7f-05c8-411b-b23d-6e5ee1c809f9_disk [root@ceph ceph]# rbd -p compute info 24e6ca7f-05c8-411b-b23d-6e5ee1c809f9_disk rbd image '24e6ca7f-05c8-411b-b23d-6e5ee1c809f9_disk': size 1024 MB in 256 objects order 22 (4096 kB objects)
参考文档
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- Ceph实验室:第二课:集成ceph与openstack
- Ceph实验室:第四课:Ceph监控
- Ceph实验室:第四课:Ceph监控
- 2018Android实验室CV培训总结
- 复旦NLP实验室NLP上手教程
- Ceph实验室:第三课:Ceph服务管理
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Data Structures and Algorithm Analysis in Java
Mark A. Weiss / Pearson / 2006-3-3 / USD 143.00
As the speed and power of computers increases, so does the need for effective programming and algorithm analysis. By approaching these skills in tandem, Mark Allen Weiss teaches readers to develop wel......一起来看看 《Data Structures and Algorithm Analysis in Java》 这本书的介绍吧!