openstack pike与ceph集成

Ceph luminous 安装配置 http://www.cnblogs.com/elvi/p/7897178.html

openstack pike 集群高可用  安装部署 汇总 http://www.cnblogs.com/elvi/p/7613861.html

#openstack pike与ceph集成
###########################
#openstack节点 #openstack节点配置ceph源
#使用阿里源 #rm -f /etc/yum.repos.d/*.repo
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
sed -i '/aliyuncs.com/d' /etc/yum.repos.d/*.repo #删除阿里内网地址
wget -O /etc/yum.repos.d/ceph-luminous-aliyun.repo http://elven.vip/ks/yum/ceph-luminous-aliyun.repo
yum clean all && yum makecache #生成缓存
#ceph客户端安装
yum -y install ceph-common ###########################
#ceph管理节点 #创建POOL
ceph osd pool create volumes 128
ceph osd pool create images 128
ceph osd pool create vms 128 #ssh免密验证
curl http://elven.vip/ks/sh/sshkey.me.sh >sshkey.me.sh
#认证用户及密码#
echo "
USER=root
PASS=123321
">my.sh.conf
#hosts设置
echo "
#openstack
192.168.58.17 controller
192.168.58.16 compute01
192.168.58.14 storage1
">>/etc/hosts
#ssh批量认证#
sh ./sshkey.me.sh controller compute01 storage1 #推送ceph配置到client
cd /etc/ceph/
ceph-deploy config push controller compute01 storage1 ########################### #创建ceph用户和密钥
ceph auth get-or-create client.cinder mon 'allow r' osd 'allow class-read object_prefix rbd_children, allow rwx pool=volumes, allow rwx pool=vms, allow rx pool=images'
ceph auth get-or-create client.glance mon 'allow r' osd 'allow class-read object_prefix rbd_children, allow rwx pool=images'
ceph auth get-or-create client.cinder-backup mon 'allow r' osd 'allow class-read object_prefix rbd_children, allow rwx pool=backups' #查询用户,写入文件
ceph auth get-key client.cinder >/etc/ceph/ceph.client.cinder.keyring
ceph auth get-or-create client.glance >/etc/ceph/ceph.client.glance.keyring
# scp /etc/ceph/ceph.client.cinder.keyring $Node:/etc/ceph/
# scp /etc/ceph/ceph.client.glance.keyring $Node:/etc/ceph/ ###########################
#拷贝秘钥到对应节点,修改权限
#(nova,cinder都使用client.cinder) #glance
Node=controller
scp /etc/ceph/ceph.client.glance.keyring $Node:/etc/ceph/
ssh $Node sudo chown glance:glance /etc/ceph/ceph.client.glance.keyring #nova compute
Node=compute01
scp /etc/ceph/ceph.client.cinder.keyring $Node:/etc/ceph/
ssh $Node sudo chown nova:nova /etc/ceph/ceph.client.cinder.keyring
scp /etc/ceph/ceph.client.glance.keyring $Node:/etc/ceph/
ssh $Node sudo chown nova:nova /etc/ceph/ceph.client.glance.keyring #cinder storage
Node=storage1
scp /etc/ceph/ceph.client.cinder.keyring $Node:/etc/ceph/
ssh $Node sudo chown cinder:cinder /etc/ceph/ceph.client.cinder.keyring ###########################
#openstack glance配置 ls -l /etc/ceph/ #更改glance默认存储为ceph
cp -f /etc/glance/glance-api.conf{,bak2}
sed -i 's/^stores/#&/' /etc/glance/glance-api.conf
sed -i 's/^default_store/#&/' /etc/glance/glance-api.conf
echo '#[glance_store]
stores = rbd,file
default_store = rbd
rbd_store_pool = images
rbd_store_user = glance
rbd_store_ceph_conf = /etc/ceph/ceph.conf
rbd_store_chunk_size = 8
'>>/etc/glance/glance-api.conf #重启服务
systemctl restart openstack-glance-api openstack-glance-registry ###########################
#nova计算节点 ls -l /etc/ceph/
#ceph
echo '
[client]
rbd cache = true
rbd cache writethrough until flush = true
admin socket = /var/run/ceph/guests/$cluster-$type.$id.$pid.$cctid.asok
log file = /var/log/qemu/qemu-guest-$pid.log
rbd concurrent management ops = 20 [client.cinder]
keyring = /etc/ceph/ceph.client.cinder.keyring
'>>/etc/ceph/ceph.conf mkdir -p /var/run/ceph/guests/ /var/log/qemu/
chown qemu:libvirt /var/run/ceph/guests /var/log/qemu/ #密钥加进libvirt
#MyUID=$(uuidgen) && echo $MyUID #生成UID后面会用到#
MyUID=5d8bc172-d375-4631-8be0-cbe11bf88a55
Key=$(awk '/key/ { print $3 }' /etc/ceph/ceph.client.cinder.keyring)
echo '
<secret ephemeral="no" private="no">
<uuid>'$MyUID'</uuid>
<usage type="ceph">
<name>client.cinder secret</name>
</usage>
</secret>
'>ceph.xml
virsh secret-define --file ceph.xml
virsh secret-set-value --secret $MyUID --base64 $Key #nova配置
#注释原[libvirt]部分
sed -i 's/\[libvirt\]/#&/' /etc/nova/nova.conf
sed -i 's/^virt_type/#&/' /etc/nova/nova.conf
#使用ceph存储
echo '
[libvirt]
virt_type = qemu images_type = rbd
images_rbd_pool = vms
images_rbd_ceph_conf = /etc/ceph/ceph.conf
rbd_user = cinder
rbd_secret_uuid = '$MyUID'
disk_cachemodes="network=writeback"
live_migration_flag="VIR_MIGRATE_UNDEFINE_SOURCE,VIR_MIGRATE_PEER2PEER,VIR_MIGRATE_LIVE,VIR_MIGRATE_PERSIST_DEST,VIR_MIGRATE_TUNNELLED"
#禁用文件注入#
libvirt_inject_password = false
libvirt_inject_key = false
libvirt_inject_partition = -2
'>>/etc/nova/nova.conf #重启服务
systemctl restart libvirtd.service openstack-nova-compute.service ###########################
#Cinder storage 添加Ceph存储 #enabled_backends添加ceph
sed -i 's/^enabled_backends.*/&,ceph/' /etc/cinder/cinder.conf
echo '
[ceph]
volume_driver = cinder.volume.drivers.rbd.RBDDriver
rbd_pool = volumes
rbd_ceph_conf = /etc/ceph/ceph.conf
rbd_flatten_volume_from_snapshot = false
rbd_max_clone_depth = 5
rbd_store_chunk_size = 4
rados_connect_timeout = -1
glance_api_version = 2
rbd_user = cinder
rbd_secret_uuid = 5d8bc172-d375-4631-8be0-cbe11bf88a55
'>>/etc/cinder/cinder.conf #重启服务
systemctl restart openstack-cinder-volume.service ###########################

  

