https://ervikrant06.wordpress.com/2015/10/24/how-to-configure-ceph-as-nova-compute-backend/

在Ceph的admin-node上进行如下操作:

1. ceph osd pool create vms 128
2. ceph auth get-or-create client.nova mon 'allow r' osd 'allow class-read object_prefix rbd_children, allow rwx pool=vms, allow rx pool=images'

在OpenStack的node上进行如下操作:

1. 将admin-node上的ceph.conf拷贝到controller的/etc/ceph目录下 (在结合glance时已经执行了这一步)
2. 在admin-node上运行ceph auth get-key client.nova, 然后在compute上保存为/etc/ceph/ceph.client.nova.keyring, 同时将返回的结果追加到compute的ceph.conf中
3. chown nova:nova /etc/ceph/ceph.client.nova.keyring
4. 通过uuidgen得到一个随机的uuid, 然后在compute上创建/etc/ceph/secret.xml, 将下列内容添加到这个文件:
<secret ephemeral='no' private='no'>
<uuid>df1dabbf-c8b6-46a6-b427-1fad700370f0</uuid>
<usage type='ceph'>
<name>client.nova secret</name>
</usage>
</secret>
5. virsh secret-define --file /etc/ceph/secret.xml
6. virsh secret-set-value --secret df1dabbf-c8b6-46a6-b427-1fad700370f0 --base64 <这里填入/etc/ceph/ceph.client.nova.keyring中的base64值>
7. 在compute的/etc/nova/nova.conf中加入以下行:
[libvirt]
images_type = rbd
images_rbd_pool = vms
images_rbd_ceph_conf = /etc/ceph/ceph.conf
rbd_user = nova
rbd_secret_uuid = df1dabbf-c8b6-46a6-b427-1fad700370f0
disk_cachemodes="network=writeback"
8. nova boot --flavor m1.tiny --image cirros-0.3.4-x86_64 demo-instance1
9. nova list

备注:
1. rbd -p vms ls
350d6217-e7b8-46e8-be71-a6a22b0603ae_disk

2. 在compute上运行ll -h /var/lib/nova/instances, 你会发现硬盘不在此文件夹下:
total 24K
drwxr-xr-x 5 nova nova 4.0K Nov 5 15:44 ./
drwxr-xr-x 9 nova nova 4.0K Oct 28 13:27 ../
drwxr-xr-x 2 nova nova 4.0K Nov 5 15:44 _base/
drwxr-xr-x 2 nova nova 4.0K Nov 5 15:44 c88ac315-f203-4abb-86d8-666f53f0d03b/
-rw-r--r-- 1 nova nova 31 Nov 5 14:11 compute_nodes
drwxr-xr-x 2 nova nova 4.0K Nov 5 15:44 locks/

ll -h /var/lib/nova/instances/c88ac315-f203-4abb-86d8-666f53f0d03b
total 36
drwxr-xr-x 2 nova nova 4.0K Nov 5 15:44 ./
drwxr-xr-x 5 nova nova 4.0K Nov 5 15:44 ../
-rw-rw---- 1 libvirt-qemu kvm 24K Nov 5 15:45 console.log
-rw-r--r-- 1 nova nova 2.4K Nov 5 15:44 libvirt.xml

3. rbd -p vms info 350d6217-e7b8-46e8-be71-a6a22b0603ae_disk
rbd image '350d6217-e7b8-46e8-be71-a6a22b0603ae_disk':
size 1024 MB in 256 objects
order 22 (4096 kB objects)
block_name_prefix: rbd_data.5e682ae8944a
format: 2
features: layering
flags:

4. ceph.client.nova.keyring的错误会导致nova-compute这个服务无法启动

