Порядок обновления

Добрый день.
уточните, обновление следует делать последовательно 6.5.2>6.6>6.7 или можно сразу накатывать последнюю версию?

и в продолжение. попробовал, сразу все сломал.
https://docs.monqlab.com/current/ru/reference/monqctl/#примеры-использования

успешно задал токен, на следующем шаге конфиг сломался.
monqctl config set context domain --instance=domain --credential=monq-user --releasehub=monq-release-hub
The configuration file can't be read. Maybe it is not well formed. Detailes: (Line: 24, Col: 7, Idx: 755) - (Line: 24, Col: 7, Idx: 755): While scanning a multiline plain scalar, found invalid mapping..
тоже самое для любых команд, которые работали в предыдущем шаге или даже для удаления.
monqctl config delete instance sm-monq-ru
monqctl config delete credential smon-user

ошибка заботливо пишет в какой строке проблема, но в каком файле?) и как чинить.

(файл лежит на VM-машине, т.е. не ищите его внутри pod-ов или docker)
/root/.monq/config.yml

  • часто ломается [дублируется кусок в конце]. Поэтому:
  1. (предварительно скопировав файл, чтобы не бояться утратить настройки, если мой способ не подойдет);
  2. исправьте (каким-либо редактором текста) [найдя в середине файла, в секции ‘release-hubs:’ строку с ‘name: “monq-release-hub”’ - изначально она была последней [выше посмотрите еще в этой же секции строку с ‘token’ и подставьте свой, если там осталось начальное “000000”]. Удалите лишнее - хвост];
  3. скопируйте на будущее;
  4. (перезагружать не требуется).

только “последовательно” (в заголовке описания обновления приведены требования - они “узкие”).

спасибо. файл починил.

monqctl registry get services выдает ОК, но дальше шаг опять не идет.

monqctl release use-version 6.6.0 --product=monq
The SSL connection could not be established, see inner exception.

(в этот момент запускается скачивание обновления [модуля ‘monq’ и версии] с сервера [из секции release-hubs конфига] https://release-hub.monqlab.com)

  1. Проверьте внешнюю связь:
    curl https://release-hub.monqlab.com
  • нормально, если ответит ‘403 Forbidden’ (связь есть, но в curl не хватает токена).
  1. часто оказывается не поднят сетевой интерфейс.
  • или внешний (у меня, по ‘ip addr’ - ‘2: ens18: <BROADCAST,MULTICAST,UP,LOWER_UP>’);
  • или внутренний, тот что с ip=10.10.40.50 (у меня: ‘3: lo1: <NO-CARRIER,BROADCAST,MULTICAST,UP>’)
  1. “SSL” (в других приложениях) может ругаться, если сертификат не нравится (но тогда обычно пишет “no valid”. Как здесь, не знаю - я не саппортист, а такой же, как Вы - “коммунист”):
  • в образе VM - всё преднастроено;
  • вчера я тоже обновлял, ругани не было, значит и на сервере - норма (но попробуйте еще повторить);
  • может вклиниваться антивирусник (типа, Касперский), подставляя свой сертификат. Но у меня такой проблемы с monq не возникло. И Вам удалось установить “проект” monq.
  1. Кстати:
  • в логе установки monq можно посмотреть, как отрабатывали такие же команды (и вручную их повторить - сверить реакцию);
  • много чего можно понять, просмотрев описания более старых обновлений;
  • часто имеет смысл поискать в документации, выбрав другую версию, язык.

курл дает 403 Forbidden.

этот ип у меня встал на eth0 с маком, который для интернета и был заменен на dhcp. То есть инет то есть, но возможно порушена внутренняя сязь с чемто. Хоть сам монк установился и функционирует.
Инструкциия не предполагает, что образу нужно 2 сетевухи. или как?

  1. 10.10.40.50 прописан внутри (скриптов, pod’ов) - т.е. “должен быть!”.
  • и, раз успешно отработало задание install_monq, он “был” (посм. в логе, на каком интерфейсе).
  • а может он (все-таки) есть, ведь “монк … функционирует.”?
  • “был заменен” - “руками” или “автоматически”? (вопрос риторический, я не знаю как он может перепрыгнуть).
  1. >“Инструкция не предполагает, что образу нужно 2 сетевухи. или как?”
    Скорее всего, 2 - это “нестандартный случай”.

Но почему бы не попробовать.

  1. Вот как у меня:
    [root@d-head ~]# ip route
    default via 10.72.14.254 dev ens18 proto dhcp metric 100
    10.10.40.50 dev lo1 proto kernel scope link src 10.10.40.50 metric 425
    10.72.14.0/24 dev ens18 proto kernel scope link src 10.72.14.161 metric 100
    10.244.0.0/24 dev cni0 proto kernel scope link src 10.244.0.1
    172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1
    [root@d-head ~]#
  2. Может быть проще повторить? (на VM с “чистым” образом monq, и пройти без временных разрывов);
  3. Если “опять”, скорее всего что-то (стало) не так с настройками:
  • движка виртуализации (в “VMware Workstation”: Edit\“Virtual Network Editor”. Тут помочь не смогу - уже давно переехал на Proxmox);
  • VM/Сетевой интерфейс (другой Мост).

неа, первым пришлось снести статику, чтобы вообще был ssh. Раз это была моя, мной созданная сетевуха, я не потерпел подобной интервенции)
остальные 10 для контейнеров прописаны внутри вм, но не в гипервизоре же.