###########################
#检测 #在openstack管理节点
source admin-openstack.sh #查看cinder是否有@ceph存储
cinder service-list #使用raw磁盘格式,创建镜像
source ./admin-openstack.sh
openstack image create "cirros2" \
--file cirros-0.3.5-x86_64-disk.img \
--disk-format raw --container-format bare \
--public #检查是否上传成功
openstack image list #创建VM (cpu16是可用域)
NET=de98a7e6-6aaf-4569-b0bf-971cfb4ffbc8
nova boot --flavor m1.nano --image cirros2 \
--nic net-id=$NET \
--security-group default --key-name mykey \
--availability-zone cpu16 \
kvm04 #检查
openstack server list #虚拟控制台访问实例
openstack console url show kvm04 #创建云盘volume
openstack volume create --size 1 disk01
#openstack volume list
#给虚机kvm04添加云盘
openstack server add volume kvm04 disk01 ###########################
#在ceph管理节点查看
ceph df
#查看pool
rbd -p vms ls
rbd -p volumes ls
rbd -p images ls ###########################
#参考
http://click.aliyun.com/m/16677/
http://blog.csdn.net/watermelonbig/article/details/51116173
http://blog.csdn.net/Tomstrong_369/article/details/53330734
https://www.cnblogs.com/sammyliu/p/4804037.html ###########################

  

