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

[经验分享] Ceph的客户端安装

[复制链接]

尚未签到

发表于 2017-6-25 08:48:51 | 显示全部楼层 |阅读模式
Contents [hide]



  • 1 参考

    • 1.1 ceph端口访问控制
    • 1.2 用Kernel方式挂载

      • 1.2.1 安装ELRepo及kernel-lt
      • 1.2.2 修改Grub引导顺序并重启动
      • 1.2.3 添加ceph源
      • 1.2.4 安装ceph客户端
      • 1.2.5 挂载ceph卷


    • 1.3 fuse方式挂载ceph卷

      • 1.3.1 安装epel源
      • 1.3.2 安装ceph-fuse
      • 1.3.3 测试挂载ceph卷
      • 1.3.4 通过fstab自动挂载







参考


  • MOUNT.CEPH – MOUNT A CEPH FILE SYSTEM
  • MMOUNT CEPH FS WITH THE KERNEL DRIVER
  • MOUNT CEPH FS AS A FUSE
  • MOUNT CEPH FS IN YOUR FILE SYSTEMS TABLE

ceph端口访问控制
  成都ceph环境做为数据备份空间,因未启用授权机制,为确保数据安全,现已添加端口访问控制。
  若需增加访问点请在172.17.35.241:/usr/local/bin/default.iptables中进行设置:









# 若增加ceph节点,请将节点ip添加到LAN_IPs中

LAN_IPs=172.17.35.240,172.17.35.241,172.17.35.242,172.17.35.243



# 若增加访问客户端,请将客户端IP添加到CEPH_IPs中

CEPH_IPs="$NMC_IPs,172.17.46.0/24"

CEPH_IPs="$CEPH_IPs,192.168.0.131,192.168.0.133,192.168.0.233,192.168.0.23,192.168.0.247"



# 修改完成default.iptables后,执行下面的命令加载策略:

setiptables.sh load default.iptables

用Kernel方式挂载
  该方式需要更换系统内核、并重启系统以支持ceph文件系统挂载。
  经试用以方式挂载后,存在某些目录丢失,重新mount后丢失目录又出现的现象,而使用fuse方式挂载未发生这一现象。

安装ELRepo及kernel-lt









# 首先你要做的就是导入public key

#rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org

rpm --import http://www.elrepo.org/RPM-GPG-KEY-elrepo.org



# 然后安装ELRepo到CentOS-6.5中

rpm -ivh http://www.elrepo.org/elrepo-release-6-5.el6.elrepo.noarch.rpm



# 安装kernel-lt(lt=long-term)

yum --enablerepo=elrepo-kernel install kernel-lt -y



# 你也可以装kernel-ml(ml=mainline)kernel-lt、kernel-mt二者选一个就可以了!

#yum --enablerepo=elrepo-kernel install kernel-ml -y

修改Grub引导顺序并重启动
  vim/etc/grub.conf
  设置default值(从0开始),一般新安装的内核在第一个位置,所以设置default=0。
  目前内核为:title CentOS (3.10.59-1.el6.elrepo.x86_64)
  重启,这时候你的内核就成功升级了,你可以删除你的旧内核了!


  • 重启后内核为:

uname -a
Linux yunwei2.timait 3.10.59-1.el6.elrepo.x86_64 #1 SMP Thu Oct 30 23:46:31 EDT 2014 x86_64 x86_64 x86_64 GNU/Linux


  • 重启失败参考(经在192.168.0.82上测试此方法无效)
  CentOS 6 will not boot on KVM with elrepo kernel 3.13 / 3.14
  You can work around it by booting into your working stock kernel and running these two commands:









yum install -y device-mapper-libs libudev

for X in $(cd /boot ; ls -1 config-*elrepo* | sed 's/config-//' ) ; do dracut --add-drivers virtio_blk -f /boot/initramfs-$X.img $X ; done

添加ceph源
  公司内部源、第三方源选择添加一个即可。


  • 公司内部源
  内部源ceph版本为:0.67.5-16.g69a99e6.el6









cat > /etc/yum.repos.d/nailgun.repo <<EOF

[nailgun]

name=Nailgun

baseurl=http://172.17.45.15:8080/centos/fuelweb/x86_64/

gpgcheck=0

EOF


  • 第三方源









# ceph_release

# v0.67.9 dumpling

# v0.87   giant

ceph_release=giant

# distro:CentOS 6.4是el6

distro=el6

# 版本参考:http://ceph.com/docs/master/release-notes/

cat > /etc/yum.repos.d/ceph.repo <<EOF

[ceph]

name=Ceph packages for \$basearch

baseurl=http://ceph.com/rpm-${ceph_release}/${distro}/\$basearch

enabled=1

