首页 > 代码库 > ceph osd盘挂掉,无法修复

ceph osd盘挂掉,无法修复

由于网络更换ip段,导致ceph启动时monitor进程无法启动,解决了这个问题后,ceph能够启动,但一块osd盘坏掉了,错误日志如下:

2014-12-24 10:53:30.353262 7f3fbbd78800  0 ceph version 0.87 (c51c8f9d80fa4e0168aa52685b8de40e42758578), process ceph-osd, pid 9794
2014-12-24 10:53:30.359829 7f3fbbd78800  0 filestore(/var/lib/ceph/osd/ceph-4) backend xfs (magic 0x58465342)
2014-12-24 10:53:30.536660 7f3fbbd78800  0 genericfilestorebackend(/var/lib/ceph/osd/ceph-4) detect_features: FIEMAP ioctl is supported and appears to work
2014-12-24 10:53:30.536683 7f3fbbd78800  0 genericfilestorebackend(/var/lib/ceph/osd/ceph-4) detect_features: FIEMAP ioctl is disabled via ‘filestore fiemap‘ config option
2014-12-24 10:53:30.537600 7f3fbbd78800  0 genericfilestorebackend(/var/lib/ceph/osd/ceph-4) detect_features: syscall(SYS_syncfs, fd) fully supported
2014-12-24 10:53:30.537684 7f3fbbd78800  0 xfsfilestorebackend(/var/lib/ceph/osd/ceph-4) detect_feature: extsize is disabled by conf
2014-12-24 10:53:30.537684 7f3fbbd78800  0 xfsfilestorebackend(/var/lib/ceph/osd/ceph-4) detect_feature: extsize is disabled by conf
2014-12-24 10:53:30.592079 7f3fbbd78800  0 filestore(/var/lib/ceph/osd/ceph-4) mount: enabling WRITEAHEAD journal mode: checkpoint is not enabled
2014-12-24 10:53:40.394856 7f3fbbd78800 -1 os/FileStore.cc: In function ‘int FileStore::_check_replay_guard(int, const SequencerPosition&)‘ thread 7f3fbbd78800 time 2014-12-24 10:53:40.391498
os/FileStore.cc: 2181: FAILED assert(!m_filestore_fail_eio || r != -5)

 ceph version 0.87 (c51c8f9d80fa4e0168aa52685b8de40e42758578)
 1: (FileStore::_check_replay_guard(int, SequencerPosition const&)+0x2d3) [0x730633]
 2: (FileStore::_check_replay_guard(coll_t, ghobject_t, SequencerPosition const&)+0x148) [0x742918]
 3: (FileStore::_do_transaction(ObjectStore::Transaction&, unsigned long, int, ThreadPool::TPHandle*)+0x58a4) [0x75e7a4]
 4: (FileStore::_do_transactions(std::list<ObjectStore::Transaction*, std::allocator<ObjectStore::Transaction*> >&, unsigned long, ThreadPool::TPHandle*)+0x64) [0x763894]
 5: (JournalingObjectStore::journal_replay(unsigned long)+0x47c) [0x77578c]
 6: (FileStore::mount()+0x2baa) [0x751d4a]
 7: (OSD::do_convertfs(ObjectStore*)+0x1a) [0x64e75a]
 8: (main()+0x33e4) [0x613044]
 9: (__libc_start_main()+0xfd) [0x31e6a1ed1d]
 10: /usr/bin/ceph-osd() [0x60ec19]
 NOTE: a copy of the executable, or `objdump -rdS <executable>` is needed to interpret this.

