Как создавался мой Web server. Выбор. Установка. Настройка.

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

UPD 08.05.2015 , UPD 22.05.2015,  UPD 25.03.2016, 

UPD 12.04.2016

 

Как говорится, человек не стоит на месте, он постоянно учится, узнает что то новое. Собственно что и меня двигает по данному пути. Начинал я свои первые шаги в сети Интернет с одного из бесплатных хостингов. Там жил около 1 года, проект был популярен, но не так как хотелось. В то время я искал для себя форму, в которой буду публиковать свои материалы, заметки, размышления ;). После первоначального опыта, было принято решение перейти на платный хостинг. Выбор пал на один из хостингов в России ( малоизвестный и до последнего дня вроде стабильный). Прожив на платном хостинге более 3 лет, я решил искать что то новое, интересное. Читал много про создание своих Web серверов, про популярные панели управления хостингом, как лучше всё организовать и настроить для стабильной работы.

Остановился я на панели ISPconfig3+Debian . Ставится всё чудно и быстро ( особенно после 3-4 переустановок) 😉 . Проблема с web-серверной частью не возникла. Проблемы были с запуском почтовой части сервера. Гуглил, пытал яшку, бинговал. Пока не попалась мне на глаза VESTACP. Проект развивающийся, судя по отзывал довольно удобная оболочка. Как пишут проект строился сисадмином для сисадмина ;), что подразумевало отсутствие всякого рода лишнего мусора, как говорится что нужно, то включено. Пробовал я сначала так же на Debian использовать эту панель. Но после общения с коллегами на форуме решил сменить Debian на CentOS 6.6 Final, так как этот дистрибутив в отличии от Debian более часто обновляется и VestaCP с ним дружит намного лучше. После переустановки дистрибутива ( ставить обязательно конфигурацию minimal) выбираем на последнем этапе установки тип установки SSH и завершаем установку. Далее все действия проводим через SSH клиент ( я использовал Putty). Установка Vesta CP сводится к запуску двух команд в терминале и вводом электронной почты админа. после 10-15 минут мы получаем готовый сервер с работающим почтовым, web сервером. Остается немного его поднастроить и работать. В частности я сразу настроил резервирование данных аккаунта пользователя как на локальное хранилище, так и на FTP-сервер. Как говорится лучше перебдеть, чем недобдеть. Отсутствие бекапов очень увеличит срок аварийного восстановления сервера в случае выхода из строя. Для работы с сервером я как и говорил рекомендую использовать Putty и клиент для работы по FTP WINSCP. Расписывать как работать с VestaCP я не буду здесь, кому понадобится, могу помочь освоиться отдельно. Единственное что порекомендую, это сделать сразу отдельного пользователя от админа и все домены поднимать там. Система после настройки работает как часы. При работе 3-4 сайтов на Joomla и WordPress потребление оперативной памяти не более 700мб. Ресурсы моего сервера позволяют увеличить память до 3-4гб если это понадобится. Приглашаю всех желающих на нашу, так сказать, хостинг площадку www.hosting25.ruЧто касается резервирования, оно настроено на ежедневное копирование данных аккаунта пользователей, включая каталог с сайтами, базы данных, почтовые ящики. Если что-то не дописал, пишите в комментариях, обязательно дополню статью. Советую так же посетить неплохой проект для тех, кто связан с системным администрированием.

UPD 08.05.2015:

HTOP после ZENOPcacheНа сервере CentOS 6.6 с целью оптимизации использования оперативной памяти был установлен Zend OPcache

  • Zend OPcache. Обеспечивает более быстрое выполнение PHP кода операции через кэширование и оптимизации. Улучшает PHP производительность, сохраняя скомпилированные сценариев байт-кода в разделяемой памяти. Zend OPcache включен в PHP 5.5 по умолчанию. Как расширение PECL поддерживает версии 5.2, 5.3 и 5.4.

Нельзя использовать несколько акселераторов одновременно. ZendOpCache конфликтует с другими акселераторами и/или наоборот, так что остальные акселераторы должны быть отключены.VestaCP на CentOS по-умолчанию ставит (ставила) APC, удалите его если вы решили установить ZendOpCache на CentOS.

Установка ZendOpCache на CentOS:

#yum remove php-pecl-apc
Установка ZendOpCache на php 5.4

#yum install php-pecl-zendopcache –enablerepo=remi
Установка ZendOpCache на php 5.3

#yum install php-pecl-zendopcache
Проверим правильность установки ZendOpCache на CentOS

# php -v
PHP 5.3.3 (cli) (built: Oct 30 2014 20:12:53)
Copyright (c) 1997-2010 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies
with Zend OPcache v7.0.4, Copyright (c) 1999-2014, by Zend Technologies

На скрине потребление ресурсов после установки Zend OPcache. Для тех кто читал статью сначала я писал что потребление оперативной памяти составляло 730-800 мб . После применения оптимизатора потребление оперативной памяти сократилось почти в 2 раза!.

UPD 22.05.2015

Сегодня была произведена замена сервера. До сегодняшнего дня наш сайт “крутился” на сервере в виртуальной машине. Сейчас мы перенесли все проекты из виртуальной машины в реальный сервер : Core Quad 9300/8GB DDR3/640GB SATA3 HDD/. Надеюсь что изменения в работе сайтов будут замечены.

UPD 25.03.2016

В связи с выходом обновления панели VestaCP и полноценной поддержкой CentOS 7 я планирую в ближайшее время перенести всё на свежую версию Цента. В начале, когда только был установлен сервер и настроен желание “поэкспериментировать” было очень велико. С течением времени что-то менять и переустанавливать в системе, которая и так работает как часы и не требует вмешательства, не очень то и хочется. Но думаю, что сделать это надо.

UPD 12.04.2016

2016-04-12 22_07_04-192.168.110.110 - PuTTY

Как писал выше, мною было принято решение обновиться до CentOS 7. Но не тут то было. Обновление сервера до CentOS 7 прошло штатно, установка панели тоже прошла без проблем. Но при восстановлении бекапа через консоль сервер упал, службы ngnix и dns упали и восстановить не удалось. После этого решено было поставить CentOS 6 обратно и восстановить систему в первозданном состоянии. Но не тут то было ……. Установка дистрибутива прошла без проблем, но панель встала с ошибкой в конце инсталяции и казалось бы проблем быть не должно, но как то так….  После пары-пяток попыток поставить все таки не увенчались успехом. Было принято решение установить Debian 8.4 и провести все необходимые манипуляции по установки панели. Всё прошло штатно, установка панели и восстановление бекапа прошло без ошибок . На сервер был установлен php ускоритель Xcache, который сократил потребление оперативной памяти на 200-300мб ( скрин выше) На CentOS 6 с ZenOPCache потребление памяти было на уровне 1500мб. Так что вроде даже лучше. И ядро свежее и аппетит сервера уменьшил. Остальное проверим…..подождем…..

Top