• 丢了ceph.mon.keying解决办法


    在linux操作系统下,可能因为一些很小的误操作,都会造成非常重要的文件的丢失,而文件的备份并不是每时每刻都会注意到,一般是等到文件丢失了才会去想办法,这里讲下ceph.mon.keyring丢失的解决办法

    1、没有启用部署认证的

    auth_cluster_required =none

    在进行部署的时候 ceph-deploy new 以后会生成ceph.mon.keyring文件,内容如下

    [mon.]
    key = AQBnutdWAAAAABAAPmLaAd9CeKaCRj1CIrztyA==
    caps mon = allow *
    

    这个keyring在增加mon的时候,mon之间加密会用到的,如果在未开启认证的情况下,只需要在部署目录下面创建一个同名文件,里面填入一个格式相同的任意内容即可(需要有这个文件,不然无法部署新的mon),在没有开启认证的时候是没有生成这个文件的 /var/lib/ceph/mon/ceph-lab8106/keyring

    一般是在系统盘损坏的时候容易丢失这个部署目录,并且没有做备份

    2、启用了部署认证

    auth_cluster_required =cephx

    开启了以后,在进行mon的部署以后,是会生成/var/lib/ceph/mon/ceph-lab8106/keyring这个文件的,这个文件的内容跟部署的目录下面的keyring是一样的,所以丢失了部署目录以后,去mon的路径下面查看文件,然后写入一个同名文件里面即可
    如下所示

    [root@lab8106 ceph]# cat /var/lib/ceph/mon/ceph-lab8106/keyring 
    [mon.]
    key = AQC4V9hWAAAAABAArPTf+Az43NWsoU88okI+Mg==
    caps mon = "allow *"
    [root@lab8106 ceph]# cat ceph.mon.keyring 
    [mon.]
    key = AQC4V9hWAAAAABAArPTf+Az43NWsoU88okI+Mg==
    caps mon = allow *
    

    这个是个简单的操作即可避免无法新加mon的问题,当然做好预备工作是最好的,建议做好下面的两个工作:

    • 1、直接备份部署目录里面的文件,最好备份到自己的电脑上
    • 2、将这个keyring的信息备份到集群里面去,记录到认证信息中
    [root@lab8106 ceph]# ceph auth import -i ceph.mon.keyring
    imported keyring
    [root@lab8106 ceph]# ceph auth get mon.
    exported keyring for mon.
    [mon.]
    key = AQC4V9hWAAAAABAArPTf+Az43NWsoU88okI+Mg==
    caps mon = "allow *"
    [root@lab8106 ceph]# cat ceph.mon.keyring 
    [mon.]
    key = AQC4V9hWAAAAABAArPTf+Az43NWsoU88okI+Mg==
    caps mon = allow *
    
  • 相关阅读:
    个人学期总结
    管理信息系统 第三部分 作业
    模型分离(选做)
    密码保护
    实现搜索功能
    完成个人中心—导航标签
    个人中心标签页导航
    评论列表显示及排序,个人中心显示
    完成评论功能
    ASP.NET Core开发者指南
  • 原文地址:https://www.cnblogs.com/zphj1987/p/13575333.html
Copyright © 2020-2023  润新知