как повторно подключить Mon и mgr Ceph к кластеру

#ceph

#ceph

Вопрос:

у меня такая ситуация, и я могу получить доступ к панели управления ceph. у меня было 5 mon, но 2 из них вышли из строя, и один из них — загрузочный узел mon, так что у меня есть mgr, и я получил это от этого узла.

     2020-10-14T18:59:46.904 0330 7f9d2e8e9700 -1 monclient(hunting): handle_auth_bad_method server allowed_methods [2] but i only support [2,1]
  cluster:
    id:     e97c1944-e132-11ea-9bdd-e83935b1c392
    health: HEALTH_WARN
            no active mgr

  services:
    mon: 3 daemons, quorum srv4,srv5,srv6 (age 2d)
    mgr: no daemons active (since 2d)
    mds: heyatfs:1 {0=heyfs.srv10.lxizhc=up:active} 1 up:standby
    osd: 54 osds: 54 up (since 47h), 54 in (since 3w)

  task status:
    scrub status:
        mds.heyfs.srv10.lxizhc: idle

  data:
    pools:   3 pools, 65 pgs
    objects: 223.95k objects, 386 GiB
    usage:   1.2 TiB used, 97 TiB / 98 TiB avail
    pgs:     65 active clean

  io:
    client:   105 KiB/s rd, 328 KiB/s wr, 0 op/s rd, 0 op/s wr
  

Я должен рассказать всю историю, сначала я использовал cephadm для создания своего кластера, и я новичок в ceph, у меня есть 15 серверов, и на 14 из них есть контейнер OSD, а на 5 из них был mon, а мой загрузочный mon, который является srv2, имеет mgr.
2 из этих серверов имеют общедоступный IP-адрес, и я использовал один из них в качестве клиента (я знаю, что в этой структуре много вопросов, но моя компания заставляет меня это делать, а также я новичок в ceph, так что сейчас это так). 2 недели назад я потерял 2 экранных меню, и я сказал центру обработки данных, который дает мне эти серверы, чтобы изменить эти 2 жестких диска, они перезапускают эти серверы, и, к сожалению, эти серверы были моим сервером Mon. после перезапуска этих серверов на одном из них вернулся srv5, но я мог видеть, что srv3 отсутствует в кворуме
, поэтому я начинаюрешите эту проблему, поэтому я использовал эту команду в оболочке ceph -fsid …

 ceph orch apply mon srv3
ceph mon remove srv3
  

через некоторое время я вижу на своей панели управления srv2, что мои ускорители mon и mgr не работают, и когда я использовал ceph -s, ssrv2 отсутствует, и я вижу srv2 mon в удаленном каталоге

 root@srv2:/var/lib/ceph/e97c1944-e132-11ea-9bdd-e83935b1c392# ls
crash  crash.srv2  home  mgr.srv2.xpntaf  osd.0  osd.1  osd.2  osd.3  removed
  

но mgr.srv2.xpntaf запущен, и, к сожалению, я потерял доступ к панели мониторинга ceph

я попытался добавить srv2 и 3 в monmap с

   576  ceph orch daemon add mon srv2:172.32.X.3
  577  history | grep dump
  578  ceph mon dump
  579  ceph -s
  580  ceph mon dump
  581  ceph mon add srv3 172.32.X.4:6789
  

и теперь

 root@srv2:/# ceph -s
  cluster:
    id:     e97c1944-e132-11ea-9bdd-e83935b1c392
    health: HEALTH_WARN
            no active mgr
            2/5 mons down, quorum srv4,srv5,srv6

  services:
    mon: 5 daemons, quorum srv4,srv5,srv6 (age 16h), out of quorum: srv2, srv3
    mgr: no daemons active (since 2d)
    mds: heyatfs:1 {0=heyatfs.srv10.lxizhc=up:active} 1 up:standby
    osd: 54 osds: 54 up (since 2d), 54 in (since 3w)

  task status:
    scrub status:
        mds.heyatfs.srv10.lxizhc: idle

  data:
    pools:   3 pools, 65 pgs
    objects: 223.95k objects, 386 GiB
    usage:   1.2 TiB used, 97 TiB / 98 TiB avail
    pgs:     65 active clean

  io:
    client:   105 KiB/s rd, 328 KiB/s wr, 0 op/s rd, 0 op/s wr
  