у нас Xen.

суть теперь понятна. накачу образ заново.

поставил начисто, в этот раз 2 сетевухи. на eth0 висит 10.20.0.50/24, на второй моя сеть.

в конце /root/.monq/config.yml опять было

lab.com"
  name: "monq-release-hub"

как в прошлый раз. я такое не вводил, вобщем очень странный файл.

ну и опять тоже самое.

 monqctl release use-version 6.6.0 --product=monq
The SSL connection could not be established, see inner exception.

monqctl пробовал 1.2.1 и 1.2.2

default route соответсвенно с eth0 снят. трафик наружу ходит как надо, репы обновляются.

ip route
default via 172.29.1.1 dev eth1 proto dhcp metric 101
10.10.40.50 dev lo1 proto kernel scope link src 10.10.40.50 metric 425
10.20.0.0/24 dev eth0 proto kernel scope link src 10.20.0.50 metric 100
10.244.0.0/24 dev cni0 proto kernel scope link src 10.244.0.1
172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1
172.29.1.0/24 dev eth1 proto kernel scope link src 172.29.1.206 metric 101

но если пытаться сразу после ребута, пока поды не встали, то выходит так.

monqctl release use-version 6.6.0 --product=monq
The MONQ Instance is not responding. Details: Connection refused (pl-microservice-registry.api.monq.*.ru:80)
 monqctl release use-version 6.6.0 --product=monq
The MONQ Instance is not responding. Details: Downstream request failed with status code 503 at 10 ms. Request body: . Response body: <html>
<head><title>503 Service Temporarily Unavailable</title></head>
<body>
<center><h1>503 Service Temporarily Unavailable</h1></center>
<hr><center>nginx/1.19.2</center>
</body>
</html>

значит агент запрос посылает не сразу в репу, а через поды. то есть может затык то не в канале наружу?

Подобные ошибки лечились обновлением корневых сертификатов ОС,
например yum install ca-certificates.
А также в конфиге /root/.monq/config.yml надо проверить, чтобы протокол для release-hub был https

да сертифкаты, помогло. спасибо.
добавляйте такое в документацию)

команда monqctl release use-version 6.6.0 --product=monq прошла, следующая сразу же упала.
опять в конфиге в конце появились битые строки. Этот файл ломается буквально на каждом шаге.
Почистил, стало качать. буду тестить дальше.