Как настроить свой облачный сервер

Создание облачного сервера (виртуальной машины)

При создании облачного сервера — виртуальной машины — в качестве загрузочного (системного) диска можно выбрать локальный диск или сетевой диск.

К любому серверу в качестве дополнительных можно добавлять сетевые диски.

Создание в панели управления

Чтобы создать облачный сервер, в панели управления:

  1. Перейдите в раздел Облачная платформа ⟶ Серверы и нажмите кнопку Создать сервер.
  2. Укажите имя сервера, регион и зону. Имя машине присваивается автоматически, при необходимости его можно изменить.

По умолчанию в качестве операционной системы выбирается образ Ubuntu. Чтобы сменить источник ОС, нажмите на кнопку Выбрать другой источник. Можно выбрать:

В поле User data, открывающееся по кнопке , дополнительно можно прописать пользовательский скрипт, выполняющийся при загрузке системы.

Выберите конфигурацию виртуальной машины. Есть два вида конфигураций:

  • фиксированная — несколько линеек конфигураций с различным соотношением виртуальных процессорных ядер и оперативной памяти. Ограничения по ресурсам: до 36 vCPU и 128 ГБ RAM;
  • произвольная — свободный выбор соотношения ресурсов: до 8 vCPU и 64 ГБ RAM.

Чтобы выбрать локальный диск в качестве загрузочного, отметьте галочку Локальный диск.

Если в качестве системного выбран сетевой диск (галочка Локальный диск не установлена), то выберите его тип:

  • базовый — для хранения больших объемов данных, которые не нужно часто читать или перезаписывать;
  • быстрый — меньшее время отклика и большая скорость работы по сравнению с базовым диском;
  • универсальный — для размещения системных дисков виртуальных машин.

Укажите размер сетевого диска.

Если в качестве системного диска указан локальный диск и нет необходимости в дополнительном диске, то сетевой диск можно удалить, нажав кнопку Удалить диск.

Для добавления дополнительного сетевого диска нажмите кнопку Добавить сетевой диск. Можно добавить несколько дополнительных дисков.

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

Примечание: подробнее о дальнейшей работе с сетями, например, о подключении сервера к внешней сети, в инструкции Управление сетями.

Определите настройки доступа. Укажите пароль для root или добавьте SSH-ключ для более безопасного подключения.

Нажмите кнопку Создать.

Созданный облачный сервер появится в списке серверов проекта.

Подготовка к созданию с помощью CLI

Подробно о начале работы через консольные клиенты в инструкции Начало работы с OpenStack CLI.

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

Образ сервера

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

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

Список образов выглядит следующим образом:

Для просмотра информации об образе по UUID введите:

Для просмотра информации об образе по имени введите:

Выбрав нужный образ, скопируйте его ID — он понадобится при создании сервера.

Доступные зоны

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

Список доступных зон выглядит следующим образом:

Сохраните имя выбранной зоны.

Просмотр информации о сетях

Для просмотра доступных сетей:

Ответ будет выглядеть следующим образом:

Можно выбрать приватную или публичную сеть. UUID сети нужно будет указать при создании сервера.

Подробнее о настройке сервера после создания, например, подключении плавающего IP-адреса или порта к серверу, в инструкции Управление сетями.

Флейвор сервера

В терминологии OpenStaсk конфигурации сервера обозначаются термином флейвор (flavor).

Для создания сервера вы можете:

Сохраните UUID и имя флейвора.

Просмотр типов сетевых дисков

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

Просмотрите список доступных типов:

Он выглядит следующим образом:

Для дисков серверов следует использовать типы fast, basic и universal в нужной зоне вида . , например fast.ru-2b .

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

Создание сервера с загрузочным локальным диском

С помощью CLI

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

Ответ будет выглядеть следующим образом:

Через Terraform

Подробно о начале работы с Terraform.

Создание сервера с загрузочным сетевым диском

С помощью CLI

Для создания облачного сервера с одним загрузочным сетевым диском:

  1. Создайте сетевой диск нужного размера и типа из образа (этот диск автоматически будет назначен загрузочным).
  2. Создайте сервер из этого диска. Укажите имя флейвора и сеть.

Пример создания сетевого диска:

Ответ будет выглядеть следующим образом:

Пример создания сервера из сетевого диска:

Ответ будет выглядеть следующим образом:

Через Terraform

Подробно о начале работы с Terraform.

