Как можно исправить ошибку Ceph, связанную с сообщением «OSD count 2 < osd_pool_default_size 3»?

Как правильно добавить параметры конфигурации кластера Ceph для исправления предупреждения о соответствии количества OSD и параметра osd_pool_default_size?
  • 25 января 2024 г. 14:19
Ответы на вопрос 2
Ошибка "OSD count 2 < osd_pool_default_size 3" в Ceph указывает на то, что количество OSD (Object Storage Daemons) в вашем кластере меньше, чем заданный параметр `osd_pool_default_size`, который описывает желаемое количество реплик для каждого объекта в пуле. Это может быть вызвано различными причинами, например, один из OSD может быть неактивен или в кластере не было достаточного количества OSD с самого начала.

Для решения этого вопроса вы можете использовать одну из двух стратегий:

1. Добавление новых OSD в ваш кластер, чтобы количество OSD соответствовало или превышало `osd_pool_default_size`.
2. Изменение параметра `osd_pool_default_size` так, чтобы он соответствовал текущему количеству OSD в вашем кластере.

### Добавление новых OSD
Если вы хотите увеличить количество OSD в вашем кластере:

1. Подготовьте новое устройство хранения или сервер для использования в качестве OSD.
2. Используйте команду Ceph для добавления нового OSD:
   ```
   ceph-deploy osd create --data <device> <host>
   ```
   Здесь `<device>` - это имя устройства, на котором должен быть развернут OSD, а `<host>` - имя хоста.

### Изменение `osd_pool_default_size`
Если вы хотите изменить параметр `osd_pool_default_size`:

1. Отредактируйте файл конфигурации Ceph на всех мониторах (`ceph.conf`), который обычно находится в `/etc/ceph/`.

2. Найдите параметр `osd_pool_default_size` и измените его значение на количество доступных OSD в вашем кластере (в данном случае на 2):
   ```
   osd_pool_default_size = 2
   ```
   Учтите, что уменьшение количества реплик может снизить устойчивость кластера к отказам.

3. Перезапустите все демоны мониторов, чтобы применить изменения:
   ```
   sudo systemctl restart ceph-mon.target
   ```
   Или, если вы используете другой способ управления сервисами, перезапустите их соответствующим образом.

### Применение изменений в Ceph

После того как вы изменили конфигурацию или добавили OSD, вам нужно удостовериться, что кластер применил новые параметры:

1. Дождитесь, пока кластер перейдет в состояние `HEALTH_OK`, исполнив следующую команду несколько раз и проверяя статус:
   ```
   ceph -s
   ```
2. Если вы добавляли новые OSD, убедитесь, что они были правильно интегрированы и не имеют ошибок.

Помните, что изменение конфигурации `osd_pool_default_size` должно быть продиктовано вашими требованиями к отказоустойчивости и доступности данных. Если вы уменьшаете этот параметр для соответствия меньшему количеству OSD, вы увеличиваете риск потери данных в случае сбоев. Поэтому этот шаг следует считать временным решением до тех пор, пока вы не сможете добавить дополнительные OSD в ваш кластер.
Добавить OSD на ноды, и добавить ноды, если не хватсет.
Похожие вопросы