--- begin dump of recent events ---
   -21> 2014-12-24 10:53:30.348526 7f3fbbd78800  5 asok(0x5278230) register_command perfcounters_dump hook 0x5200010
   -20> 2014-12-24 10:53:30.348569 7f3fbbd78800  5 asok(0x5278230) register_command 1 hook 0x5200010
   -19> 2014-12-24 10:53:30.348579 7f3fbbd78800  5 asok(0x5278230) register_command perf dump hook 0x5200010
   -18> 2014-12-24 10:53:30.348590 7f3fbbd78800  5 asok(0x5278230) register_command perfcounters_schema hook 0x5200010
   -17> 2014-12-24 10:53:30.348600 7f3fbbd78800  5 asok(0x5278230) register_command 2 hook 0x5200010
   -19> 2014-12-24 10:53:30.348579 7f3fbbd78800  5 asok(0x5278230) register_command perf dump hook 0x5200010
   -18> 2014-12-24 10:53:30.348590 7f3fbbd78800  5 asok(0x5278230) register_command perfcounters_schema hook 0x5200010
   -17> 2014-12-24 10:53:30.348600 7f3fbbd78800  5 asok(0x5278230) register_command 2 hook 0x5200010
   -16> 2014-12-24 10:53:30.348609 7f3fbbd78800  5 asok(0x5278230) register_command perf schema hook 0x5200010

   -15> 2014-12-24 10:53:30.348618 7f3fbbd78800  5 asok(0x5278230) register_command config show hook 0x5200010