Через Terraform можно создать проект с облачным сервером с загрузочным сетевым диском, используя готовый пример на GitHub. Пример создания сервера с загрузочным сетевым диском и двумя портами в разных подсетях.

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

С помощью CLI

  1. Создайте пустой сетевой диск нужного размера и типа.
  2. Создайте сервер из флейвора. Укажите зону доступности, сеть, имя сетевого диска и имя образа, из которого нужно создать сервер.

Через Terraform

Подробно о начале работы с Terraform.

Через Terraform можно создать проект с облачным сервером с загрузочным локальным и дополнительным сетевым диском, используя готовый пример на GitHub.

Источник

Персональное облако

Облачное хранилище позволяет не только хранить данные, но и обеспечивать совместную работу с ними в NAS.

Возможные решения

Существует несколько вариантов облачных сервисов: NextCloud, Seafile, Pydio и т.д…
Ниже рассмотрена часть из них.

OwnCloud

Реализован на PHP/Javascript.

  • Возможно расширять функционал, устанавливая приложения из репозитория облака.
  • Есть интеграция с офисом Collabora и OnlyOffice.
  • Возможно использовать существующие хранилища, такие как FTP, Swift, S3, Dropbox и т.п.,
    распределяя данные между ними и локальным облаком.
  • Шифрование на клиенте.
  • Возможность предоставлять файлы внешним пользователям по e-mail.
  • Есть автоматизация операций с файлами (например, автоматическое добавление тэгов).
  • LDAP.
  • Есть аудио плеер, музыкальная коллекция, галерея плагин чтения PDF.
  • Интеграция с Zimbra.
  • Есть календари, списки задач, текстовые редакторы и т.п.
  • Антивирус и защита от ransomware.
  • Двуфакторная аутентификация.
  • Возможность имперсонации под другого пользователя (с целью отладки).

NextCloud

Форк OwnCloud. Реализован на PHP/Javascript.

  • Хранение файлов с использованием обычных структур каталогов, или с использованием WebDAV.
  • Есть NextCloud Talk, через который возможно делать видеозвонки и видеоконференции.
  • Синхронизация между клиентами под управлением Windows (Windows XP, Vista, 7 и 8), Mac OS X (10.6 и новее) или Linux.
  • Синхронизация с мобильными устройствами.
  • Календарь (также как CalDAV).
  • Планировщик задач.
  • Адресная книга (также как CardDAV).
  • Потоковое мультимедиа (используется Ampache).
  • Поддерживает разные провайдеры авторизации: LDAP, OpenID, Shibboleth.
  • Двуфакторная авторизация.
  • Разделение контента между группами или используя публичные URL. Тонкая настройка правил.
  • Онлайн текстовый редактор с подсветкой синтаксиса и сворачиванием. Анонсирована поддержка онлайн-версий редакторов LibreOffice.
  • Закладки.
  • Механизм сокращения URL.
  • Фотогалерея.
  • Просмотрщик PDF (используется PDF.js)
  • Интеграция с Collabora и OnlyOffice.
  • Модуль логирования.
  • Возможность создания свои Web-сайтов (на PicoCMS).
  • Интеграция с Outlook и Thunderbird.
  • Интеграция клиента в Gnome.
  • Возможность использовать внешнее хранилище.
  • Полнотекстовый поиск.
  • Интеграция с антивирусом.

SparkleShare

Реализован на C#.

  • Версионирование.
  • Шифрование на клиенте.
  • Прозрачная синхронизация между несколькими пользователями: удалённые изменения появятся в локальном каталоге, выделенном для SparkleShare.

Seafile

Реализован на C/Javascript.

  • Файлы могут быть организованы в библиотеки, которые могут быть синхронизированы между устройствами.
  • Есть клиент, позволяющий создать локальный «диск», отображённый на облако.
  • Встроенное шифрование. Все файлы шифруются клиентом и хранятся в облаке зашифрованными.
  • Поддержка мобильных устройств.
  • HTTS/TLS шифрование.
  • Есть LDAP.
  • Тонкая настройка прав.
  • Версионирование файлов.
  • Возможность создания снимка каталога, к которому потом возможно вернуться.
  • Дедупликация.
  • Поддержка блокировки файлов.
  • Совместное редактирование файлов онлайн.
  • Антивирус.
  • Тонкая настройка прав.
  • Периодический бэкап через rsync.
  • WebDAV.
  • REST API.
  • Возможность интеграции с Collabora.

  • Быстрый и нетребовательный к ресурсам.
  • Считается надёжным.
  • Установка прав на подкаталоги поддерживается только в платной Pro версии.
  • Интеграция с антивирусом — только в Pro версии.
  • Аудит — только в Pro версии.
  • Полнотекстовый поиск — только в Pro версии.
  • Интеграция с S3 и Ceph — только в Pro версии.
  • Онлайн просмотр Doc/PPT/Excel — только в Pro версии.