gpgcheck=1

type=rpm-md

gpgkey=https://ceph.com/git/?p=ceph.git;a=blob_plain;f=keys/release.asc

[ceph-noarch]

name=Ceph noarch packages

baseurl=http://ceph.com/rpm-${ceph_release}/${distro}/noarch

enabled=1

gpgcheck=1

type=rpm-md

gpgkey=https://ceph.com/git/?p=ceph.git;a=blob_plain;f=keys/release.asc

[ceph-source]

name=Ceph source packages

baseurl=http://ceph.com/rpm-${ceph_release}/${distro}/SRPMS

enabled=0

gpgcheck=1

type=rpm-md

gpgkey=https://ceph.com/git/?p=ceph.git;a=blob_plain;f=keys/release.asc

EOF



cat > /etc/yum.repos.d/ceph-extras.repo <<EOF

[ceph-extras]

name=Ceph Extras Packages

baseurl=http://ceph.com/packages/ceph-extras/rpm/centos6/\$basearch

enabled=1

priority=2

gpgcheck=1

type=rpm-md

gpgkey=https://ceph.com/git/?p=ceph.git;a=blob_plain;f=keys/release.asc

[ceph-extras-noarch]

name=Ceph Extras noarch

baseurl=http://ceph.com/packages/ceph-extras/rpm/centos6/noarch

enabled=1

priority=2

gpgcheck=1

type=rpm-md

gpgkey=https://ceph.com/git/?p=ceph.git;a=blob_plain;f=keys/release.asc

[ceph-extras-source]

name=Ceph Extras Sources

baseurl=http://ceph.com/packages/ceph-extras/rpm/centos6/SRPMS

enabled=1

priority=2

gpgcheck=1

type=rpm-md

gpgkey=https://ceph.com/git/?p=ceph.git;a=blob_plain;f=keys/release.asc

EOF



# 加载一个第三方依赖的repo、下载ceph

rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm

#rpm -Uvh http://ceph.com/rpm-dumpling/el6/noarch/ceph-release-1-0.el6.noarch.rpm

安装ceph客户端









yum -y install ceph

[iyunv@FTP-Maven ~]# rpm -qa|grep ceph
libcephfs1-0.67.5-16.g69a99e6.el6.x86_64
python-ceph-0.67.5-16.g69a99e6.el6.x86_64
ceph-0.67.5-16.g69a99e6.el6.x86_64

挂载ceph卷


  • 命令行挂载









mkdir -p /cephdata

mount -t ceph 172.17.35.241:6789:/ /cephdata


  • 添加/etc/fstab自动挂载









#172.17.35.241:6789:/ /cephdata

172.17.35.241:6789:/ /cephdata ceph defaults 0 0


  • 注意:开启SELinux可能引起挂载ceph卷后进入子目录报没有权限错误。

fuse方式挂载ceph卷
  因ceph-fuse使用64位的inode,在32位系统中会出现问题,因此仅限在64位系统中使用。

安装epel源









yum -y install epel-release



# epel-release-6-8.noarch
  若安装后yum工作异常,修改/etc/yum.repos.d/epel.repo,取消mirrorlist、启用baseurl即可。

安装ceph-fuse









yum -y install ceph-fuse



# ceph-0.80.5-9.el6.x86_64

# ceph-common-0.80.5-9.el6.x86_64

# libcephfs1-0.80.5-9.el6.x86_64

# python-ceph-0.80.5-9.el6.x86_64

# ceph-fuse-0.80.5-9.el6.x86_64

测试挂载ceph卷









mkdir /mnt/cephdata_backups

ceph-fuse -m 172.17.35.241:6789 -r /backups /mnt/cephdata_backups



umount /mnt/cephdata_backups

通过fstab自动挂载


  • ceph-fuse挂载脚本bug修复:/sbin/mount.fuse.ceph









# convert device string to options

#cephargs='--'`echo $1 | sed 's/,/ --/g'`

cephargs='-'`echo $1 | sed -e 's/,/ -/g' -e 's/=/ /g'`


  • 建立挂载点目录









mkdir -p /mnt/cephdata_backups


  • 设置/etc/fstab









# 设置挂载ceph中的backups目录

m=172.17.35.241:6789,r=/backups  /mnt/cephdata_backups fuse.ceph defaults 0 0


  • 测试挂载、卸载









mount /mnt/cephdata_backups



umount /mnt/cephdata_backups


  • 基于ceph集群未正常的情况下,openstack集群开机自mount时该机器会无法启动,当前先去掉该自动mount,改为手动方式

运维网声明 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-387824-1-1.html 上篇帖子: openstack将本地实例迁移至ceph存储中 下篇帖子: Ceph的现状
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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