Незаменимых нет. Сервис на базе Nextcloud вместо привычных корпоративных облаков
О технологиях

Незаменимых нет. Сервис на базе Nextcloud вместо привычных корпоративных облаков

1069
10 минут

Привет, Хабр! Меня зовут Александр Фикс, я менеджер по развитию бизнеса K2 Cloud. Сегодня поговорим о тренде локализации, о том, что происходит на рынке файлообменников с уходом западных решений и какие альтернативные продукты есть у бизнеса в данный момент.

Мы проанализировали возможные варианты, собрали текущие проблемы и требования корпоративных пользователей и решили предоставлять Nextcloud как сервис из K2 Cloud. Подробно расскажу о возможностях такого решения, покажу его архитектуру, интерфейс и подсвечу преимущества.

nextcloud в K2 Cloud

Локализация: новый тренд и наш ответ

Западные вендоры ушли с нашего рынка и отключают свои решения → российские компании остаются без привычного ПО и облаков обновлений и поддержки → нужны надежные локальные альтернативы, причем быстро.

Все больше компаний хочет локализовать свою инфраструктуру — запрос за прошлый год вырос в 2,5 раза. С весны 2022 мы реализовали более 30 подобных проектов. Львиная доля поступающих к нам запросов касается файлообменников. Раньше компании вовсю пользовались OneDrive и аналогами, но сейчас у многих такой возможности больше нет. И здесь есть несколько выходов из сложившейся ситуации: 

  1. Отказаться от файлообменников и вернуться в каменный век, поднять шары и использовать общие папки на их основе. Это жизнеспособный подход, но во многом неудобный. Передача файлов вовне, онлайн редактирование документов, доступ с мобильных устройств — все это теперь представляет проблему, а то и вовсе невыполнимую  задачу . 
  2. Перейти на отечественные продукты. Они активно перепрофилируются под нужды бизнеса, но первоначально создавались как B2C-решения и обладают характерными ограничениями и особенностями. В их числе проблемы с интеграцией, зависимость от экосистемы и т. д. Не все компании готовы с этим мириться.
  3.  Использовать open source-решения и самостоятельно поднять файлообменник на собственной инфраструктуре или на арендованном сервере. В принципе многое такое ПО уже достаточно зрелое для корпоративного использования, но требует самостоятельного внедрения, отладки, обслуживания и постоянной поддержки по SLA. Для многих это проблема.

Nextcloud в K2 Cloud — что-то на удобном

Как показал опрос наших клиентов и партнеров, большинство компаний пользуется собственными файловыми шарами, в то время как преимущества open source-решений в глазах бизнеса зачастую недостаточны, чтобы оправдать связанные сложности.

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

Пришлось снова “изобретать велосипед”, точнее, делать собственный сервис на базе облачной платформы K2 Cloud и популярного опенсорсного Nextcloud. Так мы можем взять все сложности по поддержке и администрированию облака на себя и предоставлять клиентам удобную платформу будто из коробки, которую можно брать и пользоваться, как в старые добрые времена. Снабженный правильными плагинами и скриптами Nextcloud не уступает по функциональности зарубежным сервисам.

Мы запустили сервис в конце 2022 года, и у нас уже более 20 клиентов. Это компании разных масштабов: от 50 пользователей и до рекордного количества в 12 тыс. человек. В основном клиенты мигрируют с OneDrive.

Архитектура нашего решения

Залить Nextcloud на виртуалку для личного использования сравнительно несложно, но сделать так, чтобы он без проблем обслуживал целую компанию –  задачка со звездочкой: требуется проработать архитектуру, развернуть кластер баз данных, кластер приложений, интегрировать их с S3. Сравнивать просто некорректно.