Pydio

Реализован на PHP/Javascript.

  • Обмен файлами не только между пользователями, но и между несколькими экземплярами Pydio.
  • SSL/TLS шифрование.
  • WebDAV.
  • Возможность создать несколько рабочих пространств.
  • Обмен файлами с внешними пользователями, с тонкой настройкой обмена (например, прямые ссылки, пароль и т.п.).
  • Встроен офис Collabora.
  • Предосмотр и редактирование изображений.
  • Есть встроенный аудио и видео проигрыватель.

ProjectSend

Реализован на PHP/Javascript.

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

SpiderOak

  • Экономия места в хранилище и времени выгрузки файлов за счёт дедупликации и внесения изменений в уже имеющиеся файлы (вместо перезаписи файлов целиком).
  • Настраиваемая мультиплатформенная синхронизация.
    DropBox для синхронизации создаёт специальную папку, в которую надо помещать все синхронизируемые файлы. SpiderOak может работать с любым каталогом.
  • Сохранение всех хронологических версий файлов и удаленных файлов
  • Совместное использование папок при помощи так называемых ShareRooms, на которые устанавливается пароль.
    Файлы, обновлённые на локальном компьютере, автоматически обновляются в хранилище. Пользователи извещаются об изменениях по RSS.
  • Получение файлов с любого подключенного к Интернету устройства.
  • Полное шифрование данных по принципу «нулевого знания».
  • Поддержка неограниченного количества устройств.
  • Шифрование данных на стороне клиента.
  • Двуфакторная аутентификация.

Закрытая проприетарная система.

С учётом того, что данное ПО платное и частично закрытое, его использование исключается.

Установка NextCloud

Изначально было желание использовать Seafile: серверная часть реализована на C, он эффективен и стабилен. Но выяснилось, что в бесплатной версии есть далеко не всё.

Потому, я попробовал Nextcloud и остался доволен. Он предоставляет больше возможностей и полностью бесплатен.

Посмотреть, как он работает в демо-режиме вы можете здесь.

Вот общие точки сопряжения между облачным хранилищем и системой:

  • /tank0/apps/cloud/nextcloud — хранилище облачного сервиса.
  • /tank0/apps/onlyoffice — данные офиса.
  • https://cloud.NAS.cloudns.cc — WEB интерфейс облачного сервиса.

Т.к. конфигурация NextCloud достаточно объёмна и состоит из нескольких файлов, я не буду приводить их здесь.

Всё, что нужно вы найдёте в репозитории на Github.

Там же доступна конфигурация для SeaFile.

Сначала установите и запустите NextCloud.

Для этого надо скопировать конфигурацию в каталог /tank0/docker/services/nextcloud и выполнить:

Будет собран новый образ на основе Nextcloud 13.0.7. Если вы хотите изменить версию базового образа, сделайте это в app/Dockerfile . Я использую версию 15, но стоит заметить, что в ней не работают многие плагины, такие как загрузчик ocDownloader и заметки, а также я ещё не восстановил работоспособность OnlyOffice.

Кардинальных отличий или сильного улучшения производительности я не заметил.

Ниже я считаю, что вы используете версию 13+.

