Ceph与OpenStack的Nova相结合
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相结合的更多相关文章
- Ceph与OpenStack的Glance相结合
http://docs.ceph.com/docs/master/rbd/rbd-openstack/?highlight=nova#kilo 在Ceoh的admin-node上进行如下操作: 1. ...
- “CEPH浅析”系列之六——CEPH与OPENSTACK
在 <"Ceph浅析"系列之二--Ceph概况>中即已提到,关注Ceph的原因之一,就是OpenStack社区对于Ceph的重视.因此,本文将对Ceph在OpenSta ...
- Ceph在OpenStack中的地位
对Ceph在OpenStack中的价值进行简要介绍,并且对Ceph和Swift进行对比. 对于一个IaaS系统,涉及到存储的部分主要是块存储服务模块.对象存储服务模块.镜像管理模块和计算服务模块.具体 ...
- 云计算与OpenStack(虚拟机Nova篇)
<云计算与OpenStack(虚拟机Nova篇)> 基本信息 作者: 伯龙 程志鹏 张杰 出版社:电子工业出版社 ISBN:9787121201202 上架时间:2013-8-5 出版日期 ...
- Ceph与OpenStack整合(仅为云主机提供云盘功能)
1. Ceph与OpenStack整合(仅为云主机提供云盘功能) 创建: linhaifeng,最新修改: 大约1分钟以前 ceph ceph osd pool create volumes 128 ...
- ceph对接openstack环境(4)
ceph对接openstack环境 环境准备: 保证openstack节点的hosts文件里有ceph集群的各个主机名,也要保证ceph集群节点有openstack节点的各个主机名 一.使用rbd方式 ...
- The Dos and Don'ts for Ceph for OpenStack
Ceph和OpenStack是一个非常有用和非常受欢迎的组合. 不过,部署Ceph / OpenStack经常会有一些容易避免的缺点 - 我们将帮助你解决它们 使用 show_image_direct ...
- OpenStack:安装Nova
>安装Nova1. 安装# apt-get install nova-novncproxy novnc nova-api \ nova-ajax-console-proxy nova-cert ...
- OpenStack之Nova模块
Nova简介 nova和swift是openstack最早的两个组件,nova分为控制节点和计算节点,计算节点通过nova computer进行虚拟机创建,通过libvirt调用kvm创建虚拟机,no ...
随机推荐
- item上下自动循环滚动显示
//li 上下滚动 (function($){ $.fn.extend({ Scroll:function(opt,callback){ //参数初始化 if(!opt) var opt={}; va ...
- 转:ExpressBars中的停靠控件使用
http://www.cnblogs.com/jxsoft/archive/2011/08/25/2152872.html 1 新手上路 1.1 控件简介 Dock pan ...
- Servlet 获取 ApplicationContext
一般使用Spring完成了注入,在Service或SpringMVC 中可以通过注解的形式来获取 Spring的已经注入的Spring的bean如下所示: @Resource(name = " ...
- rJava包---R与Java的接口
1.安装 版本说明:Win10+R3.2.5+JKD1.7+eclipse-jee-mars-R-win32-x86_64 install.packages("rJava") 2. ...
- [WP8.1UI控件编程]Windows Phone动画方案的选择
8.1 动画方案的选择 Windows Phone的动画实现方式有线性插值动画(3种类型).关键祯动画(4种类型)和基于帧动画,甚至还有定时器动画,然后动画所改变的UI元素属性可以是普通的UI元素属性 ...
- Javascript与当前项目的思考
主体 分为以下三部分,能力.经验有限,欢迎拍砖. 1.低效的代码 2.面向对象的重构重复利用代码 3.调试的经验总结 第一部分 日常中低效的代码 加载和运行 <html> <he ...
- Ninject使用demo
public class HomeController : Controller { public ActionResult Index() { //核心对象 IKernel ninjectKerne ...
- JS设置CSS样式的几种方式【转】
用JS来动态设置CSS样式,常见的有以下几种 1. 直接设置style的属性 某些情况用这个设置 !important值无效 如果属性有'-'号,就写成驼峰的形式(如textAlign) 如果想保 ...
- Linux open函数
Linux open函数 open 函数用于打开和创建文件.以下是 open 函数的简单描述 #include <fcntl.h> int open(const char *pathnam ...
- TCP连接探测中的Keepalive和心跳包
TCP连接探测中的Keepalive和心跳包 tcp keepalive 心跳 保活 Linuxtcp心跳keepalive保活1. TCP保活的必要性 1) 很多防火墙等对于空闲socket自动关闭 ...