Мы уже переделывали две таких корпоративных инсталляции с нуля и знаем, о чем говорим. Без должной настройки Nextcloud вроде и работает, но склонен тупить под высокой нагрузкой, зависать и радовать пользователей разнообразными ошибками. Пользоваться им в таком состоянии, мягко говоря, проблематично. Там возникает целый ряд вопросов к ручкам PHP, PHP-FPM и NGINX, но без прикрученного к системе мониторинга найти и исправить конкретные проблемы практически невозможно. Нужна взрослая архитектура с централизованным логированием. Поэтому для развертывания Nextcloud в K2 Cloud мы выделили архитекторов, которые собаку съели в работе с приложениями на базе LAMP-стека.

Конфигурация Nextcloud в K2 Cloud

Конфигурация нашего сервиса, включая балансировщиков запросов, растянута на три наших дата-центра в России. 

Nextcloud поддерживает работу с объектным хранилищем S3, и, таким образом, убивает сразу двух зайцев. Во-первых, использует уже готовый, быстрый и  масштабируемый до любых размеров кластер,. Во-вторых, позволяет заказчику экономить, ведь S3 – это еще и дешевое хранилище. С этим подходом связан ряд архитектурных особенностей: в S3 хранятся только файлы, а метаданные размещаются в Galera-кластере, основанном на MariaDB, так как S3 – это плоское объектное хранилище, по умолчанию в нем нет каталогов и подкаталогов.

За ускорение запросов отвечает выделенный кластер кеширования. Также предусмотрен кластер Elasticsearch для поисковой аналитики. Для дополнительной защиты доступ ко всем компонентам Nextcloud происходит через jump host.

Все это плотно обложено метриками на базе prometheus с grafana и alertmanager, и централизованного логирования ELK. К ним прикручены алерты, которые в режиме реального времени поступают службе поддержки.

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

Что касается отказоустойчивости, S3 уже обеспечивает резервирование данных, однако мы решили реализовать и дополнительные бэкапы. Например, на случай, если нужно восстановить файлы, которые пролежали в корзине Nextcloud более 90 дней или, например, были безвозвратно удалены обиженным сотрудником. Так как мы используем S3, файлы хранятся там без метаданных, это плоская структура, которая не соотносится с структурированной моделью хранилищ информации. Чтобы сделать бэкап, мы собираем файлы с метаданными, складываем их в отдельном месте, и затем бэкапим, например, средствами облачного CloudBerry или при помощи скриптов собственной разработки. Дополнительно обезопасить файлообменник можно при помощи интеграции с антивирусом.

Сценарий внедрения Nextcloud

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

Сценарий развертывания сервиса выглядит так: 

Мы выстраиваем инфраструктуру под клиента, после чего проводим интеграцию с доменной службой и интегрируем пользователей через службу каталога. 

Завести пользователей можно вручную или экспортировать таблицу. Если права доступа не выстроены на основе доменной службы, придется настраивать руками. 

Перенести файлы проще всего силами пользователей. Мы пишем документацию и короткую инструкцию, а пользователь устанавливает Nextcloud на локальный компьютер и заливает все необходимые файлы. Если заказчик может выгрузить бэкап своего файлового хранилища, возможна и централизованная миграция. Однако в случае использования OneDrive, особенно с Office 365, это затруднительно.

Еще мы предлагаем локальную синхронизацию файлов. Для этого нужно выбрать на локальном компьютере папку, которая будет синхронизироваться с файлообменником.

Базовая инсталляция системы занимает два-три дня. Процесс налажен и основная трудность — подобрать плагины и скрипты под потребности конкретного клиента. 

Инсталляции делятся на бандлы по количеству пользователей, всегда можно бесшовно мигрировать на более масштабную инсталляцию. Более того, в теории (желающих пока не было) всю эту инфраструктуру можно перенести из K2 Cloud на серверные мощности, которые предоставляет другая компания.

Возможности Nextcloud в K2 Cloud

Возможности Nextcloud в K2 Cloud

Пользовательский интерфейс Nextcloud настраивается. Так, на стартовую страницу облака можно вывести почту, календарь с ближайшими событиями и различные типы уведомлений


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

Nextcloud: базовые функции

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

Интерфейс Nextcloud

