UBUNTU — это не про Enterprise или почему «твой софт гавно»

UBUNTU — это не про Enterprise или почему «твой софт гавно»

И начнем с того, что я унылое старое **уйло. Которое «не рубит фишку» в серверных решениях для Борщеварок. Данный высер только мое личное мнение и не должно никого **ать.

А началась наша история не так давно, всего-то 2 пересоздания виртуалки назад. Так как в большинство сервисов развернуто на CentOS, а я ярый адепт RHEL — развертывание сервиса «только DEB или DНocker« — было воспринято без особого энтузиазма. Но задача стоит и ее надо решать.

Предварительное тестирование

Учитывая выше «озвученые» оговорки, а так же наличие вполне рабочего вот уже несколько лет XMPP сервера на ejabberd(в момент написания 20.03) — я принял решение, развернуть для начала на тестовой виртуалке jitsi-meet из исходников.

Вооружившись https://blog.jabberhead.tk/2020/03/16/install-jitsi-meet-alongside-ejabberd/ за короткое время, удачно развернул сервис из исходников, прикрутил успешно его к уже существующему ejabberd.

Ничего не предвещало… Воодушевившись «быстрой и простой установкой» на тестовом хосте. Посетовав на отсутствие RPM и не желанием собирать их самостоятельно для продукта на JAVA — решил для публичного теста развернуть все на Ubuntu Server 18.04, там же есть пакеты и разрабы «рекомендуют»… Ох, как же я ошибался.

OpenSource со всеми вытекающими «благами».

Зайдя на страницу https://github.com/jitsi/jitsi-meet мы видим два варианта, которые должны упростить нам жизнь…(злобный смех за кадром):

На крайний случай там же detailed manual installation instructions.

Я по своей наивности выбрал https://jitsi.org/downloads/ubuntu-debian-installations-instructions/. Так вот — «идут на***й» такие решения.

root@meet:/# cd /tmp
root@meet:/tmp# wget -qO - https://download.jitsi.org/jitsi-key.gpg.key | apt-key add -
OK
root@meet:/tmp# sh -c "echo 'deb https://download.jitsi.org stable/' > /etc/apt/sources.list.d/jitsi-stable.list"

root@meet:/tmp# apt-get -y update
Hit:1 http://ua.archive.ubuntu.com/ubuntu bionic InRelease
Hit:2 http://ua.archive.ubuntu.com/ubuntu bionic-updates InRelease
Hit:3 http://ua.archive.ubuntu.com/ubuntu bionic-backports InRelease
Get:4 https://download.jitsi.org stable/ InRelease [1,882 B]
Get:5 http://security.ubuntu.com/ubuntu bionic-security InRelease [88.7 kB]
Get:6 https://download.jitsi.org stable/ Packages [40.7 kB]
Fetched 131 kB in 1s (158 kB/s)
Reading package lists... Done

root@meet:/tmp# apt-get -y install jitsi-meet
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
  ca-certificates-java coturn fontconfig-config fonts-dejavu-core java-common jicofo jitsi-meet-prosody jitsi-meet-turnserver jitsi-meet-web jitsi-meet-web-config jitsi-videobridge2 libevent-core-2.1-6 libevent-extra-2.1-6
  libevent-openssl-2.1-6 libevent-pthreads-2.1-6 libfontconfig1 libgd3 libhiredis0.13 libmysqlclient20 libnginx-mod-http-geoip libnginx-mod-http-image-filter libnginx-mod-http-xslt-filter libnginx-mod-mail libnginx-mod-stream
  libpcsclite1 libpq5 libxi6 libxpm4 libxrender1 libxtst6 lua-bitop lua-event lua-expat lua-filesystem lua-sec lua-socket lua5.1 mysql-common nginx nginx-common nginx-core openjdk-8-jre-headless prosody ssl-cert x11-common
Suggested packages:
  sip-router default-jre libgd-tools pcscd fcgiwrap nginx-doc libnss-mdns fonts-dejavu-extra fonts-ipafont-gothic fonts-ipafont-mincho fonts-wqy-microhei fonts-wqy-zenhei fonts-indic lua-dbi-mysql lua-dbi-postgresql lua-dbi-sqlite3
  lua-zlib openssl-blacklist