openstack pike与ceph集成的更多相关文章

  1. OpenStack Newton版本Ceph集成部署记录

    2017年2月,OpenStack Ocata版本正式release,就此记录上一版本 Newton 结合Ceph Jewel版的部署实践.宿主机操作系统为CentOS 7.2 . 初级版: 192. ...

  2. openstack pike 集群高可用 安装 部署 目录汇总

    # openstack pike 集群高可用 安装部署#安装环境 centos 7 史上最详细的openstack pike版 部署文档欢迎经验分享,欢迎笔记分享欢迎留言,或加QQ群663105353 ...

  3. 理解 OpenStack + Ceph (5):OpenStack 与 Ceph 之间的集成 [OpenStack Integration with Ceph]

    理解 OpenStack + Ceph 系列文章: (1)安装和部署 (2)Ceph RBD 接口和工具 (3)Ceph 物理和逻辑结构 (4)Ceph 的基础数据结构 (5)Ceph 与 OpenS ...

  4. 最新Ceph L版与openstack Pike对接

    安装Ceph luminous   实验环境 三台服务器,每台服务器都有4块硬盘,每台服务器都将自己的第一块硬盘作为系统盘,剩下的做ceph   一.在所有服务器上操作 #使用阿里源 yum inst ...

  5. OpenStack Pike超详细搭建文档 LinuxBridge版

    前言 搭建前必须看我 本文档搭建的是分布式P版openstack(1 controller + N compute + 1 cinder)的文档. openstack版本为Pike. 搭建的时候,请严 ...

  6. CentOS7.2非HA分布式部署Openstack Pike版 (实验)

    部署环境 一.组网拓扑 二.设备配置 笔记本:联想L440处理器:i3-4000M 2.40GHz内存:12G虚拟机软件:VMware® Workstation 12 Pro(12.5.2 build ...

  7. openstack pike 创建vxlan网络

    #openstack pike 创建vxlan网络 openstack pike 集群高可用  安装部署 汇总 http://www.cnblogs.com/elvi/p/7613861.html # ...

  8. openstack pike 使用 linuxbridge + vxlan

    #openstack pike 使用 linuxbridge + vxlan #openstack pike 集群高可用  安装部署 汇总 http://www.cnblogs.com/elvi/p/ ...

  9. openstack pike 使用 openvswitch + vxlan

    # openstack pike 使用 openvswitch + vxlan# openstack pike linuxbridge-agent 换为 openvswitch-agent #open ...

随机推荐

  1. 温故而知新 Volley源码解读与思考

    相比新的网络请求框架Volley真的很落后,一无是处吗,要知道Volley是由google官方推出的,虽然推出的时间很久了,但是其中依然有值得学习的地方.  从命名我们就能看出一些端倪,volley中 ...

  2. LeetCode 112. Path Sum (二叉树路径之和)

    Given a binary tree and a sum, determine if the tree has a root-to-leaf path such that adding up all ...

  3. ES6中函数新增的方式方法

    ---恢复内容开始---   绪 言 ES6 大家对JavaScript中的函数都不陌生.今天我就为大家带来ES6中关于函数的一些扩展方式和方法. 1.1函数形参的默认值 1.1.1基本用法 ES6 ...

  4. Python 由__dict__和dir()引发的一些思考

    关于__dict__和dir()的区别和作用请参考这篇文章:http://blog.csdn.net/lis_12/article/details/53521554 说下我当时遇到的问题: class ...

  5. Appium python自动化测试系列之混合app实战(十一)

    12.1 什么是混合App 12.1.1 混合app定义 什么是混合app,其实这个不言而喻,我们的app正常来说应该都是native的,但是实际工作中却不是,反正种种原因我们的app会有native ...

  6. 走近 Python (类比 JS)

    Python 是一门运用很广泛的语言,自动化脚本.爬虫,甚至在深度学习领域也都有 Python 的身影.作为一名前端开发者,也了解 ES6 中的很多特性借鉴自 Python (比如默认参数.解构赋值. ...

  7. solr安装血泪史

    Windows10专业版,solr6.5.1,tomcat8.5.14,jdk1.8 转自http://www.jianshu.com/p/dd7a59b3f0b5 科普篇 来自百度百科:Solr简介 ...

  8. grid 布局 CSS3

    display:grid 是一种新的布局方式,旧的布局方式通常有副作用,例如float(需要额外修复浮动)或者inline-block(两个元素之间的空格问题)   把父元素定义为grid,就像表格一 ...

  9. HTML学习笔记 iframe引用页面按列(针对target打开方式解释) 第九节 (原创)

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  10. 浅谈字体小图标font awesome,iconfont,svg各自优缺点

    三种都是矢量图(即放大不失真),但是个自又有个自的优缺点, 1.font awesome: 优点:相对比较简单,查看官网看例子基本上都会用 (http://www.bootcss.com/p/font ...