Изучение 26 методов анализа больших данных: часть 1
Изучение 26 методов анализа больших данных: часть 1
Apache OpenMeetings - это приложение для веб-конференций с открытым исходным кодом. Он написан на Java и поддерживает несколько серверов баз данных. Он предоставляет множество функций, таких как аудио- и видеоконференции, совместное использование экрана, файловый менеджер, система пользовательской модерации, личные сообщения и контакты, встроенный календарь для планов встреч и многое другое. Вы также можете записать сеанс конференц-связи. Он предоставляет SOAP / REST API и несколько плагинов для легкой интеграции с Moodle, Jira, Joomla, Confluence и другими.
В этом руководстве мы будем использовать 192.168.1.1
в качестве общедоступного IP-адреса и в meetings.example.com
качестве имени домена, указывающего на экземпляр Vultr. Обязательно замените все вхождения примера IP-адреса и доменного имени на фактическое.
Обновите базовую систему, используя руководство Как обновить CentOS 7 . После обновления системы перейдите к установке Java.
OpenMeetings написан на Java, поэтому для его работы требуется среда выполнения Java (JRE). Загрузите последний доступный пакет Oracle SE JDK 8 RPM, который включает в себя JRE и JDK.
wget --header 'Cookie: oraclelicense=a' http://download.oracle.com/otn-pub/java/jdk/8u161-b12/2f38c3b165be4555a1fa6e98c45e0808/jdk-8u161-linux-x64.rpm
Установите скачанный пакет.
sudo rpm -Uvh jdk-8u161-linux-x64.rpm
Если Java успешно установлена, вы сможете проверить ее версию.
java -version
Вы увидите следующий вывод.
[user@vultr ~]$ java -version
java version "1.8.0_161"
Java(TM) SE Runtime Environment (build 1.8.0_161-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.161-b12, mixed mode)
Прежде чем мы продолжим, нам нужно будет установить переменные среды JAVA_HOME
и JRE_HOME
. Найдите абсолютный путь к исполняемому файлу JAVA в вашей системе.
readlink -f $(which java)
Вы увидите похожий вывод.
[user@vultr ~]$ readlink -f $(which java)
/usr/java/jdk1.8.0_161/jre/bin/java
Теперь установите переменные среды JAVA_HOME
и в JRE_HOME
соответствии с путем к каталогу Java.
echo "export JAVA_HOME=/usr/java/jdk1.8.0_161" >> ~/.bash_profile
echo "export JRE_HOME=/usr/java/jdk1.8.0_161/jre" >> ~/.bash_profile
Запустите bash_profile
файл.
source ~/.bash_profile
Теперь вы можете запустить echo $JAVA_HOME
команду, чтобы убедиться, что установлена переменная окружения.
[user@vultr ~]$ echo $JAVA_HOME
/usr/java/jdk1.8.0_161
Установите библиотеки ImageMagick и GhostScript.
sudo yum -y install epel-release
sudo yum -y install ImageMagick ghostscript
ImageMagick предоставляет поддержку для загрузки изображений и импорта их на доску. GhostScript позволяет загружать PDF-файлы на доску.
Проверьте версию ImageMagick и GhostScript, чтобы убедиться, что они установлены успешно.
[user@vultr ~]$ identify -version
Version: ImageMagick 6.7.8-9 2016-06-16 Q16 http://www.imagemagick.org
Copyright: Copyright (C) 1999-2012 ImageMagick Studio LLC
Features: OpenMP
[user@vultr ~]$ ghostscript -v
GPL Ghostscript 9.07 (2013-02-14)
Copyright (C) 2012 Artifex Software, Inc. All rights reserved.
Кроме того, нам также потребуется установить Apache OpenOffice или LibreOffice в системе. Установка любого из них позволит OpenMeetings импортировать файлы в форматы документов Office , таких как .doc
, .docx
, .ppt
, .pptx
, или .xlx
. В этом уроке мы установим Apache OpenOffice.
Перейдите во временный каталог и загрузите RPM-пакет Apache OpenOffice.
cd /tmp
wget https://downloads.sourceforge.net/project/openofficeorg.mirror/4.1.5/binaries/en-US/Apache_OpenOffice_4.1.5_Linux_x86-64_install-rpm_en-US.tar.gz
Распакуйте архив и установите все пакеты RPM.
tar xf Apache_OpenOffice_4.1.5_Linux_x86-64_install-rpm_en-US.tar.gz
cd en-US/RPMS
sudo rpm -Uvh *.rpm
sudo rpm -Uvh desktop-integration/openoffice4.1.5-redhat-menus-*.rpm
Чтобы проверить, правильно ли установлен и работает OpenOffice, введите openoffice4 -h
в командной строке. Он распечатает свою версию и краткую справку.
[user@vultr ~]$ openoffice4 -h
OpenOffice 4.1.5 415m1(Build:9789)
Usage: soffice [options] [documents...]
Options:
-minimized keep startup bitmap minimized.
...
Установите репозиторий RPMFusion в своей системе, поскольку он предоставляет предварительно собранные пакеты для FFmpeg и Sound eXchange (SoX).
sudo rpm -Uvh https://download1.rpmfusion.org/free/el/rpmfusion-free-release-7.noarch.rpm
Установите FFmpeg и SoX.
sudo yum -y install ffmpeg sox
FFmpeg и SoX включат запись встречи. Они также помогают в импортирующих мультимедийных файлов , таких как .avi
, .flv
, .mov
и .mp4
в доску. Проверьте установку, проверив версии FFmpeg и SoX.
[user@vultr ~]$ sox --version
sox: SoX v14.4.1
[user@vultr ~]$ ffmpeg -version
ffmpeg version 2.8.13 Copyright (c) 2000-2017 the FFmpeg developers
built with gcc 4.8.5 (GCC) 20150623 (Red Hat 4.8.5-11)
OpenMeetings поддерживает несколько типов серверов баз данных, таких как MySQL, PostgreSQL, Apache, Derby и Oracle. В этом руководстве мы будем использовать сервер PostgreSQL для размещения базы данных OpenMeeting.
PostgreSQL - это объектно-реляционная система баз данных, известная своей стабильностью и скоростью. yum
Репозиторий по умолчанию содержит старую версию PostgreSQL, поэтому добавьте репозиторий PostgreSQL для последней версии приложения в систему.
sudo yum -y install https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-x86_64/pgdg-centos10-10-1.noarch.rpm
Установите сервер базы данных PostgreSQL.
sudo yum -y install postgresql10-server postgresql10-contrib postgresql10
Инициализируйте базу данных.
sudo /usr/pgsql-10/bin/postgresql-10-setup initdb
Запустите сервер PostgreSQL и включите его автоматический запуск во время загрузки.
sudo systemctl start postgresql-10
sudo systemctl enable postgresql-10
Измените пароль для пользователя PostgreSQL по умолчанию.
sudo passwd postgres
Войдите в систему как пользователь PostgreSQL.
sudo su - postgres
Создайте нового пользователя PostgreSQL для пользователя OpenMeetings.
createuser openmeetings
Вы можете использовать любое имя пользователя вместо openmeetings
. Переключитесь на оболочку PostgreSQL.
psql
Установите пароль для вновь созданного пользователя для базы данных OpenMeetings.
ALTER USER openmeetings WITH ENCRYPTED password 'DBPassword';
Замените DBPassword
на безопасный пароль. Создайте новую базу данных для установки OpenMeetings.
CREATE DATABASE openmeetings OWNER openmeetings;
Выход из psql
оболочки.
\q
Переключиться на sudo
пользователя.
exit
Отредактируйте pg_hba.conf
файл, чтобы включить аутентификацию на основе MD5.
sudo nano /var/lib/pgsql/10/data/pg_hba.conf
Найдите следующие строки и измените значения в METHOD
столбце с ident
на md5
.
# TYPE DATABASE USER ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all peer
# IPv4 local connections:
host all all 127.0.0.1/32 ident
# IPv6 local connections:
host all all ::1/128 ident
После обновления конфигурация будет выглядеть следующим образом.
# TYPE DATABASE USER ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all peer
# IPv4 local connections:
host all all 127.0.0.1/32 md5
# IPv6 local connections:
host all all ::1/128 md5
Сохраните файл и выйдите из редактора. Перезапустите PostgreSQL, чтобы изменения вступили в силу.
sudo systemctl restart postgresql-10
Так как все необходимые зависимости установлены. Создайте нового пользователя для OpenMeetings. Для обеспечения безопасности сервера рекомендуется использовать пользователя без полномочий root для запуска OpenMeetings.
sudo adduser -b /var -s /sbin/nologin openmeetings
Приведенная выше команда также создаст домашний каталог openmeetings
пользователя в /var/openmeetings
.
Посетите страницу загрузки Apache OpenMeetings, чтобы получить ссылку на последний доступный выпуск. Загрузите архив OpenMeetings.
cd /tmp
wget http://www-us.apache.org/dist/openmeetings/4.0.1/bin/apache-openmeetings-4.0.1.tar.gz
Распакуйте архив в /var/openmeetings
каталог.
sudo tar xf apache-openmeetings-4.0.1.tar.gz -C /var/openmeetings
Предоставьте право собственности на файлы пользователю OpenMeetings, который мы создали ранее.
sudo chown -R openmeetings:openmeetings /var/openmeetings
Перед запуском приложения нам нужно изменить брандмауэр, чтобы разрешить порты 5080
и 1935
.
sudo firewall-cmd --zone=public --permanent --add-port=5080/tcp
sudo firewall-cmd --zone=public --permanent --add-port=1935/tcp
sudo firewall-cmd --reload
Теперь вы можете запустить приложение.
sudo su -s /bin/bash -c 'cd /var/openmeetings/ && sh red5.sh' openmeetings
Теперь вы можете получить доступ http://192.168.1.1:5080/openmeetings
в вашем любимом браузере. Вы увидите экран приветствия с инструкциями по установке GhostScript.
Поскольку мы уже установили GhostScript, продолжайте. В следующем интерфейсе вам будет предложено указать данные сервера базы данных. Выберите тип базы данных " PostgreSql
" и укажите сведения о сервере базы данных, которые вы настроили во время установки PostgreSQL.
Нажмите на кнопку « Check
», и вы должны получить сообщение: « Database check was successful
». Укажите данные своей учетной записи администратора и имя группы в следующем интерфейсе.
Настройте основные параметры вашей установки; например, чтобы разрешить самостоятельную регистрацию, подтверждение по электронной почте и язык по умолчанию. Также предоставьте данные вашего SMTP-сервера. Если у вас нет готового SMTP-сервера, вы также можете указать детали SMTP позже на панели администратора.
Он попросит вас указать путь к двоичным файлам различных приложений. Укажите /usr/bin
путь для ImageMagick, FFmpeg и SoX. Если приложение предоставляет ошибки для введенного пути, то вы можете использовать, which <binary_name>
чтобы найти абсолютный путь к двоичному файлу. Например, which ffmpeg
должен дать вам в /usr/bin/ffmpeg
качестве вывода. Используйте /opt/openoffice4
в качестве пути к двоичным файлам OpenOffice.
Вы можете пропустить настройку на следующем интерфейсе, так как мы собираемся использовать значения по умолчанию. Наконец, нажмите кнопку « Finish
», чтобы установить приложение и записать базу данных.
OpenMeetings теперь установлен на вашем сервере. Чтобы сделать его более удобным для производства, мы настроим Systemd для управления сервером OpenMeetings. Мы также настроим Nginx с Let's Encrypt SSL в качестве защищенного обратного прокси-сервера для обслуживания приложения.
Хотя мы можем легко запускать и останавливать приложение, используя приведенную выше команду, для управления приложением рекомендуется настроить сервисный модуль Systemd. Это также обеспечит автоматический запуск службы во время загрузки и сбоев.
Остановите сервер OpenMeetings, нажав « Ctrl+C
» или убив оболочку openmeetings
пользователя.
sudo pkill -KILL -u openmeetings
Создайте новый файл модуля Systemd для OpenMeetings Server.
sudo nano /etc/systemd/system/openmeetings.service
Заполните файл.
[Unit]
Description=OpenMeeting Service
After=network.target
[Service]
Type=simple
User=openmeetings
WorkingDirectory=/var/openmeetings
ExecStart=/var/openmeetings/red5.sh
Restart=always
[Install]
WantedBy=multi-user.target
Запустите сервер OpenMeetings и включите его автоматический запуск во время загрузки.
sudo systemctl start openmeetings
sudo systemctl enable openmeetings
Чтобы проверить состояние сервиса, вы можете запустить следующее.
sudo systemctl status openmeetings
Вы увидите похожий вывод.
[root@vultr openmeetings]# sudo systemctl status openmeetings
● openmeetings.service - OpenMeeting Service
Loaded: loaded (/etc/systemd/system/openmeetings.service; enabled; vendor preset: disabled)
Active: active (running) since Wed 2018-01-31 15:40:56 UTC; 38s ago
Main PID: 10522 (java)
CGroup: /system.slice/openmeetings.service
└─10522 /bin/java -Dred5.root=/var/openmeetings -Djava.security.debug=failure -Xms256m...
Jan 31 15:41:29 vultr.guest red5.sh[10522]: [INFO] [Loader:/openmeetings] org.red5.server.Serv...ngs
Jan 31 15:41:29 vultr.guest red5.sh[10522]: [INFO] [Loader:/openmeetings] org.red5.server.Serv...ngs
Jan 31 15:41:29 vultr.guest red5.sh[10522]: DEBUG 01-31 15:41:29.431 16603 343 o.a.o.c.r.Scope...se]
Jan 31 15:41:29 vultr.guest red5.sh[10522]: DEBUG 01-31 15:41:29.531 16703 124 o.a.o.c.r.Scope...ngs
Jan 31 15:41:34 vultr.guest red5.sh[10522]: DEBUG 01-31 15:41:34.421 21593 82 o.a.o.u.Version ...] -
Jan 31 15:41:34 vultr.guest red5.sh[10522]: ##################################################...###
Jan 31 15:41:34 vultr.guest red5.sh[10522]: # Openmeetings is up ... #
Jan 31 15:41:34 vultr.guest red5.sh[10522]: # 4.0.1 3795f14 2017-12-05T16... #
Jan 31 15:41:34 vultr.guest red5.sh[10522]: # and ready to use ... #
Jan 31 15:41:34 vultr.guest red5.sh[10522]: ##################################################...###
Hint: Some lines were ellipsized, use -l to show in full.
По умолчанию OpenMeetings прослушивает порт 5080
. Если соединение между браузером и сервером не зашифровано с помощью SSL, то логины и другая информация будут отправлены в виде простого текста. Это может быть потенциальной угрозой, так как кто-то, подслушивающий сеть, может получить информацию. Чтобы устранить эту проблему, мы настроим Nginx в качестве обратного прокси-сервера, который будет прослушивать порт HTTPS по умолчанию и будет передавать все запросы на сервер OpenMeetings.
Установите Nginx.
sudo yum -y install nginx
Запустите Nginx и включите его автоматический запуск во время загрузки.
sudo systemctl start nginx
sudo systemctl enable nginx
Установите Certbot, который является клиентским приложением для Let's Encrypt CA.
sudo yum -y install certbot
Прежде чем вы сможете запросить сертификаты, вам необходимо разрешить порты 80
и / 443
или стандартные HTTP
и HTTPS
сервисы через брандмауэр.
sudo firewall-cmd --zone=public --add-service=http --permanent
sudo firewall-cmd --zone=public --add-service=https --permanent
sudo firewall-cmd --reload
Примечание. Чтобы получить сертификаты от Let's Encrypt CA, домен, для которого должны быть созданы сертификаты, должен быть направлен на сервер. Если нет, внесите необходимые изменения в записи DNS домена и дождитесь распространения DNS, прежде чем снова делать запрос сертификата. Certbot проверяет полномочия домена перед предоставлением сертификатов.
Создайте сертификаты SSL.
sudo certbot certonly --webroot -w /usr/share/nginx/html -d meetings.example.com
Сгенерированные сертификаты, вероятно, будут храниться в /etc/letsencrypt/live/meetings.example.com/
. Сертификат SSL будет сохранен как, fullchain.pem
а закрытый ключ - как privkey.pem
.
Срок действия сертификатов Let's Encrypt истекает через 90 дней, поэтому рекомендуется настроить автоматическое обновление сертификатов с помощью заданий Cron.
Откройте файл задания cron.
sudo crontab -e
Добавьте следующую строку в конец файла.
30 5 * * * /usr/bin/certbot renew --quiet
Вышеуказанная работа cron будет выполняться каждый день в 5:30. Если срок действия сертификата истекает, он будет автоматически продлен.
Теперь измените файл конфигурации Nginx по умолчанию, чтобы убрать default_server
строку.
sudo sed -i 's/default_server//g' /etc/nginx/nginx.conf
Создайте новый файл конфигурации для OpenMeetings Server.
sudo nano /etc/nginx/conf.d/meetings.example.com.conf
Заполните файл.
server {
listen 80;
server_name meetings.example.com;
return 301 https://$host$request_uri;
}
server {
listen 443;
server_name meetings.example.com;
ssl_certificate /etc/letsencrypt/live/meetings.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/meetings.example.com/privkey.pem;
ssl on;
ssl_session_cache builtin:1000 shared:SSL:10m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4;
ssl_prefer_server_ciphers on;
access_log /var/log/nginx/openmeetings.access.log;
location / {
proxy_pass http://localhost:5080;
proxy_set_header host $host;
proxy_http_version 1.1;
proxy_set_header upgrade $http_upgrade;
proxy_set_header connection "upgrade";
}
}
Проверьте на наличие ошибок в новом файле конфигурации.
sudo nginx -t
Если вы видите следующий вывод, конфигурация без ошибок.
[user@vultr ~]$ sudo nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
Если вы получили какую-то ошибку, не забудьте дважды проверить путь к сертификатам SSL. Перезапустите веб-сервер Nginx, чтобы внести изменения в конфигурацию.
sudo systemctl restart nginx
Прежде чем вы сможете начать использовать приложение на защищенном SSL-сайте, вам нужно будет внести изменения в конфигурацию в OpenMeetings. Войдите в вашу административную панель OpenMeetings и перейдите к " Administration >> Configuration
". В таблице ID, ключ и значение; найти application.base.url
. Измените его значение в https://meetings.example.com
соответствии с вашим доменным именем. Сохраните конфигурацию, нажав значок сохранения выше.
Перезапустите сервис OpenMeetings.
sudo systemctl restart openmeetings
Теперь вы можете перейти в https://meetings.example.com
свой любимый веб-браузер и войти в систему, чтобы использовать приложение.
Поздравляем, Apache OpenMeetings теперь установлен на вашем сервере. Вы можете пригласить своих друзей и начать использовать OpenMeetings для онлайн-конференций.
Изучение 26 методов анализа больших данных: часть 1
Многие из вас знают Switch, который выйдет в марте 2017 года, и его новые функции. Для тех, кто не знает, мы подготовили список функций, которые делают «Switch» обязательным гаджетом.
Вы ждете, когда технологические гиганты выполнят свои обещания? проверить, что осталось недоставленным.
Прочтите блог, чтобы узнать о различных уровнях архитектуры больших данных и их функциях самым простым способом.
Прочтите это, чтобы узнать, как искусственный интеллект становится популярным среди небольших компаний и как он увеличивает вероятность их роста и дает преимущество перед конкурентами.
CAPTCHA стало довольно сложно решать пользователям за последние несколько лет. Сможет ли он оставаться эффективным в обнаружении спама и ботов в ближайшем будущем?
По мере того, как наука развивается быстрыми темпами, принимая на себя большую часть наших усилий, также возрастает риск подвергнуться необъяснимой сингулярности. Прочтите, что может значить для нас необычность.
Что такое телемедицина, дистанционное здравоохранение и их влияние на будущее поколение? Это хорошее место или нет в ситуации пандемии? Прочтите блог, чтобы узнать мнение!
Возможно, вы слышали, что хакеры зарабатывают много денег, но задумывались ли вы когда-нибудь о том, как они зарабатывают такие деньги? Давайте обсудим.
Недавно Apple выпустила macOS Catalina 10.15.4, дополнительное обновление для исправления проблем, но похоже, что это обновление вызывает больше проблем, приводящих к поломке компьютеров Mac. Прочтите эту статью, чтобы узнать больше