asok(0x5278230) register_command config show hook 0x5200010
   -14> 2014-12-24 10:53:30.348629 7f3fbbd78800  5    -14> 2014-12-24 10:53:30.348629 7f3fbbd78800  5 asok(0x5278230) register_command config set hook 0x5200010
   -13> 2014-12-24 10:53:30.348638 7f3fbbd78800  5 asok(0x5278230) register_command config get hook 0x5200010asok(0x5278230) register_command config get hook 0x5200010
   -12> 2014-12-24 10:53:30.348647 7f3fbbd78800  5 asok(0x5278230) register_command config diff hook 0x5200010asok(0x5278230) register_command config diff hook 0x5200010
   -11> 2014-12-24 10:53:30.348657 7f3fbbd78800  5 asok(0x5278230) register_command log flush hook 0x5200010asok(0x5278230) register_command log flush hook 0x5200010
   -10> 2014-12-24 10:53:30.348666 7f3fbbd78800  5 asok(0x5278230) register_command log dump hook 0x5200010asok(0x5278230) register_command log dump hook 0x5200010
    -9> 2014-12-24 10:53:30.348675 7f3fbbd78800  5 asok(0x5278230) register_command log reopen hook 0x5200010
    -8> 2014-12-24 10:53:30.353262 7f3fbbd78800  0 ceph version 0.87 (c51c8f9d80fa4e0168aa52685b8de40e42758578), process ceph-osd, pid 9794
    -7> 2014-12-24 10:53:30.355214 7f3fbbd78800  1 finished global_init_daemonize
    -6> 2014-12-24 10:53:30.359829 7f3fbbd78800  0 filestore(/var/lib/ceph/osd/ceph-4) backend xfs (magic 0x58465342)
    -5> 2014-12-24 10:53:30.536660 7f3fbbd78800  0 genericfilestorebackend(/var/lib/ceph/osd/ceph-4) detect_features: FIEMAP ioctl is supported and appears to work
    -4> 2014-12-24 10:53:30.536683 7f3fbbd78800  0     -5> 2014-12-24 10:53:30.536660 7f3fbbd78800  0 genericfilestorebackend(/var/lib/ceph/osd/ceph-4) detect_features: FIEMAP ioctl is supported and appears to work
    -4> 2014-12-24 10:53:30.536683 7f3fbbd78800  0 genericfilestorebackend(/var/lib/ceph/osd/ceph-4) detect_features: FIEMAP ioctl is disabled via ‘filestore fiemap‘ config option
    -3> 2014-12-24 10:53:30.537600 7f3fbbd78800  0 genericfilestorebackend(/var/lib/ceph/o    -3> 2014-12-24 10:53:30.537600 7f3fbbd78800  0 genericfilestorebackend(/var/lib/ceph/osd/ceph-4) detect_features: syscall(SYS_syncfs, fd) fully supported
    -2> 2014-12-24 10:53:30.537684 7f3fbbd78800  0 xfsfilestorebackend(/var/lib/ceph/osd/ceph-4) detect_feature: extsize is disabled by conf

    -1> 2014-12-24 10:53:30.592079 7f3fbbd78800  0 filestore(/var/lib/ceph/osd/ceph-4) mount: enabling WRITEAHEAD journal mode: checkpoint is not enabled

     0> 2014-12-24 10:53:40.394856 7f3fbbd78800 -1 os/FileStore.cc: In function ‘int FileStore::_check_replay_guard(int, const SequencerPosition&)‘ thread 7f3fbbd78800 time 2014-12-24 10:53:40.391498
os/FileStore.cc: 2181: FAILED assert(!m_filestore_fail_eio || r != -5)

 ceph version 0.87 (c51c8f9d80fa4e0168aa52685b8de40e42758578)
 1: (FileStore::_check_replay_guard(int, SequencerPosition const&)+0x2d3) [0x730633]
 2: (FileStore::_check_replay_guard(coll_t, ghobject_t, SequencerPosition const&)+0x148) [0x742918]
 3: (FileStore::_do_transaction(ObjectStore::Transaction&, unsigned long, int, ThreadPool::TPHandle*)+0x58a4) [0x75e7a4]
 4: (FileStore::_do_transactions(std::list<ObjectStore::Transaction*, std::allocator<ObjectStore::Transaction*> >&, unsigned long, ThreadPool::TPHandle*)+0x64) [0x763894]
 5: (JournalingObjectStore::journal_replay(unsigned long)+0x47c) [0x77578c]
 6: (FileStore::mount()+0x2baa) [0x751d4a]
 7: (OSD::do_convertfs(ObjectStore*)+0x1a) [0x64e75a]
 8: (main()+0x33e4) [0x613044]
 9: (__libc_start_main()+0xfd) [0x31e6a1ed1d]
 10: /usr/bin/ceph-osd() [0x60ec19]
 NOTE: a copy of the executable, or `objdump -rdS <executable>` is needed to interpret this.

--- logging levels ---
   0/ 5 noneos/FileStore.cc: In function ‘int FileStore::_check_replay_guard(int, const SequencerPosition&)‘ thread 7f3fbbd78800 time 2014-12-24 10:53:40.391498
os/FileStore.cc: 2181: FAILED assert(!m_filestore_fail_eio || r != -5)

 ceph version 0.87 (c51c8f9d80fa4e0168aa52685b8de40e42758578)
 1: (FileStore::_check_replay_guard(int, SequencerPosition const&)+0x2d3) [0x730633]
 2: (FileStore::_check_replay_guard(coll_t, ghobject_t, SequencerPosition const&)+0x148) [0x742918]
 3: (FileStore::_do_transaction(ObjectStore::Transaction&, unsigned long, int, ThreadPool::TPHandle*)+0x58a4) [0x75e7a4]
 4: (FileStore::_do_transactions(std::list<ObjectStore::Transaction*, std::allocator<ObjectStore::Transaction*> >&, unsigned long, ThreadPool::TPHandle*)+0x64) [0x763894]
 5: (JournalingObjectStore::journal_replay(unsigned long)+0x47c) [0x77578c]
 6: (FileStore::mount()+0x2baa) [0x751d4a]
 7: (OSD::do_convertfs(ObjectStore*)+0x1a) [0x64e75a]
 8: (main()+0x33e4) [0x613044]
 9: (__libc_start_main()+0xfd) [0x31e6a1ed1d]
 10: /usr/bin/ceph-osd() [0x60ec19]
 NOTE: a copy of the executable, or `objdump -rdS <executable>` is needed to interpret this.

--- logging levels ---
   0/ 5 none
   0/ 0 lockdep
   0/ 0 context
   0/ 0 crush
   0/ 0 lockdep
   0/ 0 context
   0/ 0 crush
   0/ 0 mds
   1/ 5 mds_balancer
   1/ 5 mds_balancer
   1/ 5 mds_locker   1/ 5 mds_locker
   1/ 5 mds_log   1/ 5 mds_log
   1/ 5 mds_log_expire

   1/ 5 mds_migrator   1/ 5 mds_migrator
   0/ 0 buffer

   0/ 0 timer

   0/ 1 filer

   0/ 1 striper

   0/ 1 objecter

   0/ 5 rados

   0/ 0 rbd

   0/ 5 rbd_replay

   0/ 0 journaler

   0/ 5 objectcacher
   0/ 5 client   0/ 5 client
   0/ 0 osd   0/ 0 osd
   0/ 0 optracker   0/ 0 optracker
   0/ 0 objclass   0/ 0 objclass
   0/ 0 filestore   0/ 0 filestore
   1/ 3 keyvaluestore
   1/ 3 keyvaluestore
   0/ 0 journal

   0/ 0 ms

   0/ 0 mon
   0/ 0 monc
   0/ 0 paxos
   0/ 0 tp

   0/ 0 monc
   0/ 0 paxos
   0/ 0 tp
   0/ 0 auth
   1/ 5 crypto
   1/ 5 crypto
   0/ 0 finisher

   0/ 0 heartbeatmap

   0/ 0 perfcounter

   1/ 5 rgw

   1/10 civetweb

   1/ 5 javaclient

   0/ 0 asok

   0/ 0 throttle

   0/ 0 refs

  -2/-2 (syslog threshold)

  -1/-1 (stderr threshold)

  max_recent     10000

  max_new         1000

  log_file /var/log/ceph/ceph-osd.4.log

--- end dump of recent events ---
2014-12-24 10:53:40.400275 7f3fbbd78800 -1 *** Caught signal (Aborted) **
 in thread 7f3fbbd78800

 ceph version 0.87 (c51c8f9d80fa4e0168aa52685b8de40e42758578)
 1: /usr/bin/ceph-osd() [0xa02425]
 2: /lib64/libpthread.so.0() [0x31e6e0f710]
 3: (gsignal()+0x35) [0x31e6a32925]
 4: (abort()+0x175) [0x31e6a34105]
 5: (__gnu_cxx::__verbose_terminate_handler()+0x12d) [0x31f2abea7d]
 NOTE: a copy of the executable, or `objdump -rdS <executable>` is needed to interpret this.

--- begin dump of recent events ---
     0> 2014-12-24 10:53:40.400275 7f3fbbd78800 -1 *** Caught signal (Aborted) **
 in thread 7f3fbbd78800

 ceph version 0.87 (c51c8f9d80fa4e0168aa52685b8de40e42758578)
 1: /usr/bin/ceph-osd() [0xa02425]
 2: /lib64/libpthread.so.0() [0x31e6e0f710]
 3: (gsignal()+0x35) [0x31e6a32925]
 4: (abort()+0x175) [0x31e6a34105]
 5: (__gnu_cxx::__verbose_terminate_handler()+0x12d) [0x31f2abea7d]
 NOTE: a copy of the executable, or `objdump -rdS <executable>` is needed to interpret this.

--- logging levels ---
   0/ 5 none
   0/ 0 lockdep
   0/ 0 context
   0/ 0 crush
   0/ 0 mds
   1/ 5 mds_balancer

   0/ 0 lockdep
   0/ 0 context
   0/ 0 crush
   0/ 0 mds
   1/ 5 mds_balancer
   1/ 5 mds_locker
   1/ 5 mds_log
   1/ 5 mds_log_expire
   1/ 5 mds_log_expire
   1/ 5 mds_migrator
   1/ 5 mds_migrator
   0/ 0 buffer

   0/ 0 timer
   0/ 1 filer

   0/ 1 striper

   0/ 1 objecter

   0/ 5 rados

   0/ 0 rbd

   0/ 5 rbd_replay

   0/ 0 journaler

   0/ 5 objectcacher

   0/ 5 client

   0/ 0 osd

   0/ 0 optracker

   0/ 0 objclass

   0/ 0 filestore

   1/ 3 keyvaluestore

   0/ 0 journal

   0/ 0 ms

   0/ 0 mon

   0/ 0 monc

   0/ 0 paxos
   0/ 0 tp   0/ 0 tp
   0/ 0 auth   0/ 0 auth
   1/ 5 crypto   1/ 5 crypto
   0/ 0 finisher   0/ 0 finisher
   0/ 0 heartbeatmap
   0/ 0 perfcounter   0/ 0 heartbeatmap
   0/ 0 perfcounter
   1/ 5 rgw

   1/10 civetweb

   1/ 5 javaclient

   0/ 0 asok
   0/ 0 throttle
   0/ 0 refs
  -2/-2 (syslog threshold)
  -1/-1 (stderr threshold)
  max_recent     10000
  max_new         1000
  0/ 0 asok
   0/ 0 throttle
   0/ 0 refs
  -2/-2 (syslog threshold)
  -1/-1 (stderr threshold)
  max_recent     10000
  max_new         1000
  log_file /var/log/ceph/ceph-osd.4.log
--- end dump of recent events ---



暂时无法解决,有遇到过类似问题的朋友吗?

ceph osd盘挂掉,无法修复