Как сделать vds на своем компьютере
Данное руководство предназначено для развертывания и настройки VDS сервера на примере Ubuntu 20.04 с установкой веб-сервера nginx, php 7 и сервера базы данных MySQL.
Автор материала
Артем. Веб-разработчик, создатель проекта Лектория, эксперт MODX Revolution, директор веб-студии OpenColour. Youtube-канал OpenModx.
Для чего?
Вы уже получили навыки в создании web приложений и хотите разместить созданный сайт в интернете, но как это сделать? Все просто! Есть хостинг провайдеры, которые, как раз и предоставляют услуги, по размещению сайтов в сети. Заходя на страничку к провайдеру, вы видите, что можно взять в аренду виртуальный хостинг или VDS.
В чем разница? Давайте рассмотрим эти продукты и избавимся от боязни их использовать. Начнем по порядку от общего к частному.
Хостинг - это услуга по предоставлению ресурсов для размещения информации на сервере, постоянно имеющем доступ к интернету. Следовательно виртуальный хостинг - вид хостинга, при котором множество веб-сайтов расположено на одном веб-сервере. Это самый экономичный вид хостинга, подходящий для небольших проектов. Исходя из определения разные тарифы на виртуальные хостинг могут отличаться по следующим основным параметрам:
- размер дискового пространства;
- количество месячного трафика;
- количество сайтов, которые можно разместить в рамках хостинга как одной услуги;
- количество баз данных и количество места под базы данных;
- количество почтовых ящиков и FTP-аккаунтов;
- ресурсы CPU;
- количество оперативной памяти.
Используя виртуальный хостинг, соответственно Вы попадаете в определенные ограничения по использованию ресурсов, при превышении которых выставляются предупреждения об ограничении работы и предлагается повысить тариф или начать работу по оптимизации сайта. Но как компенсация этого, в Вашем распоряжении есть административная панель, с помощью которой вы можете реализовать все функции по управлению сайтами.
Альтернативой виртуального хостинга является использование VDS\VPS (Virtual Dedicated\Private Server) — это, виртуальный выделенный или приватный сервер, который предоставляется хостинг провайдером в аренду заказчику.Чтобы не вводить в заблуждение, сразу отмечу, что разницы между аббревиатурами VPS и VDS нет никакой. Дело в том, что два этих понятия появились практически одновременно и параллельно развивались.
Что же такое VDS? Говоря простым языком, поставщик услуг на своем оборудовании, с помощью средств виртуализации разворачивает несколько виртуальных (программных) серверов. С точки зрения функциональности такой сервер ничем не отличается от физического, на него также устанавливаются операционная система и программное обеспечение, он также расположен в сети и управляется, как и остальные ПК, средствами удаленного администрирования. При этом данный сервер находится на удаленной площадке провайдера, которая защищена от сбоев и оптимизирована под работу 24/7/365. В свою очередь хостинг провайдер берет на себя все обязательства по обслуживанию и сопровождению оборудования и системы виртуализации. Но соответственно цену на эту услугу несколько выше чем на виртуальный хостинг.
К достоинствам этой услуги можно отнести, что Вы больше не будете ограничены количеством месячного трафика, размещаемых сайтов, базами данных и прочим. В Ваших силах теперь установить на свой VDS все необходимое программное обеспечение без каких-либо запретов и ограничений.
Но и минусы тоже есть. Настройка и администрирование теперь является Вашей заботой.
Исходные данные
Определим, что у нас есть некоторый сайт, работающий на php+MySQL под управлением некой CMS (в нашем случае это будет MODX Revolution, но на процесс настройки VDS это не влияет), а это значит, что помимо развертывания CMS необходимо установить и настроить основные модули php, nginx, mysql. Для этого определим следующую последовательность наших действий:
В руководстве будем пользоваться услугами компании timeweb. Переходим на вкладку VPS / VDS, из предлагаемых тарифов выбираем тот, который нам подходит по характеристикам и нажимаем кнопку заказать. После этого попадаем в окно регистрации и выбора параметров виртуального сервера.
В текстовые поля вводим свою фамилию, имя и отчество, и адрес электронной почты. В выпадающем списке меняем операционную систему на Ubuntu 20.04
Если хотите пользоваться преимуществами VDS и при этом защититься от бессовестного оверсела, когда провайдер забивает ноду под завязку и не балансирует нагрузку — есть два пути.
Можно найти своего надёжного VDS-хостера. Или убить всех ситхов самому и сделать собственную звезду смерти (ноду) — заказать выделенный сервер и перенести туда все свои VDS. Ведь тогда мы точно будем знать, что все ресурсы только наши и всегда будут доступны. Да ещё и ставить сможем любую ОС, какую захотим, любой софт, который приспичит, а Битрикс будет радовать попугаями благодаря высокой частоте процессора. Кто знает, может даже начальство расщедрится и выпишет премию. Поехали!
Считаем, сколько у нас мидихлориан
Для начала нужно узнать суммарную стоимость аренды парка VDS и реальный расход ресурсов процессора, оперативной/постоянной памяти, количество IP. Выяснить частоту процессора, который выделен вашим VDS. Тут у всех хостеров индивидуально — смотрим графики, считаем цены.
Выбираем подходящее тело
Теперь, когда мы знаем текущие потребности по ресурсам, подбираем подходящий выделенный сервер.
Процессор
При выборе процессора важно учитывать — частота ядер может быть значительно выше, чем на текущих VDS. Если она выше в два раза — можно считать одно ядро дедика за два ядра VDS. Тут может возникнуть буря возмущения, но стоит понимать: все проекты разные, а это самый простой способ подобрать процессор. В общем, берём количество ядер, которые реально используются старыми VDS, если частота ядер около 2 Ghz делим на два.
Полученное значение — минимальное количество ядер дедика, которое требуется.
Память
С оперативной памятью и жёстким диском всё просто. Суммируем ресурсы VDS, добавляем 1 GB оперативной памяти и
10 GB жёсткого диска. Эти дополнительные ресурсы нужны для работы ОС и панели управления гипервизором. Если собираетесь увеличивать количество контента — заложите запас ресурсов для роста проекта.
IP-адреса
Как и в случае с памятью, берём столько же адресов, как на VDS-ках + 1 под сам дедик.
Заказываем сервер, соответствующий нашим запросам, и с учётом упомянутых нюансов. В качестве ОС выбираем Debian 9, именно под эту ОС делают годную панель управления Proxmox.
Пробуждаем силу
Спустя некоторое время у нас на руках будет root-доступ на новенький дедик.
Пора сказать пару слов о теплой, ламповой и бесплатной панели управления гипервизором Proxmox. Да, сама панель бесплатна — разработчики зарабатывают на подписке. Подписчики, в свою очередь, получают более стабильную версию панели и возможность добавить больше нод в кластерном режиме. Но для нашей цели с головой хватит бесплатной версии.
Относительно недавно панель крупно обновилась, сейчас выглядит весьма современно и функционально. Поддерживает KVM и LXC-виртуализации, позволяет организовать своё ceph-облако, поддерживает возможность резервирования, словом умеет все, что может понадобиться рядовому пользователю VDS-хостинга.
Приступаем к установке Proxmox
Подключаемся к серверу по ssh, используя putty или другой ssh-клиент и последовательно выполняем команды:
Перед созданием первой VDS на новом сервере нужно настроить сетевой мост, чтобы все было по-взрослому. На этом этапе может понадобиться KVM или ipmi-kvm (если что-то пойдёт не так, и нужно будет восстанавливать доступность дедика по сети).
Возвращаемся в ssh и редактируем конфиг /etc/network/interfaces посредством плебейского nano или православного vim. Приводим конфиг к этому виду:
Сохранив отредактированный конфиг, отправляем дедик на перезагрузку. Помимо настройки сети это также загрузит новое ядро.
После запуска сервера вновь обращаемся к SSH, чтобы скачать ISO-образы операционок для будущих VDS, а также образ sysrescuecd. Образы нужно сложить в директорию /var/lib/vz/template/iso
Для загрузки используем wget и прямые ссылки. Можно не скачивать образы систем, если вы хотите просто перенести существующие VDS на дедик. Но образ sysrescuecd может понадобиться для обслуживания VDS, поэтому очень рекомендуем скачать его сразу.
Отправляемся покорять далёкую галактику
Пришло время создавать на нашем дедике VDS: жмём кнопку «Создать VM» в правом верхнем углу панели Proxmox, заполняем поля на всех вкладках, используя данные любой из старых VDS. Формат образа выбираем qcow2.
Образы дисков будут создаваться по пути /var/lib/vz/images/[тут ID новой VDS].
Мониторинг
Завершив перенос и сменив DNS, начинаем отслеживать показатели нагрузки. Это не обязательно, но полезно. Для такого мониторинга можно просмотреть общую сводку кластера.
В сводке ноды более подробная информация:
Если внезапно окажется, что какой-то ресурс ноды заканчивается, по сводкам VDS можно определить, какая из них потребляет много ресурсов, и оптимизировать сервисы проблемной VDS. Когда проекты перерастут текущий сервер, для перехода на более производительное железо достаточно будет переставить диски из одного сервера в другой. Такие работы занимают около 15 минут — куда быстрее, чем миграция VDS между нодами.
Минусы у дедика тоже, конечно, есть, но Proxmox помогает их нивелировать. Первое — это если ляжет дедик, полягут все VDS. Проблема решается резервированием, но понадобится больше дедиков. Ещё при использовании выделенного сервера нужно настроить raid 1 и следить за состоянием дисков при помощи smartd (и это Proxmox умеет). В случае с VDS эта же проблема решается заказом виртуалок у нескольких провайдеров, но это не очень удобно.
Переход на выделенный сервер — это разумный шаг, когда стоимость арендуемых VDS сопоставима с ценой выделенного сервера. Выбрать готовую конфигурацию или собрать свой дедик вы можете на FirstDEDIC. Хотите, чтобы проекты летали — выбирайте скоростные NVMe-диски (быстрее SSD в 2-3 раза).
В этой статье мы поэтапно расскажем о том, как создать виртуальный сервер (VPS/VDS) в панели управления Serverspace и о том, как подключиться к созданному серверу.
Как создать виртуальный сервер?
2. Затем выберите шаблон виртуального сервера из списка — операционную систему (ОС), которая будет установлена.
Стоимость лицензии Windows Server при выборе соответствующей ОС уже включена в абонентскую плату, независимо от того, имеется у вас домен в виртуальной инфраструктуре или нет.
Если же вы планируете установить на VPS/VDS другую ОС, просто создайте ее ISO-образ и отправьте его нашей техподдержке.
3. Далее необходимо выбрать технические параметры виртуального сервера. Вы можете создать собственную конфигурацию, либо выбрать готовую:
Примеры готовых конфигураций:
Стандарт | Стандарт+ | Профи | |
---|---|---|---|
Количество ядер | 1 | 4 | 10 |
Оперативная память | 512 МБ | 11 ГБ | 26 ГБ |
Объем хранилища | 10 ГБ | 250 ГБ | 1000 ГБ |
Ширина интернет-канала (Мбит/сек) | 10 | 10 | 100 |
При этом в дальнейшем вы сможете менять конфигурацию прямо в панели управления.
После выбора ОС необходимо выбрать центр обработки данных (ЦОД), в котором будет размещаться ваш виртуальный сервер. Наши ЦОД-ы расположены в Беларуси (beCloud), США (NNJ3) и в Нидерландах (AM2), и для каждой страны доступна своя конфигурация.
4. За дополнительную плату вы можете подключить автоматическое создание резервных копий (бэкапов) виртуального сервера, которые создаются раз в сутки. Для этого необходимо выбрать период хранения бэкапов — 7, 14, 21 или 28 дней.
5. Если на этапе подбора операционной системы вы выбрали ОС Windows Server и ее необходимо включить в существующий домен Microsoft Active Directory, просто поставьте галочку в чекбоксе «выполнить системную подготовку Windows». При этом время создания сервера увеличится на 15-20 минут, так как в процессе создания будет запущена специальная утилита sysprep.
Если же в качестве операционной системы выбрана FreeBSD, Debian, Ubuntu или CentOS, необходимо дополнительно указать способ подключения — через пару логин/пароль или по SSH. Логин и пароль генерируются автоматически и появляются на экране после создания сервера. SSH-ключ можно сгенерировать при помощи утилиты или прикрепить уже сгенерированный ключ.
6. Затем необходимо указать количество серверов и присвоить им имена. За один раз можно создать до 5 серверов.
При создании сервера сетевому интерфейсу будет автоматически присвоен один бесплатный IPv4-адрес. В дальнейшем вы сможете подключить дополнительные IPv4- и IPv6-адреса за отдельную плату.
Подключение к виртуальному серверу
После создания виртуального сервера к нему можно подключиться через веб-консоль. Для подключения потребуется логин и пароль администратора, указанные во вкладке «Состояние».
Кнопка перехода в веб-консоль расположена в правом верхнем углу. Если вам неудобно пользоваться веб-консолью, вы можете подключаться к серверу любым другим удобным способом.
Подключение к операционным системам происходит по разным протоколам: для FreeBSD, Debian, Ubuntu и CentOS используется протокол SSH, а для подключения к серверам Windows — протокол RDP.
Хотели бы вы узнать, что такое веб сервер? Или же впервые в жизни "потрогать" виртуальную машину? А может вам просто интересно, как выглядит хостинг? С любовью для пикабушников постараюсь рассказать обо всем по немножко.
Disclamer: Данный материал является ознакомительным и рассчитан на людей, которые только начинают свой путь в мире IT технологий. Технические подробности всего раскрываться не будут(но на вопросы отвечу). Следующий материал является прямым скриптом, как сделать веб хостинг. И небольшая просьба, если вы добавляете в сохранки, оцените пост, тем самым вы даете мне понять, следует ли делать подобные гайды.
Что нам потребуется?
1. Виртуальная машина (далее ВМ) - VMWare
2. Любой компьютер, на который мы установим ВМ
3. Дистрибутив Ubuntu 18.04 LTS. Что бы не пугать вас, лучше скачайте Desktop image, она имеет графическую оболочку, а не только консоль.
Первым делом устанавливаем нашу программу виртуализации - VMWare. Запускаем ее и нажимаем "Создать новую ВМ". Выбираем скачанный дистрибутив
Full name и user name - по вашему желанию. Жмем далее, "Имя ВМ" и путь хранения ВМ - по вашему усмотрению. Размер выделяемой памяти оставляем по умолчанию(можно снизить до 10 гб), жмем далее.
В последнем пункте жмем Customize Hardware. Т.к. вы будете работать в самой ВМ и ее виртуальной оболочке, стоит увеличить значения пункта Processors до 4.
В пункте Network Adapter выбрать значение Bridged и установить галочку Replicate.
Жмем Close > Finish. Дожидаемся окончания установки ОС. Когда ОС установилась, открываем терминал комбинацией клавиш Alt+Crtl+T или же в нижнем левом углу жмем на Show Application и пишем в поиске - Terminal.
Далее нам следует получить права супер пользователя, в терминале вводим команду sudo su и вводим пароль, который вы указывали при установке системы.
Сначала мы обновим ОС до актуальной версии. Вводим в терминал команду:
Вы превосходны! Теперь вы имеете готовую машину, для создания веб сервера. Далее мы и установим наш веб сервер Nginx.
После установки вы можете посмотреть его статус с помощью команды
Примечание: Пример управления процессами в ubuntu - systemctl stop\start\status\reload
Собственно, веб сервер уже находится в активном состоянии и вы даже можете зайти на свой "сайт". Для этого вам стоит узнать локальный адрес своей виртуальной машины. Что бы его узнать, вводим в терминал:
127.0.0.1 - это localhost, адрес вашего компьютера по умолчанию, если так можно выразиться. Нам нужен тот, который начинается(в большинстве случаев), с 192.168.*.*
Копируем наш адрес, вставляем в браузер виртуальной машины или своего компьютера, без разницы. и мы увидим автоматически сгенерированную страничку HTML при установке Nginx
Файлик этот лежит в /var/www/html/
Что бы его отредактировать, введите
При вводе пути каталогов вы можете нажимать Tab, что бы автоматически заполнялось существующее имя. Например /var/ww *жмем таб* выводится /var/www/. Так же если вы не знаете, что находится в данном каталоге, но если хотели бы узнать, нажмите таб дважды, например /var/ *2-x tab*:
Примечание: перемещение по каталогам осуществляется с помощью утилиты cd. Если вы не работали с терминалом - краткое пособие
Выйти из редактора можно комбинацией клавиш Crtl+X. nano - это текстовый редактор, аля блокнот в винде, только этот в терминале.
Теперь нам нужно показать наш "сайт" всему миру, верно? И еще бы денег не потратить, ведь их и так нет. В этом нам поможет сервис с бесплатными динамическими DNS серверами. Он выдаст нам бесплатно доменное имя на 30 дней, его потом можно так же вручную продлевать на 30 дней.
Сперва нам следует выяснить одну вещь. Как вы подключены к интернету. Кабель идет на прямую в компьютер или в роутер. На этом этапе нам придется заниматься сложными, для новичка, вещами - port mapping или проброс портов.
netsh interface portproxy add v4tov4 listenport=8080 listenaddress=YouIPv4connectport=80 connectaddress=IP адрес вашей ВМ
Эта команда перенаправляет весь трафик поступающий конкретно на ваш компьютер из интернета, на порт nginx-a, который находится в ВМ. Более подробно про проброс - тут
2. Если у нас кабель идет из роутера в компьютер.
Сначала нам следует залогиниться в веб интерфейс вашего роутера, для каждого роутера это индивидуальный процесс, придется погуглить. Внутри роутера, обычно на главное странице, есть его собственный IP адрес. Он то нам и нужен, его скопируйте и отложите не на долго. Далее нам следует найти "Переадресацию". В условиях переадресации нужно добавить следующее правило:
Перенаправлять весь трафик с порта 8080 на порт 80, IP адрес вашей ВМ. В моем случае IP адрес 192.168.0.102, протокол TCP.
Жмем кнопку Create Hostname.
Вводим имя нашего хоста и выбираем любой Free Domain. В IPv4 вводите адрес либо своего ПК, если подключены на прямую, либо своего роутера, если подключены через роутер.
После создания домена информация на серверах noip может обновляться до суток, но обычно в течении 5 минут все заводится.
Остается финальный штрих, ввести наш новосозданный адрес, и убедиться, что все работает :)
Вводить следует так: ИмяВашегоСайта:8080
Читайте также: