Свой облачный сервер linux

Создаем свои собственные облачные сервера с помощью Ubuntu

Хотели бы вы полетать в облаке и поэкспериментировать с облачными вычислениями? Теперь у вас есть шанс. С помощью этой статьи вы шаг за шагом изучите процесс настройки своей личной облачной системы, в которой используется пакет Ubuntu Enterprise Cloud (UEC) , базирующийся на платформе Eucalyptus .

Система состоит из одного облачного контроллера (также называемого front-end сервером) и одного или нескольких контроллеров узлов. Облачный контроллер управляет средой облака. Вы можете по умолчанию использовать образы ОС Ubuntu или создать свой собственный образ, который будет использоваться в виртуальной среде. В контроллерах узлов вы можете запустить отдельные экземпляры виртуальных машин (VM) для работы с образами.

Системные требования

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

  • Один — для front-end сервера (облачного контроллера или контроллера кластеров) со следующими минимальными требованиями: CPU с частотой в 1 ГГц, 512 Мбайт оперативной памяти, CD-ROM, 40 Гбайт дискового пространства и сетевым Ethernet адаптером.
  • Один или несколько для контроллеров узлов с CPU, поддерживающим технологию виртуализации Virtualization Technology (VT), 1Гбайт оперативной памяти, CD-ROM, 40 Гбайт дискового пространства и сетевым Ethernet адаптером.

Вы можете посмотреть список процессоров Intel, поддерживающих технологию VT . Либо в Windows вы можете запустить утилиту SecurAble . В Linux вы можете выполнить проверку следующим образом — посмотреть, если в файле /proc/cpuinfo параметры «vmx» или «svm». Запустите команду egrep ‘(vmx|svm)’ /proc/cpuinfo. Однако имейте в виду, что вы получите результат, если эта возможность включена: она может быть отключена в BIOS.

Подготовка к инсталляции

Во-первых, скачайте образ CD для версии Ubuntu Server remix (мы используем версию 9.10) на любой компьютер, на котором есть устройство записи CD или DVD. Затем запишите образ ISO на CD или DVD. Если вы хотите использовать DVD, убедитесь в том, что компьютеры, которые будут использоваться в облаке, могут читать DVD. Если вы используете Windows 7, вы можете открыть ISO файл и использовать утилиту записи, входящую в состав ОС. Если вы используете Windows Vista или более ранние версии, вы можете скачать стороннее приложение, такое как DoISO .

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

Установка Front-End сервера

Установка front-end сервера сравнительно проста. Для того, чтобы начать установку, просто вставьте компакт-диск с инсталлятором и в загрузочном меню выберите пункт «Install Ubuntu Enterprise Cloud», а затем нажмите клавишу ENTER. При необходимости укажите язык и раскладку клавиатуры. Укажите настройки сети, когда появится запрос.

При появлении запроса на выбор режима установки Cloud Installation Mode, нажмите Enter для того, чтобы выбрать установку по умолчанию, т. е. «Cluster» («кластер»). Затем вам нужно сконфигурировать часовой пояс и задать настройки раздела. После того, как раздел будет подготовлен, установка будет, наконец, запущена. В самом конце, вам будет предложено создать учетную запись пользователя.

Затем вам нужно будет настроить параметры прокси, автоматическое обновление и электронную почту. Кроме того, вам нужно будет задать имя кластера Eucalyptus Cluster. Вам также потребуется настроить IP-адресацию с тем, чтобы пользователи получали динамически назначаемые им адреса.

Установка и регистрация контроллеров узлов

Установка узлов еще проще. Снова вставьте установочный диск, в меню загрузки выберите «Install Ubuntu Enterprise Cloud» и нажмите клавишу Enter. По мере необходимости указывайте требуемые настройки.

Читайте также:  Astra linux samba не видит рабочие группы

Когда дело дойдет до выбора режима установки Cloud Installation Mode, инсталлятор должен автоматически обнаружить существующий кластер и задать вариант установки «Node» («Узел»). Для того, чтобы продолжить, просто нажмите на клавишу Enter. Останется только задать настройку раздела.

Регистрация контроллеров узлов

Прежде, чем продолжить дальше, вы должны знать IP адрес узла (узлов). Узнать его можно с помощью следующей команды:

Затем вам потребуется установить на контроллере узла открытый ssh ключ, взятый с front-end сервера:

  1. С помощью следующей команды установите временный пароль для пользователя eucalyptus:
  2. На front-end сервере введите следующую команду для того, чтобы скопировать SSH ключ:
  3. Затем с помощью следующей команды вы можете удалить пароль учетной записи eucalyptus:
  4. После того, как узлы будут подняты и ключ скопирован, запустите на front-end сервере следующую команду и добавьте узлы:

Получение и установка идентификационной информации пользователя

На front-end сервере выполните приведенные ниже команды для того, чтобы создать новую директорию, экспортировать в него заархивированную идентификационную информацию пользователя, а затем распаковать файлы:

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

Настройка EC2 API и инструментального пакета AMI

Теперь вы должны настроить на front-end сервере пакет EC2 API и инструментальный пакет AMI. Во-первых, все настройки вашей среды Eucalyptus берутся из файла eucarc, поэтому введите:

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

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

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

