Nextcloud

Материал из Национальной библиотеки им. Н. Э. Баумана
Последнее изменение этой страницы: 15:56, 20 января 2018.
Nextcloud
Nextcloudlogo.jpg
Nextcloud-install-on-ubuntu-or-debian-arm-server-3.jpg
Файловый лист Nextcloud 10.0
Разработчики: Nextcloud GmbH., Community
Постоянный выпуск: 12.0.4 / 4 Декабря 2017
Состояние разработки: Active
Написана на: PHP
JavaScript
Операционная система: Server: Linux
Clients: Windows, macOS, Linux, Android, iOS
Тип ПО: Online storage
data synchronization
Лицензия: AGPLv3
Веб-сайт nextcloud.com

Nextcloud - это набор клиент-серверных программ для создания и использования служб хостинга файлов. Он функционально похож на Dropbox, хотя Nextcloud является бесплатным и открытым исходным кодом, позволяя всем устанавливать и управлять им на частном сервере.

В отличие от проприетарных служб, таких как Dropbox, открытая архитектура позволяет добавлять дополнительные функции к серверу в виде приложений и позволяет пользователю полностью контролировать свои данные.

Оригинальный разработчик ownCloud Фрэнк Карличек разветвил ownCloud и создал Nextcloud, который продолжает активно развиваться Фрэнком и другими членами оригинальной команды ownCloud.

Особенности

Файлы Nextcloud хранятся в обычных структурах каталогов и могут быть доступны через WebDAV, если это необходимо. Пользовательские файлы зашифровываются во время транзита и могут быть зашифрованы в покое (требуется включение шифрования). Nextcloud может синхронизироваться с локальными клиентами под управлением Windows (Microsoft Windows XP, Microsoft Windows Vista, Microsoft Windows 7 и Microsoft Windows 8), OS X(10.6 или новее) или различными дистрибутивами Linux.

Пользователи Nextcloud могут управлять календарями (CalDAV), контактами (CardDAV), запланированными задачами и потоковыми медиа (Ampache) с платформы.

С точки зрения администрирования Nextcloud разрешает администрирование пользователей и групп (через OpenID или LDAP). Контент может использоваться совместно, определяя грамотные разрешения на чтение и запись между пользователями и / или группами. Кроме того, пользователи Nextcloud могут создавать общедоступные URL-адреса при совместном использовании файлов. Также доступна регистрация действий, связанных с файлами, а также запрет доступа на основе правил доступа к файлам. [Источник 1]

Кроме того, пользователи могут взаимодействовать с текстовым редактором на основе браузера, службой закладок, набором сокращений URL, галереей, читателем RSS-каналов и инструментами просмотра документов изнутри Nextcloud. Для дополнительной расширяемости, Nextcloud может быть дополнен приложениями «одним нажатием» и подключением к Dropbox, Google Диску и Amazon S3. Nextcloud представляет новые функции, такие как возможности мониторинга, полнотекстовый поиск и аутентификацию Kerberos, а также аудио / видеоконференции, расширенную федерацию и небольшие улучшения пользовательского интерфейса.[Источник 2] Nextcloud доступен в репозитории Fedora. [Источник 3]

Архитектура

Чтобы настольные компьютеры могли синхронизировать файлы со своим сервером Nextcloud, настольные клиенты доступны для ПК под управлением Windows, OS X, FreeBSDили Linux. Мобильные устройства существуют для устройств iOS и Android. Файлы и другие данные (например, календари, контакты или закладки) также могут быть доступны, управляться и загружаться с помощью веб-браузера без какого-либо дополнительного программного обеспечения. Любые обновления файловой системы переносятся на все компьютеры и мобильные устройства, подключенные к учетной записи пользователя.

Сервер Nextcloud написан на языках сценариев PHP и JavaScript. Для удаленного доступа в нем используется saber / dav, сервер WebDAV с открытым исходным кодом. [Источник 4]Nextcloud предназначен для работы с несколькими системами управления базами данных, включая SQLite, MariaDB, MySQL, Oracle Database и PostgreSQL. [Источник 5]

С Nextcloud 12 была разработана новая архитектура с названием Global Scaleс целью масштабирования до сотен миллионов пользователей. Он разбивает пользователей на отдельные узлы и вводит компоненты для управления взаимодействием между ними.[Источник 6]

Отличия от ownCloud

В то время как Nextcloud является развилкой проекта ownCloud, есть некоторые отличия. Хотя ownCloud предлагает версию сообщества с открытым исходным кодом, они также предлагают фирменную версию Enterprise Edition с дополнительными функциями и поддержкой подписки. ownCloud Inc. предлагает программное обеспечение под так называемой открытой базовой бизнес-моделью, предоставляя клиентам бесплатные функции с закрытыми исходными кодами и лицензию на собственность. В апреле 2016 года Карличек и большинство основных разрабочиков покинули ownCloud Inc. К ним относятся многие из лучших сотрудников ownCloud по источникам, близким к сообществу ownCloud. Несмотря на ранний возраст развилки, количество вкладов Nextcloud быстро обогнало числа OwnCloud, что видно из статистики GitHub.

