Наступает момент, когда самого обычного виртуального хостинга становится недостаточно для решения определенного рода задач. Например, нет возможности сделать настройку под себя и установить конкретную операционную систему, или уже сами администраторы хостинг-компании в целях безопасности не всегда позволят установить необходимый скрипт. Да и как-то не сильно приятно сидеть на «иголках» из-за того, что очередной недоброжелательный сосед виртуального хостинга начнет рассылать спам и от этого, в последствии, могут пострадать все проекты, которые размещаются на данном IP-адресе. Техподдержка естественно сразу блокирует таких «умников», но если подобная проблема повторяется с этим IP не первый раз, то он как правило успевает попасть в базы, и с продвижением сайтов могут начинаться трудности.
Мы с ребятами довольно долго арендовали несколько «кусочков» места на диске хостинг-сервера и, пока все вопросы были решаемы, даже и не задумывались о переезде. Если честно, то в принципе большинство вопросов и сейчас можно решить. Мы довольно часто идем на встречу своим клиентам и предоставляем разовый доступ для установки скрипта или предлагаем перенести пользователя на другой IP-адрес в случае появления очередного спамера, которым в итоге может оказаться обычный начинающий вебмастер. Все вопросы можно решить, но для этого необходимо дополнительно открывать тикет и делать лишние «телодвижения», которые отнимают время.
И вот приходит момент, когда становится просто лень этим заниматься, ведь есть и более важные дела. Да и каждый раз дергать администраторов как-то надоедает, кто его знает, может совесть просыпается, а может просто хочется «свободы». Свободы в работе со своим пускай и маленьким, но именно своим собственным проектом, а тебе устанавливают ограничения и о возможности шагнуть влево или вправо нужно дополнительно спросить в тикете, и еще далеко не факт, что на это даст добро техподдержка. Нам с ребятами надоело это все и мы решили переехать на небольшой виртуальный сервер.
На момент нашей миграции хостинг-компания уже год как предоставляла услугу облачный VPS. Честно сказать, у этих виртуальных «машинок» были как приятные моменты в истории, так и те, о которых не сильно хочется вспоминать. Правда во время эксплуатации большинство недочетов было устранено и по прошествии довольно длительного периода времени никаких проблем больше не наблюдалось.
Так вот, я сделал рассылку среди нескольких своих знакомых вебмастеров, которые уже давно вместе со мной размещали свои проекты у нас, и предложил сделать первый шаг к той «свободе», разговор о которой уже велся довольно давно. Срок действия наших текущих пакетов виртуального хостинга позволял нам особо не спешить и все хорошо обдумать. Кстати, еще как раз в этот момент готовился к публикации материал по обзору бесплатных панелей управления хостингом, и в частности работа над одной из них, а именно панелью Vesta позволила склонить чашу весов в пользу переезда на небольшой виртуальный сервер.
С ностальгией вспоминаю работу над статьей о «богине» Vesta, да и в целом о сотрудничестве с ее командой разработчиков. Думаю это не последняя совместная работа и ребята нас еще не раз порадуют интересными дополнениями и обновлениями своей замечательной панели. Но данная публикация не об этом, потому не будем отвлекаться.
Переезд согласовали провести после того, как народ немного отойдет от новогодних праздников, как раз будет достаточно времени все проверить и разобраться в некоторых моментах по администрированию. Все организационные моменты ребята доверили мне, ведь я заварил всю эту «кашу» с миграцией. Ну что думаю, поехали…
Для начала приведу несколько весомых аргументов именно в цифрах. Посчитайте сами — на 4-х вебмастеров мы арендовали 2 пакета виртуального хостинга SSD BASIC, и платили за него $38 в год, раньше цена была еще выше. При аренде самой простой облачной VPS — S в США на год цена составит уже порядка $48. Какой смысл платить больше?! — спросите вы. А давайте сравним ресурсы и, думаю, подобный вопрос больше не появится.
Первый момент — это дисковая квота. Оба пакета хостинга SSD BASIC в сумме давали нам не более 20 ГБ дисковой пространства на сервере, против порядка 40 ГБ на виртуальной машинке. Правда, хочу сразу сообщить, что после установки операционной системы (ОС) на свой VPS мы «накатили» CentOS 6, свободного места на диске осталось 31 ГБ:
[root@SKRS1666 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg0-root 33G 870M 31G 3% /
tmpfs 499M 0 499M 0% /dev/shm
/dev/vda1 485M 47M 413M 11% /boot
/dev/mapper/vg0-temp 2.0G 3.1M 1.9G 1% /tmp
А так как без удобного графического интерфейса управления никуда, то мы еще установили и панель Vesta, что «скушало» порядка 1 ГБ дискового места. В результате всех этих несложных настроек мы с ребятами получили гарантированных 30 ГБ на твердотельном накопителе виртуального сервера:
[root@SKRS1666 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg0-root 33G 1.7G 30G 6% /
tmpfs 499M 0 499M 0% /dev/shm
/dev/vda1 485M 74M 387M 16% /boot
/dev/mapper/vg0-temp 2.0G 3.1M 1.9G 1% /tmp
Второй момент — трафик. Если на 2-х пакетах виртуального хостинга мы могли потреблять не более 200 ГБ в месяц, то на VPS — S предоставляется пакет уже в 4 ТБ (~4000 ГБ). Разница чувствуется, верно? А если добавить, что каждая виртуальная «машинка» должна иметь канал подключения в 1 Гбит / c, то думаю многие из вас захотят, как минимум, это проверить. Ну что, давайте проверять. Подключаемся к серверу по SSH и запускаем в консоле следующую команду:
wget -O - https://raw.github.com/sivel/speedtest-cli/master/speedtest_cli.py | python
И смотрим на результат:
Retrieving speedtest.net configuration...
Retrieving speedtest.net server list...
Testing from XxxxxXxx Netherlands B.V. (xxx.xxx.xxx.xxx)...
Selecting best server based on latency...
Hosted by NFOrce Entertainment B.V. (Amsterdam) [0.00 km]: 3.338 ms
Testing download speed........................................
Download: 942.47 Mbit/s
Testing upload speed..................................................
Upload: 363.98 Mbit/s
Но мы ведь хотим проверить виртуальные сервер и на локации в США:
Retrieving speedtest.net configuration...
Retrieving speedtest.net server list...
Testing from XxxxxXxx USA (xxx.xxx.xxx.xxx)...
Selecting best server based on latency...
Hosted by Fast Serv Networks, LLC (Ashburn, VA) [28.16 km]: 2.708 ms
Testing download speed........................................
Download: 194.86 Mbit/s
Testing upload speed..................................................
Upload: 315.74 Mbit/s
Если честно, то не думал что будет больше 100 Мбит / с, так как при загрузке в полку даже такого канала сервер за месяц может «скушает» под 30 ТБ трафика. Оно вам нужно? Ваш запас в 4 ТБ при канале 1 Гбит / с (что предусмотрено на данных виртуальных серверах) может «улететь» ну максимум за 12 часов. И потом что, сидеть практически весь месяц без сервер или тратить дополнительные средства на апгрейд трафика?! Ну вот правда, оно вам нужно?
Учитывая довольно серьезную ширину полосы подключения серверов и совсем небольшие пакеты по трафику, советую начинающим трафикогенераторам следить за потреблением или вообще не арендовать данный вид серверов. Они просто не для такого рода задач, ребята. Да, можно взять с десяток таких машинок и в сумме получить больше ресурсов, чем на одном выделенном сервере за аналогичную сумму, но уж точно не ради того, чтобы распределить нагрузку между всеми виртуальными серверами.
Такие VPS могут быть интересны тем, кто занимается email-маркетингом. Есть достаточное количество компаний, которые предоставляют подобного рода услуги, и вот как раз под такие задачи очень важно иметь большое количество IP-адресов. Просто не всегда дата-центр дает возможность заказать к одному выделенному серверу, скажем, более 10...15 IP, которые к тому же еще и стоят денег. А если за цену одного IP вы получаете не только адрес, а целый виртуальный сервер. Правда, звучит заманчиво?
Мы с ребятами не занимаемся email рассылкой, потому VPS арендовали только ради получения свободы действий на своем «кусочке» сервера. Также мы надеялись, что проблемы с криворукостью и любовью к халяве, которые иногда превращались в траблы со спамом, уже в далеком прошлом. Но, чтобы сделать свои сны более спокойными, я все-таки решил установить на сервер несколько дополнительных плюшек. Не скажу, что это была хорошая идея, но обо всем по порядку.
У нас был небольшой опыт борьбы со спамом, после того как для CMS одного из проектов мы начали использовать, как потом оказалось, не совсем «чистый» модуль. Естественно самым правильным советом будет — не пользоваться сомнительным программным обеспечением. Но ведь иногда так хочется получить няшную фичу. Но именно тогда няшная фича превратилась в киллер-фичу стало реально не до шуток. Потому я пошел читать доку и параллельно сетапить на виртуальный сервер SpamAssassin вместе с ClamAV.
Конечно же просто установить данный софт недостаточно, необходимо провести дополнительную настройку. Но честно говоря хорошо, что я не начал делать это сразу, а сначала решил зайти в панель управления Vesta, для того чтобы активировать все коммерческие расширения, создать пользователей и т.п. Вспомнил, что панель имеет довольно красивые и информативные графики нагрузки, почему-то так захотелось на них взглянуть хоть одним глазком. И вот как раз здесь я немножко офигел. График потребления оперативной памяти имел следующий вид:
Думал может это глюк, потому открыл терминал и ввел команду free c ключом -m, и вот какой получил результат:
[root@lw1666 ~]# free -m
total used free shared buffers cached
Mem: 996 933 63 0 26 126
-/+ buffers/cache: 780 216
Swap: 4095 259 3836
Ммм… да, думаю вот это я решил прокачать «машинку», только вот совсем забыл, что на борту то у нее всего 1 ГБ ОЗУ. Вернулся быстренько в консоль и остановил ClamAV c помощью команды service clamd stop:
[root@lw1669 ~]# service clamd stop
Stopping Clam AntiVirus Daemon: [ OK ]
SpamAssassin решил пока не трогать, так как он не должен «кушать» много ресурсов. Немножко подождал и пошел смотреть показатели оперативной памяти:
Более 300 МБ свободной ОЗУ и вот уже и виртуальной машинке стало проще «дышать», да и меня как-то отпустило. Думаю остановка SpamAssassin позволит освободить еще не менее 100 МБ, но хотелось бы все-таки разобраться и настроить пускай и небольшую, но защиту от спама. Также проскакивала идея запускать тот же ClamAV по заданию cron с последующем обновлением баз, сканированием и автоматической рассылкой результатов на почтовый ящик каждого пользователя. После чего очередное задание cron останавливало бы процесс и большую часть суток сервер работал бы в обычном режиме. Теоретически все эти действия можно вместить в один час. Но, после совещания с администраторами, решил такого не делать. Да и загрузка оперативки в полку пускай и на час времени может очень пагубно сказаться на доступности сайтов, — подумал я — и отложил решение этого вопроса к лучшим временам.
Для начала нужно было перенести проекты на новое место, промониторить их работу, а уже после заниматься установкой дополнительных плюшек, и в случае необходимости оптимизировать работу VPS. Но так же хотелось сделать все здесь и вот прямо сейчас.
Так как с дополнительной защитой сразу не срослось, то я направился на форум в поисках решения под резервное копирование данных. Во время изучения инфы, вспомнил что панель управления Vesta позволяет делать бэкапы как локально, так и выгружать их по FTP на удаленный сервер. Для этого достаточно создать FTP-аккаунт на каком-нибудь сервисе, после чего ввести все необходимые данные в соответствующем меню панели управления. Да, наша компания предоставляем услугу резервного копирования и за довольно разумные деньги. Но если честно, мы с ребятами не готовы были увеличивать бюджет хостинга практически в 2 раза из-за бэкапа. Потому, воспользовавшись поиском, нашли в интернете несколько сервисов где можно было получить FTP-доступ совершенно бесплатно. Как пример одного из них Turtobit. Там халявный пакет имеет ограничение ввиду того, что суммарный размер файлов, загружаемых за раз не должен превышать 10 ГБ, но для начала мы решили, что вполне хватит. А уже в процессе работы использования VPS будем смотреть, и, кто его знает, может даже настроим резервное копирование на ЯндексДиск. Тут уже все будет зависеть от полета виртуальной «машинки».
Так вот получив данные доступа к FTP переходим в раздел меню Сервер панели управления Vesta. После чего нажимаем кнопку Настроить, и опустившись практически в самый низ выбираем пункт BACKUP — Remote backup, где и вводим все необходимые данные:
Сразу после этого советую зайти в меню BACKUP и создать бэкап руками, чтобы убедится, что настройка была проведена корректно. Честно признаюсь, после того как я увидел первый tar архив на FTP-сервере — на душе стало так спокойно. Данные ребят, да и мои тоже теперь бэкапятся.
Скорей всего, еще много чего в процессе работы VPS будет добавлено, изменено или полностью переустановлено. Этот процесс может быть бесконечным, если проекты будут развиваться и требовать дополнительных изменений в настройках самого сервера. Да с созданием виртуального сервера, который практически ко всему был бы готов, были небольшие трудности. Но ведь этот VPS — «машинка» не того класса, да и задачи прокачать «Славик» (ЗАЗ-1103) сразу до «Шкодницы» (Skoda Octavia Tour) совсем не стояло.
Мы с ребятами попытались сделать дешево и сердито, и, думаю, у нас это получилось. В результате чего каждый из нас получил свой «кусочек свободы» на уже нашем личном виртуальном сервере. Великие дела начинаются с малого, а великие веб-проекты начинают свою жизнь на хостинге за 1 доллар в месяц. И если вы при этом полностью контролируете полет своей пускай и немножко «прокаченной машинки», то поверьте он будет долгим и удачным.
P.S. Так как по дополнительной защите остались вопросы, хотелось бы в комментариях увидеть все возможные мнения по данному вопросу и по настройке таких небольших виртуальных серверов.
P.P.S. Не подумайте, мы никого не стимулируем арендовать услугу например за почти 4 доллара и делить ее между 4 пользователями, у нас так просто получилось, да и большинству вебмастеров вполне достаточно виртуального хостинга без этих танцев с бубном)
Данный материал не является официальной позицией компании и содержит лишь отзыв и мнение сотрудника, который размещает у нас со своими коллегами-вебмастерами собственные веб-проекты.
Комментарии (13)
ustasby
30.03.2016 14:34У вебмастера хостинг для себя должен быть по определению бесплатным, партнерские программы еще никто не отменял, 5-10 долгоживущих проектов и все.
ximik13
30.03.2016 15:48+1Странно, всегда считал, что LInux\Unix системы работают с памятью не так как Windows, т.к. пытаются все необходимое всегда держать в ОЗУ. И основным критерием достаточно количества ОЗУ является отсутствие данных в swap. Достаточно давно, когда еще приходилось админить, настраивал пограничный email relay в компании, в силу обстоятельств как раз со spamassasin и clamav. Так вот после тестов и ввода в эксплуатацию забыл виртуалке добавить ОЗУ, она нормально проработала с 256Мб месяца 3-ри. Пока из-за большого потока спама письма не стали заметно задерживаться в очереди. При этом проблема была по большому счету как раз в spamassasin-е и том что проверки там делаются фактически через perl, который при больших потоках писем начинает "жрать" память.
Но на самом деле решать проблему со спамом нужно через Серые списки или greylisting, которые позволяют, при правильной настройке, просто не принимать поток спама. А значит и не возникает необходимость его обрабатывать и проверять.
Это конечно просто мое личное мнение :).
P.s.Сам настраивал spamassasin ровно по тому, что в компании запретили использовать Серые списки :) из-за неудачного подхода к снаряду админами центрального офиса :).
delfi
При возможности, все таки на таких слабеньких машинах лучше отказаться от панели управления.
Собственно, разрабатываю сайты и размещаю демки, некоторые сайты своих заказчиков, заодно и практика в настройке сервера. Решил с недавнего времени поэкспериментировать в панелями управления и столкнулся с парой задач, которые не решаются установкой модулей:
Инкрементальный бэкап (сейчас настроен rsnapshot). Такое понятие есть в virtualmin, которая больше всего приглянулась.
В итоге, при настройке из статьи есть проблемка, что когда разрастутся сайты — архивы бэкапов станут побольше и до отправки на ftp, как понимаю, их нужно хранить локально.
Не нашел бесплатной панели, где из коробки настраивался бы nginx + apache. Можно самостоятельно настроить, затем навешивать скрипты при создании пользователей, в общем, морока есть.
А так, достаточно годная статья, спасибо.
HostingManager
Вы на слабых машинках не работали. 1 ГБ оперативной памяти и 1 ядро процессора, это "слабая" машинка?
Я в свое время использовал виртуалку с 128 МГц процессора и 64МБ оперативной памяти, где стояла ISP Manager и конечно же тупил Webmail. Но для панельки ресурсов было достаточно.
DuD
Зачем apache + nginx? Есть же php-fpm.
delfi
Конечно, есть и такой вариант, но, увы, не всегда применим. Есть специфичные проекты, в которых тонны .htaccess настроек. Или есть какое-то удобное средство для конвертации в конфиг nginx?
DuD
Поверхностный гуглинг говорит что есть. Первое что попалось: http://winginx.com/ru/htaccess
gibson_dev
nginx + apache — http://www.ispconfig.org/ а еще шардирование и много чего
delfi
Да, рассматривал как вариант, но для меня оба фактора были обязательными — инкрементальный бэкап и nginx + apache. Плюс достаточно сложно в настройке для новичка. т.к. ставится уже поверх установленного ПО. Хотя именно на virtualmin и ispconfig оставлял свое внимание и тестировал обе панели.
gibson_dev
инкрементальный бэкап — duplicity и backupninja как фронтенд
DjOnline
Это кстати проблема virtualmin — он не умеет заливать бэкап на ftp прямо во время бэкапа, из-за чего зазря тратится время место на диске, его ресурс, замедление доступа.
Хотя делается это элементарно (речь о полном бэкапе, для инкрементального это не подходит, хотелось бы найти решение делать его налету)
# ftpbackup.sh site.ru
содержимое ftpbackup.sh
ftp -in ftpserver <<_EOF_
user ftpusername ftppassword
put "| tar cvf — /home/$1/public_html | gzip " $1.tar.gz
delfi
Как давно тестировали?
Просто в настройках была опция — разделять для каждого пользователя архив и если поставить её, то предлагалось отправлять сразу этот файл на ftp, а не ждать полного бэкапа всех пользователей (виртуальных серверов в их терминологии). Хотя я не проверял — делается отправка на лету или все же файлы одного пользователя сохраняются на диск для отправки по завершению.
DjOnline
Речь о другом. Сейчас в том числе и для каждого пользователя сначала создаётся архив, а потом отправляется.
Я связывался с разработчиком, он не хочет делать отправку налету.