Несколько типов папок с разными иконками: папки самого пользователя и групповые для общего пользования — все привычно и понятно

Сервис позволяет делиться с пользователями корневыми папками и при этом гибко настраивать права на доступ к папкам внутри этого каталога. Например, можно дать доступ к папке тимлиду, а внутри создать папку персонально для каждого подчиненного. Никаких проблем с количеством вложенных папок нет. Есть интеграции со службами каталогов, как зарубежными (AD), так и отечественными, например, ALD Pro, настройка двухфакторной аутентификации, SSO (single sign-on).

За счет оптимизации на уровне инфраструктуры работать над одним документом и общаться во встроенном чате могут десятки пользователей. При этом все изменения отображаются мгновенно. У нас были файлы, в которых работало до 40 человек, и никаких проблем не было. 

Поддерживается обмен файлами с внешними пользователями при помощи ссылок (в том числе с доступом по паролю и ограниченным сроком действия), имеется возможность приглашать гостевых пользователей по электронной почте.

 административный интерфейс Nextcloud


В Nextcloud реализован неплохой административный интерфейс, который позволяет: создавать пользователей с различными правами и выделять им квоты, видеть активных и отключенных пользователей, создавать группы и многое другое.

Одна из особенностей нашего решения — кастомизация размеров пространства. Альтернативные сервисы зачастую предоставляют фиксированный объем, который нельзя гибко менять в зависимости от потребностей. А у нас можно выбрать любой размер хранилища для каждого пользователя либо группы и платить за тот объем, который утилизирован данными пользователя. То есть если мы выделили 200 ГБ пользователю, а он занял только 20 ГБ, то и платить нужно только за 20.

В заключение

Бизнес в срочном порядке ищет альтернативы продуктам ушедших с рынка компаний. В этой ситуации легко представить себе ситуацию, в которой руководство хватается за первый попавшийся, но далеко не самый оптимальный вариант. Однако нам кажется, что к локализации следует подходить с трезвой головой и долгосрочными планами. Так, даже при помощи open source-решений можно сделать сервис, который будет как минимум не хуже “чем раньше”. Потому мы и вкладываем так много сил и экспертизы в Nextcloud в K2 Cloud. Очевидно, тренд на локализацию облачной инфраструктуры будет сохраняться, и мы к этому готовы.

С оригиналом статьи можно ознакомиться на Хабре


19 июня 2023
Семь трендов на рынке облачных услуг в 2023 году
До 2022 года на рынке облаков в России главенствовали мировые тренды, но сейчас наша страна пошла своим путем. О том, для чего сейчас компании используют облачные технологии и как меняется рынок, рассказал директор бизнес-юнита K2 Cloud Сергей Зинкевич.
1 минута
1021
10 января 2023
Заоблачные возможности: как облачные сервисы используются в бизнесе
В 2022 году облачные сервисы стали одним из наиболее стремительно развивающихся направлений в ИТ. Рост рынка облачных вычислений постоянно ускоряется: в 2020 году его подтолкнула пандемия, а в 2022 - курс на миграцию на отечественные решения.
0 минут
835
22 июля 2022
Новый сервис кеширования и другие обновления К2 Облака
В K2 Облаке появился новый PaaS-сервис – сервис кеширования данных. Кроме того, мы расширили возможности управления и настройки сервиса Базы данных. А для упрощения анализа затрат в отчеты биллинга теперь включается информация о назначенных ресурсам тегах.
2 минуты
250
28 сентября 2020
Топ-6 ошибок безопасности при работе с облаком: уменьшаем риски
Безопасность — главный компонент любой облачной среды. Популярность облачных ресурсов растет с каждым годом, а с ней повышаются и риски утечки персональных данных. Поставщики облачных услуг с каждым годом совершенствуют свои системы безопасности, но киберпреступники не дремлют и стремятся использовать быстро расширяющийся фронт атаки. Есть ли способы избежать кибернападений и защититься от облачных угроз?
0 минут
599
scrollup