Библиотека сайта rus-linux.net
Базовая настройка Linux на VPS для проекта Django. Почему именно Fornex.com
Выбор хостинга
Разворачивание сайта на обычном хостинге эффективно только для небольших проектов (например, сайта-визитки), практически все хостеры устанавливают ограничения на процессорные нагрузки и число сайтов, поэтому для сайтов с большой посещаемостью оптимальным выбором будет VPS от хостинга Fornex. Стоимость такого ресурса значительно меньше выделенного сервера, но владелец получает полноценную виртуальную машину, на которой может установить любую операционную систему и набор приложений для реализации своих проектов.
Число предложений на российском рынке огромно, как и диапазон цен, но нужно понимать, что чудес не бывает, и если хостер предлагает несколько виртуальных ядер и 8 гигабайт ОЗУ за 5-6 USD в месяц, то скорее всего есть подвох. Часто практикуется жуткий оверселлинг, когда на одном физическом сервере размещаются десятки VPS машин, конкурируя друг с другом за оперативную память и процессорное время и не обеспечивая заявленной производительности. Либо владелец оборудования экономит на развитии и обслуживании своих серверов, что приводит к проблемам с надежностью. Для того, чтобы обеспечить uptime сайтов до 99,99% , важно использовать надежное серверное оборудование, например, Supermicro.
На всех хостингах используются технологии примерно одного уровня, ни у кого нет явного технологического прорыва, позволяющего продавать виртуальный сервер в несколько раз дешевле, чем конкуренты. Также мало кто из российских компаний обладает собственными датацентрами, обычно они просто перепродают ресурсы зарубежных хостеров, но физически не могут влиять на надежность и скорость работы. Мировые гиганты (например, Digital Ocean, Amazon) предлагают дешевый хостинг, но необходимо обладать достаточной квалификацией администрирования Linux и владеть английским языком для общения с технической поддержкой. Поэтому русскоязычным пользователям придется решать все проблемы самостоятельно.
Но есть и сбалансированные предложения, сочетающие разумную стоимость, высокую отказоустойчивость и быструю техподдержку, всё это есть у провайдера Fornex.
Теоретическая часть установки Django
Фреймворк Django активно развивается, занимая лидирующие позиции у разработчиков на Python. Встроенный отладочный сервер позволяет быстро создать проект на локальной машине, но его перенос на VPS сервер достаточно сложен для людей, имеющих начальный опыт администрирования Linux систем. Но с хостингом Fornex.com можно легко получить работающий сайт на Django вообще не разбираясь с администрированием. Для этого в личном кабинете выберем нужное приложение (Django x Ubuntu 16.04), нажимаем «Запустить переустановку» и через несколько минут получаем виртуальный сервер с предустановленным набором программного обеспечения для работы production сервера.
На операционную систему Ubuntu устанавливается Django актуальной редакции, создается пользователь developer, и новый проект на базе фреймворка. Местоположение файлов проекта - /home/developer/django35/. Фреймворк устанавливается в виртуальной среде Python с помощью virtualenvwrapper, поэтому на этом же виртуальном сервере можно развернуть проекты с отличающимися версиями пакетов Pyhton. Фактически, пользователь получает рабочий сервер готовый к любым нагрузкам, не требующий дополнительных настроек, в чем можно убедиться, просто введя адрес сервера в адресной строке.
Для веб-сервера используется Nginx, для сервера-приложений – uWSGI в режиме Emperor, что позволяет размещать несколько одновременно работающих проектов. Данные продукты способны выдерживать любые нагрузки, поэтому стали почти стандартом у разработчиков web-сервисов.
Для размещения рабочего проекта достаточно залить его файлы в созданный каталог, заменив пустой проект, затем перезапустить uWSGI с помощью touch-reload и сервер полностью готов к наплыву посетителей.
Практическая часть: установка Django
Переходим в наш кабинет клиента, где есть заказанная услуга VDS/VPS, выбираем раздел «Настройки». Далее необходимо нажать «Переустановить ОС», где выбрать «Приложения» и Django.
Перед установкой у нас попросят подтвердить данное действие:
После подтверждения нужно подождать около 10 минут и установка Django будет успешно завершена.
Запуск базы данных
Если вы будете пользоваться API БД, то сначала проверьте работает ли сервер БД работает.
Django поддерживает немало БД с PostgreSQL, MySQL, Oracle и SQLite.
Если вы развиваете несложный project или что-то, что вы не станете развертывать в рабочей среде SQLite, данный вариант будет одним из простейших и не требует индивидуального vps. Но, SQLite имеет много различий от других БД, поэтому, если у вас полномасштабный project, то лучше работать с той же БД, которую вы будете использовать в разработке.
Также, есть бэкенды, которые позволяют брать другие БД с Django.
В дополнение к серверной части, вам нужно проверить, что имеются привязки БД.
Если вы выбрали PostgreSQL, то лучше всего использовать пакет psycopg2.
Если вы выбрали MySQL, то лучше использовать драйвер DB API, в качестве mysqlclient.
Если вы выбрали Oracle, то наиболее подходящей будет копия cx_Oracle.
Если вы выбрали manage.py, то при ручной установке Django в нашей инструкции мы взяли именно её.
Установка Django на Linux
Установку Django возможно провести различными методами - выгрузить архив с сайта, вытянуть c git, задействовать pip и так далее.
Мы расскажем о том, как установить Django при помощи pip.
Устанавливается он достаточно просто:
Запускается скрипт загрузки
Установка завершена.
Важно отметить то, что все действия происходят от имени привилегированного пользователя, поэтому, пользуйтесь su или sudo.
Далее устанавливаем Django, используя PIP:
По итогу мы увидим что-то вроде этого:
После необходимо проверить успешность установки Django, прописав в терминале следующее:
Ниже будет следующее сообщение:
Почему для реализации проекта стоит выбрать Fornex.com
Это немецкая компания с собственными датацентрами в Германии, России, Украине и Нидерландах. В зависимости от того, на рынок какой страны направлен размещаемый проект, можно выбрать оптимальное размещение сервера. Например, для хранения персональных данных российских клиентов сервер физически должен находиться на территории РФ в силу действующего законодательства. Сервис представлен на рынке дольше 10 лет, его услугами пользуются боле 50 000 клиентов, есть популярные клиенты такие как: ЯПЛАКАЛъ ,Pikabu, Admitad, Lety Shops, SeoSprint. Для удобного доступа к основным возможностям арендуемого VPS пользователям предоставлен личный кабинет, где большинство действий по настройке, администрированию и созданию резервных копий можно выполнить в 1-2 клика. Это не является полноценной заменой платных панелей управления, но существенно упрощает жизнь. Также вся статистика загрузки ядер, памяти, диска и сети доступна в графическом виде из личного кабинета.
Fornex обладает большим опытом отражения DDoS атак, поэтому предоставляет эту услугу как своим клиентам, так и сторонним ресурсам.
В качестве технологии виртуализации применяется только KVM, поэтому владельцу виртуального сервера гарантировано постоянное выделение ядер и оперативной памяти в соответствии с тарифом. Используется высокопроизводительное серверное оборудование с дисками NVMe и SSD, которые работают по интерфейсу PCI Express, их производительность в разы выше. Диск NVMe выдает большую скорость чтения-записи данных, объединенными в массивы RAID10, что важно для высоконагруженных проектов, постоянно обращающихся к БД. Для защиты своего трафика можно приобрести услугу VPN, с размещением сервера в одной из 10 стран, но можно в любой момент переключить локацию, существует выделенный IP и есть плагин для браузера c быстрым переключением в 1 клик.
Отличием Fornex.com от большинства предложений на рынке хостинга является бесплатная базовая техническая поддержка и перенос ваших сайтов, что существенно сокращает время на решение проблем при администрировании Linux систем. Специалисты обновят ОС, установят необходимые модули PHP, выполнят тюнинг виртуальной машины под планируемые нагрузки, сделают резервное копирование. Хорошая быстрая поддержка, время отклика специалистов обычно не превышает 5-10 минут. Также доступны для установки популярные панели управления ISP-Manager 5 и VestaCP, когда основные действия по настройке сервера можно выполнить в несколько кликов, без ввода команд Linux в терминале.
Еще один инструмент для снижения сложности администрирования Linux систем – набор готовых приложений с популярными БД и фреймворками. Можно сразу получить настроенную виртуальную машину для работы с Bitrix, Django, Docker, Go, MariaDB и десятками других продуктов, не тратя время на установку из репозиториев и базового конфигурирования.