Ceph与OpenStack的Nova相结合的更多相关文章

  1. Ceph与OpenStack的Glance相结合

    http://docs.ceph.com/docs/master/rbd/rbd-openstack/?highlight=nova#kilo 在Ceoh的admin-node上进行如下操作: 1. ...

  2. “CEPH浅析”系列之六——CEPH与OPENSTACK

    在 <"Ceph浅析"系列之二--Ceph概况>中即已提到,关注Ceph的原因之一,就是OpenStack社区对于Ceph的重视.因此,本文将对Ceph在OpenSta ...

  3. Ceph在OpenStack中的地位

    对Ceph在OpenStack中的价值进行简要介绍,并且对Ceph和Swift进行对比. 对于一个IaaS系统,涉及到存储的部分主要是块存储服务模块.对象存储服务模块.镜像管理模块和计算服务模块.具体 ...

  4. 云计算与OpenStack(虚拟机Nova篇)

    <云计算与OpenStack(虚拟机Nova篇)> 基本信息 作者: 伯龙 程志鹏 张杰 出版社:电子工业出版社 ISBN:9787121201202 上架时间:2013-8-5 出版日期 ...

  5. Ceph与OpenStack整合(仅为云主机提供云盘功能)

    1. Ceph与OpenStack整合(仅为云主机提供云盘功能) 创建: linhaifeng,最新修改: 大约1分钟以前 ceph ceph osd pool create volumes 128 ...

  6. ceph对接openstack环境(4)

    ceph对接openstack环境 环境准备: 保证openstack节点的hosts文件里有ceph集群的各个主机名,也要保证ceph集群节点有openstack节点的各个主机名 一.使用rbd方式 ...

  7. The Dos and Don'ts for Ceph for OpenStack

    Ceph和OpenStack是一个非常有用和非常受欢迎的组合. 不过,部署Ceph / OpenStack经常会有一些容易避免的缺点 - 我们将帮助你解决它们 使用 show_image_direct ...

  8. OpenStack:安装Nova

    >安装Nova1. 安装# apt-get install nova-novncproxy novnc nova-api \  nova-ajax-console-proxy nova-cert ...

  9. OpenStack之Nova模块

    Nova简介 nova和swift是openstack最早的两个组件,nova分为控制节点和计算节点,计算节点通过nova computer进行虚拟机创建,通过libvirt调用kvm创建虚拟机,no ...

随机推荐

  1. css/js(工作中遇到的问题)-3

    设置宽高比 使用padding/margin-top/bottom; 设置出教准确的自适应布局; 用于预加载图片; 关于数据库设置 添加extra对象用于扩展; 添加type类型; 对于字体 使用百分 ...

  2. Js判断客户端是iphone还是安卓

    <script> var u = navigator.userAgent; var isAndroid = u.indexOf('Android') > -1 || u.indexO ...

  3. WPF,解决Listbox,按住ListboxItem向下拖出Listbox,横向滚动条跑到最后。

    类似这种样式的控件,.,在横向滚动条隐藏的情况下有这样的问题.(横向滚动条显示的时候也会,,目前不知道怎么解决.) 因为这个控件偏移是利用ListBox的ItemsPanelTemplate模版里的S ...

  4. block和split的理解

    两者是从不同的角度来定义的:HDFS以固定大小的block为基本单位存储数据(分布式文件系统,实际存储角度,物理存储单位),而MapReduce以split作为处理单位(编程模型角度,逻辑单位). 对 ...

  5. WPF中获取形状范围

    在没加入到Canvas时,也能获取形状的方法: var polygon = new Polygon(); polygon.Points.Add(new Point(xStart, yStart)); ...

  6. uva-465(overflow)

    这道题很奇葩啊,WA了4发...妈的,用c++也不至于,输出竟然要原样输出... 例如: 0000000000000000006 * 000000000000001 输出是 0000000000000 ...

  7. The 2015 China Collegiate Programming Contest E. Ba Gua Zhen hdu 5544

    Ba Gua Zhen Time Limit: 6000/4000 MS (Java/Others)    Memory Limit: 65535/65535 K (Java/Others)Total ...

  8. hive Java API

    Java连接hive进行操作的方式有多种,接触到了两种: 首先,hive要起动远程服务接口,命令: hive --service hiveserver -p 50000 & 1. 通过jdbc ...

  9. BZOJ4500: 矩阵

    Description 有一个n*m的矩阵,初始每个格子的权值都为0,可以对矩阵执行两种操作: 1. 选择一行, 该行每个格子的权值加1或减1. 2. 选择一列, 该列每个格子的权值加1或减1. 现在 ...

  10. java开发_模仿百度文库_OpenOffice2PDF_注意事项

    在模仿百度文库的操作过程中,有很多朋友反映出来的一些问题,是我想起了写这篇blog. 主要是让大家在做的过程中注意一些东西,否则达不到想要的效果. 第一步:我们先从 java开发_模仿百度文库_Ope ...