Bash - Выбрать следующую доступную переменную - PullRequest
0 голосов
/ 06 августа 2020

Автоматизация некоторых функций, которые в основном добавляют новый будущий узел в кластер redis.

На данный момент существует фиксированное требование, которое составляет 3 узла (скажем, A, B, C) в кластере . Я определил 3 сценария ios

  1. Все три узла имеют 0 слотов, и я запускаю одну команду для создания кластера для 3 узлов, который отлично работает
  2. Любой из узел отключается, и когда он снова запускается, он определяет, что в кластере есть 2 узла, он проверяет занятые слоты с помощью простого оператора if else и присваивает себе доступные слоты
  3. Любые два узла выходят из строя , и когда один из них включен, он может правильно определить, что есть 1 узел, который является частью кластера и его занятые слоты.

Проблема, с которой я столкнулся сегодня, связана с третьим сценарием, в котором: Я хочу назначить любую из доступных переменных слота команде addlot redis-cli.

Например: если узел c занял слот 3, тогда назначьте, скажем, узел A сейчас приближается, затем назначьте либо слот1, либо слот2.

Каким будет наиболее эффективный способ выбрать любой из доступных слотов, не усложняя мой код?

* 1 018 *
...