Доступ к панели управления с веб интерфейсом

Теперь вы можете получить доступ к конфигурационной утилите, имеющей веб интерфейс. С любого компьютера, находящимся в той же самой сети, перейдите по URL, https://:8443. Сразу после того, как вы зарегистрируетесь front-end сервере, будет показан IP адрес облачного контроллера. Обратите внимание, что это безопасное соединение происходит по протоколу HTTPS, а не с помощью HTTP. Вполне вероятно, вы получите от браузера предупреждение, касающееся безопасности, поскольку в сервере используется самоподписываемый сертификат вместо сертификата, предоставляемого какой-нибудь из известных служб сертификации Certificate Authority (CA). Игнорируйте это предупреждение, добавив его в список исключений. Подключение будет безопасным.

По умолчанию в качестве имя пользователя и пароля пользователя используется значение «admin». После первой регистрации вам следует ввести новый пароль и email.

Установка образов

Теперь, когда у вас есть настроенное основное облако, вы можете установить образы. Откройте панель управления с веб интерфейсом, выберите вкладку Store, а затем щелкните по кнопке Install (Установить) для установки нужного образа. Начнется загрузка, а затем автоматически начнется установка, которая занимает много времени.

Запуск образов

Перед первым запуском образа на узле, выполните следующие команды с тем, чтобы создать пару ключей для SSH:

Вам также потребуется открыть порт 22 на узле с помощью следующей команды:

Наконец, вы можете запустить зарегистрированный образ. Команду для запуска образа можно выполнить через веб интерфейс. Войжите в систему через веб интерфейс, щелкните по вкладке Store, а затем выберите ссылку How to Run с тем, чтобы запустить нужный образ. Появится окошко, в котором будет указана нужная команда.

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

При переходе из состояния «pending» («ожидание») в «running» («выполнение») определите назначенный IP адрес и подключитесь к нему:

Для того, чтобы завершить подключение по SSH:

Обслуживание облака

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

  • Для того, чтобы перезапустить front-end сервер, выполните следующую команду: sudo service eucalyptus [start|stop|restart]
  • Для того, чтобы восстановить работу узла, выполните следующую команду: sudo service eucalyptus-nc [start|stop|restart]
  • Есть следующие несколько файлов с важными данными:
    • Файлы журналов
      /var/log/eucalyptus
    • Конфигурационные файлы
      /etc/eucalyptus
    • База данных
      /var/lib/eucalyptus/db
    • Ключи
      /var/lib/eucalyptus
      /var/lib/eucalyptus/.ssh
Читайте также:  Полное описание всех процессов windows

Источник

/4te.me

Из-за очередного приступа параноии, я решил сменить Google Drive на собственное решение и хранить свои файлики поближе к телу. Выбор был между: поднимать в каком-нибудь DigitalOcean виртуалку и хранить там, или собрать дома свое хардварное решение. Подсчитав сколько будет стоить виртуалка с нужным объемом диска, выбор был сделан в пользу домашнего NAS-сервера.

Выбор

У меня было примерно 100 ГБ данных на момент съезда из Google Drive. Виртуалка в DigitalOcean на 160ГБ стоит 40$ в месяц, то есть в год будет выходить

500$. Дорого. За эти деньги можно дома собрать NAS на терабайт с SSD дисками. Есть ещё вариант брать маленькую виртуалку, и к нему подключить S3 хранилище, но софт, который я планировал использовать, не умеет работать с S3.

Итак, вариант с виртуалкой в облаке я отмёл и пошел смотреть, что нынче есть на рынке домашних NAS серверов. Так как я живу в маленькой квартире, NAS я планировал ставить в жилой комнате, и, если он будет шуметь вентиляторами и вибрировать HDD-дисками, то житья в комнате не будет. Поэтому я хотел найти NAS с пассивным охлаждением и вставить туда SSD диски. Не самое дешевое решение, но за тишину приходится платить.

Как выяснилось, на рынке практически нет NAS с пассивным охлаждением. Почему так я не понимаю, по опыту использования — максимальная температура дисков за год использования у меня была 47.0 C (наверно когда я переносил все данные), в покое — 36.0 C, крышка NAS-а чуть теплая. 90% времени диски простаивают и зачем им вентилятор я не понимаю.

Вот модели с пассивным охлаждением которые я смог найти — QNAP HS-210 , QNAP HS-251 , QNAP HS-251+ (он же QNAP S2 ), QNAP HS-453 . У всех моделей обычный x64-процессор, не ARM. Получается маленькая такая desktop-тачка с местом для двух HDD.

  • HS-210 — 512 МБ ОЗУ мало.
  • HS-251 — 1ГБ ОЗУ мало
  • HS-251+ — 2ГБ ОЗУ норм
  • HS-453 — 4 или 8 ГБ ОЗУ. Ultimate решение, но не продается в России и стоит космос.

У Synology бесшумных решений я не нашел. Собирать системник тоже не хотелось — он не получится таким же маленьким и бесшумным как QNAP. В общем выбрал золотую середину — QNAP HS-251+ (QNAP S2).