Для сравнения, Nextcloud является полностью открытым исходным кодом. Карличев сказал в интервью: «Самое важное отличие Nextcloud от других решений - его полная открытость. Мы не требуем лицензионного соглашения со стороны вкладчиков или партнеров», - сказал Карличек. «Не будет закрытого исходного кода, и все планирование и разработка происходят в открытом доступе. Команда Nextcloud работала вместе много лет и, по сути, это команда, которая построила технологию в первую очередь».

Рекомендации по размещению

Какой способ установки и использования Nextcloud наилучший? Ответ - каждому свое, потому что у всех пользователей разные нужды и инфраструктура. Nextcloud и LAMP имеют широкие средства для настройки, поэтому мы покажем три типичных сценария и дадим практические рекомендации для настройки программной и аппаратной части.

Главные рекомендации

  • Независимо от размера Вашей организации, всегда помните об одном: количество данных, хранящихся в Nextcloud будет только расти. Планируете заранее
  • Операционная система: Linux (Ubuntu 16.04 или Red Hat Enterprise Linux 7)
  • Веб-сервер: Apache 2.4.
  • БД: MySQL/MariaDB.
  • PHP 5.5+

Малые группы

  • Количество пользователей: до 150
  • Размер хранилища: 100 ГБ - 10ТБ
  • Резервные копии с нулевым временем простоя с помощью моментальных снимков Btrfs, сбой компонента приводит к прерыванию обслуживания. Альтернативная схема резервного копирования для других файловых систем: ночные резервные копии с прерыванием обслуживания.

Рекомендованные системные требования

Одна машина, на которой запущен сервер приложений, веб-сервер, сервер базы данных и локальное хранилище. Аутентификация с помощью существующего LDAP или Active Directory.

  • Компоненты: Один сервер минимум с двумя процессорами, 16 ГБ ОЗУ, жесткий диск - зависит от ситуации.
  • Оперативная система: Ubuntu 16.04 или Red Hat Enterprise Linux 7.
  • SSL конфигурация: Требуется стандартный сертификат SSL, установленный в соответствии с документацией Apache.
  • Балансировка нагрузки: не требуется.
  • База данных: MySQL, MariaDB или PostgreSQL
  • Резервное копирование: Устанавливайте Nextcloud на Btrfs ФС. Делайте регулярные снимки с необходимыми интервалами для резервного копирования с нулевым временем простоя. Создавайте БД с опцией "nodatacow", для того чтобы предотвратить фрагментацию.

Кроме того, создавайте ночные резервные копии с прерыванием обслуживания:

  • Отключаем Apache
  • Создаем дамп БД
  • Записываем каталог данных в резервную копию
  • Записываем дамп в резервную копию
  • Запускаем Apache
  • Аутентификация: Аутентификация пользователей через один или несколько LDAP или AD серверов.
  • Управление сеансом: Управление локальным сеансом на сервере приложений. Сессии PHP хранятся в tmpfs, установленном в месте хранения сеанса операционной системы. Вы можете узнать где это, исполнив grep -R 'session.save_path' /etc/php5 и затем добавить в файл, например: echo "tmpfs /var/lib/php5/pool-www tmpfs defaults,noatime,mode=1777 0 0" >> /etc/fstab
  • Кэширование(memcache): Memcache ускоряет производительность сервера, а Nextcloud поддерживает четыре вида memcache.
  • Хранилище: Локальное хранилище
  • Версия Nextcloud: Стандартная.

Источники

  1. File Access Control – A firewall for your private files in Nextcloud // Nextcloud. [2017-2017]. Дата обновления: 16.01.2018. URL: https://nextcloud.com/blog/file-access-control-a-firewall-for-your-private-files-in-nextcloud/ (дата обращения 16.01.2018).
  2. Nextcloud adds security and scalability to its private cloud offering // ZDNet. [2017-2017]. Дата обновления: 16.01.2018. URL: http://www.zdnet.com/article/nextcloud-adds-security-and-scalability-to-its-private-cloud-offering/ (дата обращения 16.01.2018).
  3. Linux Packages Status // Fedora Package. [2017-2017]. Дата обновления: 16.01.2018. URL: https://admin.fedoraproject.org/pkgdb/package/rpms/nextcloud/ (дата обращения 16.01.2018).
  4. ownCloud and sabre/dav // ownCloud. [2017-2017]. Дата обновления: 16.01.2018. URL: https://owncloud.org/news/owncloud-and-sabredav/ (дата обращения 16.01.2018).
  5. ownCloud and sabre/dav // ownCloud. [2017-2017]. Дата обновления: 16.01.2018. URL: https://owncloud.org/news/owncloud-and-sabredav/ (дата обращения 16.01.2018).
  6. Database Configuration - Nextcloud 12 Server Administration Manual 12 documentation // Nextcloud. [2017-2017]. Дата обновления: 16.01.2018. URL: https://docs.nextcloud.com/server/12/admin_manual/configuration_database/linux_database_configuration.html (дата обращения 16.01.2018).