и я должен сказать, что он ceph orch host ls не работает и зависает, когда я его запускаю, и я думаю, что это из-за этой ошибки нет активного mgr, а также когда я вижу, что удаленный каталог mon.srv2 есть, и вы можете увидеть файл unit.run, поэтому я использовал эту команду для повторного запуска контейнера, но там написаноmon.srv2 отсутствует на карте mon и не имеет определенного IP-адреса, и, кстати, я должен сказать, что после ceph orch apply mon srv3 того, как я смог увидеть новый контейнер с новым fsid на сервере srv3

Теперь вся моя проблема в том, что я запустил эту команду ceph orch apply mon srv3 , потому что, когда вы видите установочный документ :

Для развертывания мониторов на определенном наборе хостов:

 # ceph orch apply mon *<host1,host2,host3,...>*
  

Обязательно включите первый (загрузочный) хост в этот список.

и я не видел этой строки!!!

теперь мне удается запустить еще один mgr, но я получил это

 root@srv2:/var/lib/ceph/mgr# ceph -s
2020-10-15T13:11:59.080 0000 7f957e9cd700 -1 monclient(hunting): handle_auth_bad_method server allowed_methods [2] but i only support [2,1]
  cluster:
    id:     e97c1944-e132-11ea-9bdd-e83935b1c392
    health: HEALTH_ERR
            1 stray daemons(s) not managed by cephadm
            2 mgr modules have failed
            2/5 mons down, quorum srv4,srv5,srv6

  services:
    mon: 5 daemons, quorum srv4,srv5,srv6 (age 20h), out of quorum: srv2, srv3
    mgr: srv4(active, since 8m)
    mds: heyatfs:1 {0=heyatfs.srv10.lxizhc=up:active} 1 up:standby
    osd: 54 osds: 54 up (since 2d), 54 in (since 3w)

  task status:
    scrub status:
        mds.heyatfs.srv10.lxizhc: idle

  data:
    pools:   3 pools, 65 pgs
    objects: 301.77k objects, 537 GiB
    usage:   1.6 TiB used, 97 TiB / 98 TiB avail
    pgs:     65 active clean

  io:
    client:   180 KiB/s rd, 597 B/s wr, 0 op/s rd, 0 op/s wr
  

и когда я запускаю ceph orch host ls , я вижу это

 root@srv2:/var/lib/ceph/mgr# ceph orch host ls
HOST   ADDR          LABELS  STATUS
srv10  172.32.x.11
srv11  172.32.x.12
srv12  172.32.x.13
srv13  172.32.x.14
srv14  172.32.x.15
srv15  172.32.x.16
srv2   srv2
srv3   172.32.x.4
srv4   172.32.x.5
srv5   172.32.x.6
srv6   172.32.x.7
srv7   172.32.x.8
srv8   172.32.x.9
srv9   172.32.x.10
  

Комментарии:

1. Что вы пробовали до сих пор? Я бы предложил начать с перезапуска контейнеров. Но если только контейнеры не работают, вы должны увидеть статус кластера, показывающий 5 демонов mon, а не 3. Итак, вы каким-то образом удалили другие контейнеры mon? Вы запускали что-то вроде ceph orch apply -i file.yml ? Вы изменили размещение, чтобы оркестратор удалял узлы? Требуется более подробная информация.

2. Я должен рассказать всю историю, поэтому я редактирую свой приведенный выше запрос о помощи

3. Хотя я не уверен, что понял все шаги, но это, похоже, не является большой проблемой. Роль MGR некритична, вы можете просто назначить эту роль существующим MONS и запустить ceph orch apply mgr ... также для нескольких узлов, чтобы у вас было несколько MGRS, один из них будет активным, и ваша панель мониторинга снова будет доступна. Что касается MONS, вы должны либо выяснить, почему контейнеры srv2 и srv3 не запускаются ( cephadm logs --name <NAME> ), либо просто стереть их (осторожно !!) и воссоздать их. Пока у вас есть кворум, ваш кластер будет доступен для клиентов.

4. Я знаю это, но у меня есть ограничения, одно из которых — orch ничего не делает и зависает, когда я его использую, и 2 — мне нужна панель мониторинга в общедоступной среде, потому что (я сказал, что у меня есть 2 сервера с общедоступным IP-адресом в этом центре обработки данных, один из них является клиентом, а один из них — srv2, мой загрузчику mon и mgr и у меня был только 1 mgr, и это еще одна проблема, с которой я сейчас разбираюсь, вся моя сеть находится в другом центре обработки данных)

5. Возможно, вы правы, отсутствие mgr приведет к недоступности модуля orch (поскольку это модуль менеджера). Я пока не слишком разбираюсь в ceph с контейнерами, но вы могли бы временно настроить неконтейнеризированную службу mgr и перейти оттуда ( docs.ceph.com/en/latest/mgr/administrator /… ).