2013-10-14 2 views
2

Я модернизирую essax до гризли. Я отметил это примечание https://lists.launchpad.net/openstack/msg16188.html, в котором говорится, что после 1.60 swift будет использоваться новый формат для кольца, но в этой заметке не указано, как обновить файл ring.It только что сказал «Как только весь ваш кластер будет обновлен, только затем обновите версии быстродействующего на коробке, в которой строятся ваши файлы звонков (т. е. где вы запускаете swift-ring-builder). Обновление этой части изменяет формат записанных файлов на диске на диске . Разверните новые файлы звонков на быстрый кластер ". Но после обновления ничего не случилось с файлом звонка, последняя измененная дата файлов звонков осталась прежней.Как быстро обновить файл звонка?

Итак, как можно безопасно обновить файл кольца? Есть ли способ проверить, обновлен ли файл звонка?

+0

Я также прочитал сообщение, в котором говорится, что нужно использовать write_ring для обновления ring.swift-ring-builder account.builder write_ring swift-ring-builder container.builder write_ring swift-ring-builder object.builder write_ring, но я не уверен если он работает .. – shadowlin

ответ

4

Вы можете найти текст в Руководстве администратора - Managing the rings более четко.

Swift 1.6.0 - последняя версия, использующая формат рассола Python. В последующих версиях используется другой формат сериализации. Кольца, созданные Swift версии 1.6.0 и более ранние версии, могут быть прочитаны любой версией, но кольца, созданные после 1.6.0, могут быть прочитаны только версиями Swift, превышающими 1.6.0. Поэтому при обновлении с версии 1.6.0 или более ранней версии до версии более 1.6.0 либо обновляйте Swift на сервере кольцевых вызовов после того, как все узлы Swift успешно обновлены, либо воздержитесь от генерации звонков, пока все узлы Swift не будут успешно обновлены ,

Более новая версия может читать старый формат, поэтому сначала обновите все узлы до более новой версии. А затем восстановите (перебалансировать) файлы с новыми командами swift-ring-builder. И вы получите обновленные файлы звонков.

+0

Я попытался перебалансировать его, и я получил этот корень @ VM-Node-01:/etc/swift # swift-ring-builder account.builder rebalance Никаких разделов не было переназначено. Либо ни один из них не должен быть, или ни один из них не может быть вызван min_part_hours [1]. – shadowlin

+0

Я также прочитал сообщение, в котором говорилось использовать write_ring для обновления ring.swift-ring-builder account.builder write_ring swift-ring-builder container.builder write_ring swift-ring-builder object.builder write_ring – shadowlin

+0

Есть ли способ проверить версию кольца? – shadowlin

Смежные вопросы