Далее, зайдите в NextCloud и выбрав в меню справа вверху «Приложения», выполните установку необходимых плагинов.

  • LDAP user and group backend — сопряжение с LDAP.
  • External Storage Support — поддержка внешних хранилищ. Нужна будет далее, с целью интеграции NextCloud и общих файлов, а также сопряжения с внешними облачными хранилищами. Про настройку внешних хранилищ я расскажу в другой статье.
  • ocDownloader — загрузчик файлов. Расширяет функциональность облака. Docker образ специально пересобран так, чтобы он работал.
  • ONLYOFFICE — интеграция с офисом. Без этого приложения, файлы документов не будут открываться в облаке.
  • End-to-End Encryption — сквозное шифрование на клиенте. Если облако используют несколько пользователей, плагин необходим, чтобы удобно обеспечить безопасность их файлов.

  • Brute-force settings — защита от подбора учётных данных. NextCloud смотрит в Интернет, потому лучше установить.
  • Impersonate — позволяет администратору заходить под другими пользователями. Полезно для отладки и устранения проблем.
  • Talk — видеочат.
  • Calendar — говорит сам за себя, позволяет вести календари в облаке.
  • File Access Control — позволяет запрещать доступ к файлам и каталогам пользователям на основе тэгов и правил.
  • Checksum — позволяет вычислять и просматривать контрольные суммы файлов.
  • External sites — создаёт ссылки на произвольные сайты на панельке вверху.

  • Установлен загрузчик Aria2.
  • Установлен загрузчик Youtube-DL.
  • Установлены inotify-tools.
  • Увеличены лимиты памяти для PHP.
  • Web-сервер настроен под лучшую работу с LDAP.

Замечу, что если вы установите версию 13+, но потом решите обновиться на версию 15, это и многое другое вы сможете сделать с помощью утилиты occ.

Настройка LDAP не тривиальна, потому я расскажу подробнее.

Зайдите в «Настройки->Интеграция с LDAP/AD».
Добавьте сервер 172.21.0.1 с портом 389.
Логин: cn=admin,dc=nas,dc=nas .
NextCloud может управлять пользователями в базе LDAP и для этого ему потребуется администратор.

Нажимайте кнопку «Проверить конфигурацию DN» и, если индикатор проверки зелёный, кнопку «Далее».

Каждый пользователь имеет атрибут inetOrgPerson и состоит в группе users_cloud .

Фильтр будет выглядеть так:

Нажимайте «Проверить базу настроек и пересчитать пользователей», и если всё корректно, должно быть выведено количество пользователей. Нажимайте «Далее».

На следующей странице будет настроен фильтр пользователей, по которому NextCloud их будет искать.

На этой странице надо ввести логин какого-либо пользователя и нажать «Проверить настройки».
Последний раз «Далее».

Тут нажмите «Дополнительно» и проверьте, что поле «База дерева групп» равно полю «База дерева пользователей» и имеет значение dc=nas,dc=nas .

Вернитесь в группы и установите в поле «Только эти классы объектов» галочку напротив groupOfUniqueNames .

Итоговый фильтр здесь такой:

Поле «Только из этих групп» я не устанавливал, т.к. хочу увидеть в интерфейсе NextCloud всех пользователей, а те кто не входит в группу users_cloud , отсеиваются фильтром на предыдущем этапе.

OnlyOffice

OnlyOffice — это прекрасный кроссплатформенный офисный пакет, который поддерживает работу с документами MS Office. Он бесплатный и открытый, также как и LibreOffice и также способен работать, как сервер.

Но при этом, поддержка оригинального формата у него реализована гораздо лучше, почти как в оригинальном офисе от MS, он более стабилен, имеет более продуманный интерфейс.

Кстати, есть и Desktop версия OnlyOffice, в том числе под Linux. В общем, намучавшись с тяжёлой и нестабильной Collabora (это LibreOffice), я выбрал OnlyOffice и пока вполне доволен.

Конфигурация OnlyOffice доступна на Github и ниже, под спойлером.

Поясню некоторые моменты:

  • Вам надо изменить на свой, также как и NAS на имя своей DNS зоны.
  • HTTPS здесь не требуется включать, потому что хотя офис и виден снаружи, обмен с ним идёт через обратный прокси, который работает с пользователем исключительно по HTTPS. Так построена архитектура NAS.

Теперь надо поднять офис:

И, если всё работает, по адресу office.NAS.cloudns.cc будет следующая страница:

Затем, в настройках NextCloud требуется выбрать Пункт «Администрирование->ONLYOFFICE» и прописать в первых двух полях адрес сервера документов: https://office.NAS.cloudns.cc/ и ваш JWT token.

В третьем поле надо прописать адрес облака.

JWT токен возможно сгенерировать, например здесь.

Если сервер настроен правильно, в меню создания документов облака появятся дополнительные пункты для офисных документов, а .docx файлы будут открывать в офисе.

Выводы

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

В этой роли NextCloud весьма удобен и обладает широким функционалом.

У него есть свои в процессе обновления между версиями, но в целом, это хранилище возможно рекомендовать.

Источник

Читайте также:  Не работает уровень пола маз 5440
Оцените статью