Из дисков я выбрал WD BLUE 3D NAND SATA SSD 1 TB (WDS100T2B0A). Взял две штуки. Они без проблем заходят в NAS. Итого вышло:

Не самое дешевое решение для NAS, но самое дешевое из подходящих под требования. Кроме этого, чтобы создать свое облако потребуется статический “белый” IP-адрес дома. Чтобы подключаться из интернета к домашнему серверу. Обычно такая услуга есть у любого провайдера.

Программная часть

После покупки и установки самого NAS-а, решил попробовать использовать софт от самого QNAP. Стоит сказать, что он очень разнообразный — полностью заменяет публичные облака и даже умеет запускать виртуальные машины. Из себя он представляет некую ОС (на основе Debian, кажется), с веб-интерфейсом а-ля iPad и проприетарными приложениями.

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

Так как это обычный x86_64 ПК, я записал на флешку свежий дистрибутив, зашел в BIOS и загрузился с нее:

В этом NAS-е есть постоянная память размером 512 МБ куда установлена дефолтная прошивка. Ее я не перезаписывал (при желании можно будет вернуться на нее), и поставил Ubuntu 18.04 на software RAID, собранный из двух установленных дисков. На каждом диске создается по партиции одинакового размера, и они объединяются в RAID1. На одном диске также раздел для загузчика и /boot:

Читайте также:  Windows listing loaded drivers

Домашнее облако

Для замены Google Drive (Яндекс.Диск, Dropbox и тд.) я выбрал Seafile — https://www.seafile.com/en/home/

Выбор был между ним и Nextcloud/ownCloud, но после тестовых установок выбрал Seafile. До 3-х пользователей можно использовать Enterprise версию — её и взял. В ней есть поиск по файлам и еще несколько полезных функций, вот здесь есть сравнение бесплатной и enterprise версий. Разворачивал с помощью Docker — очень просто и быстро, на сайте есть подробный мануал

У Seafile есть веб-интерфейс, desktop-приложение для всех ОС и мобильный клиент.

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

Seafile тоже не идеален, всё что он умеет — просто хранить файлы. Особенности использования:

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

есть приложение для Android/iOS. Довольно скромное, но заливать фотки с телефона и просматривать файлы умеет.

Домашний NAS и медиа-плеер

Так как в NAS-е есть HDMI выход, я его подключил к телевизору и сделал из него медиа-плеер. В комплекте также есть пульт ДУ:

С помощью очень классной программы Kodi (https://kodi.tv/) можно полностью заменить smartTV, онлайн-кинотеатр и приставку для проигрывания IPTV. Он устанавливается на linux и на экран выводит свой интерфейс. Навигация пультом ДУ или приложением Kore. С пультом были проблемы, не заводился из коробки, пришлось немного потанцевать с бубном.

Вот так выглядит интерфейс Kodi на телевизоре:

Как я использую Kodi:

  • плеер фильмов, которые лежат на NAS-диске
  • плеер IPTV вместо MAG-250. Умеет показывать multicast-потоки
  • проигрыватель YouTube (приложение не очень удобное, но юзабельное)
  • в поездках с помощью приложения Kodi для Android подключаюсь к своему NAS и смотрю с него фильмы. Получается такой self-hosted онлайн-кинотеатр
  • для скачивания новых фильмов на NAS установил Transmission + web-интерфейс

Также на NAS поставил FTP и Samba, чтобы подключаться с девайсов в локальной сети и NFS для монтирования сетевого диска.

Такой схемой я пользуюсь около года и вот какие выводы сделал:

  • приложения Яндекс.Диск/Google Photo удобнее и быстрее. Да, opensource-аналоги не дают такого удобства использования — то тут, то там встречаются мелкие косяки (например в android-приложении seafile фотки при просмотре скачиваются полностью, т.е. не превью сжатое, а фото если весит 5МБ — оно все полетит на телефон, это медленно и занимает место на телефоне; хотя в веб-морде есть превьюхи). Ну и поиск в Гугл.фото по содержанию фотографий (когда в поиске вводишь “горы”, и он показывает все фотографии гор из вашей библиотеки) — это вообще киллер фича, такого в бесплатные аналоги не знаю когда завезут.
  • скорость загрузки файлов в Seafile гораздо выше, чем в публичные облака
  • смотреть фильмы теперь супер удобно. Особенно в поездках. 4G есть практически везде в России, и теперь не надо закачивать кучу фильмов на телефон — смотрю онлайн, подключаясь с телефона к домашнему серверу. В случае отсутствия связи, например в поезде, подключаюсь по FTP и скачиваю перед отправлением.
  • Kodi — супер комбайн, но хотелось бы научиться стримить телевизионный сигнал на телефон, чтобы смотреть ТВ не из дома. Этого еще не понял как сделать.
  • чтобы все это настроить пришлось покурить мануалы и подзаморочиться с установкой и наладкой.

Хочу ли я вернуться в публичные облака (Google Drive, Яндекс.Диск)? Нет, не хочу. На мой взгляд, плюсов в такой схеме все же больше, чем минусов. А внутренний параноик теперь спит сладким сном.

Источник

Оцените статью