The following NEW packages will be installed:
  ca-certificates-java coturn fontconfig-config fonts-dejavu-core java-common jicofo jitsi-meet jitsi-meet-prosody jitsi-meet-turnserver jitsi-meet-web jitsi-meet-web-config jitsi-videobridge2 libevent-core-2.1-6 libevent-extra-2.1-6
  libevent-openssl-2.1-6 libevent-pthreads-2.1-6 libfontconfig1 libgd3 libhiredis0.13 libmysqlclient20 libnginx-mod-http-geoip libnginx-mod-http-image-filter libnginx-mod-http-xslt-filter libnginx-mod-mail libnginx-mod-stream
  libpcsclite1 libpq5 libxi6 libxpm4 libxrender1 libxtst6 lua-bitop lua-event lua-expat lua-filesystem lua-sec lua-socket lua5.1 mysql-common nginx nginx-common nginx-core openjdk-8-jre-headless prosody ssl-cert x11-common
0 upgraded, 46 newly installed, 0 to remove and 0 not upgraded.
Need to get 120 MB of archives.
After this operation, 244 MB of additional disk space will be used.
Get:1 http://ua.archive.ubuntu.com/ubuntu bionic-updates/main amd64 ca-certificates-java all 20180516ubuntu1~18.04.1 [12.2 kB]
Get:2 http://ua.archive.ubuntu.com/ubuntu bionic-updates/main amd64 java-common all 0.68ubuntu1~18.04.1 [14.5 kB]
Get:3 http://ua.archive.ubuntu.com/ubuntu bionic/main amd64 fonts-dejavu-core all 2.37-1 [1,041 kB]
Get:4 http://ua.archive.ubuntu.com/ubuntu bionic/main amd64 fontconfig-config all 2.12.6-0ubuntu2 [55.8 kB]
Get:5 http://ua.archive.ubuntu.com/ubuntu bionic/main amd64 libfontconfig1 amd64 2.12.6-0ubuntu2 [137 kB]
Get:6 http://ua.archive.ubuntu.com/ubuntu bionic/main amd64 libpcsclite1 amd64 1.8.23-1 [21.3 kB]
Get:7 http://ua.archive.ubuntu.com/ubuntu bionic/main amd64 libxi6 amd64 2:1.7.9-1 [29.2 kB]
Get:8 http://ua.archive.ubuntu.com/ubuntu bionic/main amd64 libxrender1 amd64 1:0.9.10-1 [18.7 kB]
Get:9 http://ua.archive.ubuntu.com/ubuntu bionic-updates/main amd64 x11-common all 1:7.7+19ubuntu7.1 [22.5 kB]
Get:10 http://ua.archive.ubuntu.com/ubuntu bionic/main amd64 libxtst6 amd64 2:1.2.3-1 [12.8 kB]
Get:11 http://ua.archive.ubuntu.com/ubuntu bionic-updates/universe amd64 openjdk-8-jre-headless amd64 8u242-b08-0ubuntu3~18.04 [27.5 MB]
Get:12 https://download.jitsi.org stable/ jitsi-videobridge2 2.1-183-gdbddd169-1 [33.2 MB]
Get:13 http://ua.archive.ubuntu.com/ubuntu bionic-updates/main amd64 nginx-common all 1.14.0-0ubuntu1.7 [37.4 kB]
Get:14 http://ua.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libnginx-mod-http-geoip amd64 1.14.0-0ubuntu1.7 [11.2 kB]
Get:15 http://ua.archive.ubuntu.com/ubuntu bionic/main amd64 libxpm4 amd64 1:3.5.12-1 [34.0 kB]
Get:16 http://ua.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libgd3 amd64 2.2.5-4ubuntu0.4 [119 kB]
Get:17 http://ua.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libnginx-mod-http-image-filter amd64 1.14.0-0ubuntu1.7 [14.6 kB]
Get:18 http://ua.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libnginx-mod-http-xslt-filter amd64 1.14.0-0ubuntu1.7 [13.0 kB]
Get:19 http://ua.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libnginx-mod-mail amd64 1.14.0-0ubuntu1.7 [41.8 kB]
Get:20 http://ua.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libnginx-mod-stream amd64 1.14.0-0ubuntu1.7 [63.7 kB]
Get:21 http://ua.archive.ubuntu.com/ubuntu bionic-updates/main amd64 nginx-core amd64 1.14.0-0ubuntu1.7 [413 kB]
Get:22 http://ua.archive.ubuntu.com/ubuntu bionic-updates/main amd64 nginx all 1.14.0-0ubuntu1.7 [3,596 B]
Get:23 http://ua.archive.ubuntu.com/ubuntu bionic/universe amd64 lua-expat amd64 1.3.0-4 [12.8 kB]
Get:24 http://ua.archive.ubuntu.com/ubuntu bionic/universe amd64 lua-filesystem amd64 1.6.3-1 [9,930 B]
Get:25 http://ua.archive.ubuntu.com/ubuntu bionic/universe amd64 lua5.1 amd64 5.1.5-8.1build2 [93.2 kB]
Get:26 http://ua.archive.ubuntu.com/ubuntu bionic/universe amd64 lua-bitop amd64 1.0.2-5 [6,680 B]
Get:27 http://ua.archive.ubuntu.com/ubuntu bionic/universe amd64 lua-socket amd64 3.0~rc1+git+ac3201d-4 [70.5 kB]
Get:28 http://ua.archive.ubuntu.com/ubuntu bionic/universe amd64 lua-sec amd64 0.6-4 [29.5 kB]
Get:29 http://ua.archive.ubuntu.com/ubuntu bionic/main amd64 ssl-cert all 1.0.39 [17.0 kB]
Get:30 http://ua.archive.ubuntu.com/ubuntu bionic/universe amd64 prosody amd64 0.10.0-1build1 [244 kB]
Get:31 http://ua.archive.ubuntu.com/ubuntu bionic/main amd64 libevent-core-2.1-6 amd64 2.1.8-stable-4build1 [85.9 kB]
Get:32 http://ua.archive.ubuntu.com/ubuntu bionic/main amd64 libevent-extra-2.1-6 amd64 2.1.8-stable-4build1 [56.2 kB]
Get:33 http://ua.archive.ubuntu.com/ubuntu bionic/main amd64 libevent-openssl-2.1-6 amd64 2.1.8-stable-4build1 [11.8 kB]
Get:34 http://ua.archive.ubuntu.com/ubuntu bionic/main amd64 libevent-pthreads-2.1-6 amd64 2.1.8-stable-4build1 [5,228 B]
Get:35 http://ua.archive.ubuntu.com/ubuntu bionic/universe amd64 libhiredis0.13 amd64 0.13.3-2.2 [25.3 kB]
Get:36 http://ua.archive.ubuntu.com/ubuntu bionic/main amd64 mysql-common all 5.8+1.0.4 [7,308 B]
Get:37 http://ua.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libmysqlclient20 amd64 5.7.29-0ubuntu0.18.04.1 [690 kB]
Get:38 http://ua.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libpq5 amd64 10.12-0ubuntu0.18.04.1 [107 kB]
Get:39 http://ua.archive.ubuntu.com/ubuntu bionic-updates/universe amd64 coturn amd64 4.5.0.7-1ubuntu2.18.04.1 [320 kB]
Get:40 http://ua.archive.ubuntu.com/ubuntu bionic/universe amd64 lua-event amd64 0.4.3-2build1 [12.0 kB]
Get:41 https://download.jitsi.org stable/ jicofo 1.0-549-1 [49.6 MB]
Get:42 https://download.jitsi.org stable/ jitsi-meet-web 1.0.4025-1 [5,926 kB]
Get:43 https://download.jitsi.org stable/ jitsi-meet-web-config 1.0.4025-1 [13.5 kB]
Get:44 https://download.jitsi.org stable/ jitsi-meet-prosody 1.0.4025-1 [34.7 kB]
Get:45 https://download.jitsi.org stable/ jitsi-meet 2.0.4468-1 [2,864 B]
Get:46 https://download.jitsi.org stable/ jitsi-meet-turnserver 1.0.4025-1 [6,064 B]
Fetched 120 MB in 4s (32.7 MB/s)
Extracting templates from packages: 100%
Preconfiguring packages ...

СТОП!

А никого не смущает Configuring jitsi-videobridge2(это что за ДВА? в инструкции ничего про ДВА не было) ? или та простыня пакетов которые тянет за собой jitsi-meet ? При установке из исходников как мне кажется было по меньше. Но это я сейчас такой умный. При первой инсталляции тупо забил. Что закончилось — удалением виртуалки и созданием заново.

А теперь вернемся к «рекомендациям разработчиков» — https://github.com/jitsi/jitsi-meet/blob/master/doc/quick-install.md

Секция Uninstall:

apt-get purge jigasi jitsi-meet jitsi-meet-web-config jitsi-meet-prosody jitsi-meet-turnserver jitsi-meet-web jicofo jitsi-videobridge2

Sometimes the following packages will fail to uninstall properly:
jigasi
jitsi-videobridge

А как быть с той прорвой зависимостей? Ну да ладно — меня больше поразило: Sometimes

Вы б**ть издеваетесь?

в инструкцииях к stable написано что?

Install the full suite:
sudo apt-get -y install jitsi-meet
or only the packages you need like for example:

sudo apt-get -y install jitsi-videobridge
sudo apt-get -y install jicofo
sudo apt-get -y install jigasi

и б**ть после такой х**ни Sometimes??? Да ну на**й.