Памятка: Установка друпала на VDS

Главные вкладки

Аватар пользователя EliteMonk EliteMonk 3 марта 2011 в 5:43

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

Моя первая попытка самому разобраться с вопросом, раньше всегда возлагал данную процедуру на хостера... Задача: составить памятку, по которой можно будет в пошаговом режиме поставить максимально лучшую систему для drupal (под мультисайтинг), без панели.

Исходные данные:
1 - недорогой VDS, который часто будет у заказчиков. 1.5G 384М 1 ядро, на котором будет только 1 владелец, и как следствие только 1 сайт будет в мультисайтинге.
2 - VDS 2G 1024M 1 ядро * до 8 =)), тут будет очень много сайтов в связке.
1 и 2 - ОС Ubuntu 10.10 или 10.04, которую обновим до 10.10

Оглавление:

Подготовка сервера
Подготовка ОС
Nginx
PHP
--eAccelerator
--MemCache
MySQL
--PhpMyAdmin
--MySqlDumper
Установка сайта
--D6 Подготовка
--D6 Установка
Cron
Почта
Munin

Комментарии

Аватар пользователя EliteMonk EliteMonk 3 марта 2011 в 14:47

Softovick wrote:
Зачем раскрашивать консоль то? Smile Ну и да - а где друпал то?

Раскрашивать, это конечно можно и не делать =)))

Про друпал, очевидно что статья не закончена до друпала ещё дожить надо Lol надо сначала php mysql поставить php связать через php-frm или spawn-fcgi наверное первый вариант лучше и так далее, о Друпале будет и не мало но всё по порядку, просто хочу по мере написания статьи возможно тот, кто уже 135 раз это проделывал, будет поправлять или советовать что лучше поставить или какие настройки оптимальны, например поставить mysql просто, но он памяти отхватывает моментально, т.е. его ещё и настроить надо =))) Так что наберитесь терпения приблизительный срок окончания статьи - 1 неделя...

Аватар пользователя abarmot abarmot 3 марта 2011 в 19:13

1. Я бы не советовал ставить на сервер Ubuntu, ибо она — тестовая платформа для Debian. Для сервера важна стабильность, а не циферки в версии ПО.

2. Особо улыбнули алиасы:
alias install="sudo apt-get install"
alias upgrade="sudo apt-get upgrade"
На сервере эти процедуры должны выполняться после 7 раз обдумываний, чтений описаний релизов, взвешивания рисков и необходимостей в их установке.

3. iptables вообще можно не ставить на начальном этапе, пока не появится необходимость.
4. sudo — плюшка ненужная на сервере, см. пункт 2.
5. Раскрашивать консоль зачем?

Смена порта SSH — правильное решение.

Аватар пользователя Softovick Softovick 3 марта 2011 в 19:45

abarmot wrote:
1. Я бы не советовал ставить на сервер Ubuntu, ибо она — тестовая платформа для Debian. Для сервера важна стабильность, а не циферки в версии ПО.

Давайте все таки определимся по понятиям. Тестовая платформа для Debian - это Debian Testing и Backports. Но никак не Ubuntu Linux!!! Ubuntu Linux - это отдельный дистрибутив, на базе deb-пакетов и по большей части совместимый с Debian. Не более!!! И отпочковался Ubuntu от Debian уже лет 5 как, а до сих пор эти поверхностные суждения, аж коробит.

Но вот в остальном согласен, некоторые вещи сделаны лишними.

Аватар пользователя Softovick Softovick 3 марта 2011 в 19:49

<a href="mailto:v1adimir@drupal.org">v1adimir@drupal.org</a> wrote:
abarmot wrote:
...
4. sudo — плюшка ненужная на сервере, см. пункт 2.
...

категорически не соглашусь. )
одна из самых нужных и полезных плюшек!

Ну и смысл? Вы так часто потом начинаете править и работать с задачами, требующими административных прав?

Аватар пользователя v1adimir@drupal.org v1adimir@drupal.org 3 марта 2011 в 20:47

Softovick wrote:
<a href="mailto:v1adimir@drupal.org">v1adimir@drupal.org</a> wrote:
abarmot wrote:
...
4. sudo — плюшка ненужная на сервере, см. пункт 2.
...

категорически не соглашусь. )
одна из самых нужных и полезных плюшек!

Ну и смысл? Вы так часто потом начинаете править и работать с задачами, требующими административных прав?

security update check
apache reload
backup
chown
bind reload

достаточно часто. на vds подразумевается не один сайт и не только apache. и уж точно, что на время первичного запуска и настройки vds без sudo вообще никак.

ты же не предлагаешь под su постоянно сидеть? )

Аватар пользователя EliteMonk EliteMonk 3 марта 2011 в 20:23

Всем спасибо за активное участие, будем исправлять...

abarmot
1. Я же написал Ubuntu как для первого раза, не вижу особо мусолить Debian или Ubuntu, надо ставить CentOS Lol а толку если опыта не хватит даже запустить Lol есть данные это конфиг, ос, использование php и mysql, т.е. не надо предлагать ставить другую базу, по крайней мере для этой памятки, т.к. я просто не осилю...

2. дело в том, что алиасы не отменяют пароля, пароль по любому от root надо знать и его вводить, а у меня пароль знаков 15 разного регистра, я 100 раз подумаю Lol но печатать реально короче. Впрочем именно алиасы ещё будут добавляться для простоты работы, доступ кому попало даваться не будет, пароль от рута тем более, но однако я из тех кто за то чтобы пакеты держать свежих версий, даже если это потребует напильника под рукой...

3. Я хочу настроить и забыть, поэтому тут будут порты наперёд вбиты например для mysql, так же ещё добавятся сюда по мере написания статьи и определения с пакетами другие порты или какие-то удаляться, сейчас по отзывам всё больше склоняюсь к php-frm.

4. расскажите про sudo побольше или просто линк, но с нормальным обоснованием почему это плохо и какие альтернативы... как тогда обновлять систему, ведь под рутом больше не войти будет... в моём понимании admin это всевдозамена рута, имя может быть другое это я писал, по идее, но может я ошибаюсь это усложнит жизнь при попытке взлома, т.к. root все знают, а так ещё и имя подобрать надо... потом пароль, а потом пороль рута подобрать, т.е. максимально долго будет работать подборщик паролей. Может я не прав, побольше в общем расскажите об этом Lol

5. Ок раз всё считают лишним удалил Wink

Аватар пользователя Dan Dan 4 марта 2011 в 3:41

"abarmot" wrote:
1. Я бы не советовал ставить на сервер Ubuntu, ибо она — тестовая платформа для Debian. Для сервера важна стабильность, а не циферки в версии ПО.

У Ubuntu, по сути, есть две ветки: LTS (Long Term Support) и... не LTS. Ставить надо как раз LTS, которая во-первых является, как ясно из названия, долгоиграющей, а во-вторых более стабильная - на других версиях как раз и обкатываются нововведения.

"abarmot" wrote:
2. Особо улыбнули алиасы:

На вскус и цвет все фломастеры разные. Я алиасы не использую, но не вижу ничего зазорного. Мало того, очень хорошо что они описаны в статье - пусть народ знает, что есть такая штука как алиасы. Не у всех дома стоит линукс Wink

"abarmot" wrote:
На сервере эти процедуры должны выполняться после 7 раз обдумываний, чтений описаний релизов, взвешивания рисков и необходимостей в их установке.

Конечно, но над апдейтами по безопасности долго думать не рекомендуется Smile

"abarmot" wrote:
4. sudo — плюшка ненужная на сервере, см. пункт 2.

Без этой «плюшки» единственный вариант администрирования сервера - работа под рутом. Я надеюсь ты это не всерьёз говоришь, ведь так?

"abarmot" wrote:
5. Раскрашивать консоль зачем?

См. пункт с алиасами Smile

"abarmot" wrote:
Смена порта SSH — правильное решение.

Можно ещё описать настройку port knoking - там не много, но для параноиков - радость ))

Спасибо за статью!
Что можно добавить:
- port knoking
- настройка SSH локально, в том числе доступ только по сертификатам
- быстрое добавление нового сайта (с созданием нового алиаса для сервера, созданием БД и т.д.)

Аватар пользователя EliteMonk EliteMonk 4 марта 2011 в 11:52

to Dan
Сегодня как раз собирался писать про SSH, у меня в тексте написано что я опустил этот пункт, сегодня допишу...

2 других пункта, чуть позже сначала доведу статью до получения рабочей версии 1 сайта, а сайтов действительно будет несколько, т.к. для мультисайтинга делаю...

Большое спасибо, за дельные советы.

Аватар пользователя zolexiy@drupal.org zolexiy@drupal.org 11 апреля 2011 в 23:58

Dan wrote:
"Softovick" wrote:
ИМХО - было бы проще для Ubuntu воспользоваться Drubuntu, и не парится...

И Ægir заодно ;)

Кхм, а он типа плох?
Я без ехидства спрашиваю. Просто на днях у себя настроил, тестю, привыкаю... пока нравится. Но адекватных отзывов об aegir не встречал...

Аватар пользователя Dan Dan 4 марта 2011 в 17:32

Quote:
Он бесплатный
Web PI доступен бесплатно и без дополнительных условий. Не знаем, как вам, а нам определенно нравится бесплатность.

Микрософт раздаёт печеньки Smile

Аватар пользователя EliteMonk EliteMonk 4 марта 2011 в 21:50

to Softovick я не хочу апач, так я мог заказать и мне стандартно поставят и настоят хостеры. Я хочу разобраться сам в оптимальной настройке... прочёл не один отзыв на эту тему...

to Dan задача не в том чтобы поставить, больше чтобы разобраться, и в дальнейшем, скажем через пол года, перейти на CentOS...

to RxB я полагаю это шутка была Lol

Аватар пользователя Dan Dan 4 марта 2011 в 23:25

"EliteMonk" wrote:
to Dan задача не в том чтобы поставить, больше чтобы разобраться, и в дальнейшем, скажем через пол года, перейти на CentOS...

Чем RedHat лучше и почему бы сразу на нём не делать?

Аватар пользователя EliteMonk EliteMonk 4 марта 2011 в 23:40

"Dan" wrote:
Чем RedHat лучше и почему бы сразу на нём не делать?

Не знаю чем лучше надо стресс тесты делать и смотреть что лучше, но в нете инфы по ubuntu значительно больше. В общем задача этой памятки поставить на убунту Lol хотя может это поменяется, т.к. третий раз переставлять систему приходиться, теряю коннект и не могу больше по ssh законектиться, разница с первым разом, что обновлял пакеты из под созданного юзера, сейчас это делаю раньше чтобы поставить нано, и само сабою использовал vim, сейчас если поставлю удачно с vim и без апгрейда, то перепишу снова Lol теперь по рекомендации на всякий случай ставлю 10.04...

Аватар пользователя q2_faith q2_faith 5 марта 2011 в 0:36

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

Аватар пользователя Softovick Softovick 5 марта 2011 в 7:30

q2_faith wrote:
блин, что вы накинулись) чувак хочет разобраться, документируют шаги(за что спасибо) и выставляет на обсуждение

Вообще ни разу, сам такой был, вот например писал в свое время такие опусы http://meandubuntu.ru/2010/11/%D0%B4%D0%B5%D0%BB%D0%B0%D0%B5%D0%BC-%D0%B...

Аватар пользователя Dan Dan 5 марта 2011 в 1:16

"q2_faith" wrote:
блин, что вы накинулись) чувак хочет разобраться, документируют шаги(за что спасибо) и выставляет на обсуждение

Даже в мыслях не было накидываться. Если вопрос про CentOS воспринимается как наезд, то это не так - имхо разницы особой в дистрибутиве нет, главное - хорошо его знать. Мне просто было интересно, почему автор, обкатывая настройку сервера на debian-based уже подумывает о смене на rh-based.

Аватар пользователя EliteMonk EliteMonk 5 марта 2011 в 3:15

to Dan Сам я как понятно не сильно разбираюсь Lol просто судя в процентном соотношении штудируя интернет, кажется что он более стабилен, не спрашивайте почему, просто такое сложилось мнение, да я знаю что на заборах много чего написано, но чтобы утверждать надо проводить тесты, без них и обсуждать нечего Lol

Дописал про SSH, добавил по мелочам, заменил нано на vim.

Аватар пользователя EliteMonk EliteMonk 5 марта 2011 в 13:55

Закончил конфиг писать для nginx, может кто подскажет

в .htaccess есть \. и просто .

как это в конфиге писать?
В основном это для строки

.(engine|inc|info|install|make|module|profile|test|po|sh|.*sql|theme|tpl(.php)?|xtmpl|svn-base)$|^(code-style.pl|Entries.*|Repository|Root|Tag|Template|all-wcprops|entries|format)$

Заранее спасибо.

Аватар пользователя EliteMonk EliteMonk 6 марта 2011 в 1:54

to inquis@drupal.org
из вики
«nginx (англ. engine x) (по-русски произносится как э́нджин-э́кс) — веб-сервер и почтовый прокси-сервер, работающий на Unix-подобных операционных системах (тестировалась сборка и работа на FreeBSD, OpenBSD, Linux, Solaris, Mac OS X). Начиная с версии 0.7.52 появилась бинарная сборка под Microsoft Windows.»

Вы укажите места если есть опечатки, я пишу статью в спешке, и большая получается, если не сложно укажите на любые ошибки, поправлю...

to all
Нормально что так много оперативки кушает?

Аватар пользователя Softovick Softovick 6 марта 2011 в 11:36

EliteMonk wrote:
to inquis@drupal.org
из вики
«nginx (англ. engine x) (по-русски произносится как э́нджин-э́кс) — веб-сервер и почтовый прокси-сервер, работающий на Unix-подобных операционных системах (тестировалась сборка и работа на FreeBSD, OpenBSD, Linux, Solaris, Mac OS X). Начиная с версии 0.7.52 появилась бинарная сборка под Microsoft Windows.»

Вы укажите места если есть опечатки, я пишу статью в спешке, и большая получается, если не сложно укажите на любые ошибки, поправлю...

to all
Нормально что так много оперативки кушает?


Смотря что у тебя там стоит. В среднем средненький web-сервер на Debian будет занимать порядка 70-80Мб, может быть до 100 Мб после перезагрузки. Как смотришь? Установи утилиту htop, она точнее покажет.

Аватар пользователя inquis@drupal.org inquis@drupal.org 6 марта 2011 в 2:35

@EliteMonk
Что такое nginx я знаю)))
Придирки, конечно. Но все же:

"EliteMonk" wrote:
Этап 3. Ставим gninx

"EliteMonk" wrote:
Welcome to gninx!

"EliteMonk" wrote:
Нормально что так много оперативки кушает?

"EliteMonk" wrote:
память 231 =((

230? Я поднимал сервер на вдс с 200 оперативы, метров 80 оставалось свободной. Правда, поиграться с настройками пришлось...

Аватар пользователя EliteMonk EliteMonk 6 марта 2011 в 12:20

"<a href="mailto:inquis@drupal.org">inquis@drupal.org</a>" wrote:
Придирки, конечно. Но все же:

Нет, очень хорошо, что заметили Wink

to Softovick
спс, вчера поставил mysql и mysqladmin, после чего mysqli по указанию mysqladmin'a и всё упало Lol не хватает памяти Sad сегодня попробую заново, нашел статью о OpenVZ и её прожорливости, будем пробовать настраивать.

Аватар пользователя EliteMonk EliteMonk 12 марта 2011 в 16:11

С памятью более менее разобрался у хостера стоит OpenVZ которая и потребляет память (т.е. выделяет её даже если процессом она не юзается). Поставил 10.04.02 LTS стало лучше + доп. настройку придётся делать под эту виртуалку, но это потом...

А сейчас появился вопрос, может кто знает и сможет подсказать, пока получается так... ставлю делаю перезагрузку и всё... оперативки 1,7 есть подозрения что это процесс с ид 1 запущенный из под рута не перезагружает ос и висит на нём... хотя не факт ssh нет чтобы проверить что там висит Sad только статистика которую дал мне хостер...

Может избавиться от root была плохая идея? или может косяк в чём-то другом?

Аватар пользователя EliteMonk EliteMonk 14 марта 2011 в 20:03

Добавление алиасов убрал из статьи, но оставляю в комментарии, вдруг кому пригодится...

Открываем баш файл

vim ~/.bashrc

Добавляем сокращения для команд, чтобы легче жить было Lol

alias free="free -m"
alias update="sudo apt-get update"
alias install="sudo apt-get install"
alias remove="sudo apt-get remove"
alias ngstop="sudo /etc/init.d/nginx stop"
alias ngstart="sudo /etc/init.d/nginx start"

Чтобы применить изменения пишем след. команду

source ~/.bashrc
Аватар пользователя EliteMonk EliteMonk 12 апреля 2011 в 0:37

Я за время пока писал памятку смотрел в эту сторону (как раз благодоря коментариям), это не системы для продакшен сервера, это однозначно... Сам автор Drubuntu пишет об этом...

«Drubuntu is designed for single-user developer use only - if you are looking for tools to manage multiple production sites you may want to look at Aegir, and if you want a production server build for Ubuntu, you may want to check out Pantheon.»

Pantheon - смотрел, но не понял и за так скачать нельзя и за деньги они не предостовляют, если кто знает как получить инвайт, то сообщите...

Аватар пользователя EliteMonk EliteMonk 12 апреля 2011 в 0:47

Это дело вкуса, но дев сервер по сути у меня такой же как продакшен, просто добавляю сайт в мультисайтинг работаю с ним (все модули уже есть и нужных версий) отделить от мультисайтинга и перенести на продакшен у меня занимает 30 мин всего, а на D7 это вообще стало сказкой 5 мин максимум, и в базу даже лезть не надо... Поэтому сингал меня вполне устраивает.

Аватар пользователя zolexiy@drupal.org zolexiy@drupal.org 12 апреля 2011 в 0:49

да, я пересмотрел что ты писал, это похоже на то что у меня получилось. По большому счету - принцип тот же.

Еще раз спасибо что делитесь опытом

Аватар пользователя Dan Dan 12 апреля 2011 в 6:47

"<a href="mailto:zolexiy@drupal.org">zolexiy@drupal.org</a>" wrote:
Кхм, а он типа плох?
Я без ехидства спрашиваю. Просто на днях у себя настроил, тестю, привыкаю... пока нравится. Но адекватных отзывов об aegir не встречал...

Я его ставил больше полугода назад, был сырой весьма. На мой взгляд штука очень хорошая, надо ещё раз посмотреть - до какого состояния допилили.

"EliteMonk" wrote:
Я за время пока писал памятку смотрел в эту сторону (как раз благодоря коментариям), это не системы для продакшен сервера, это однозначно... Сам автор Drubuntu пишет об этом...

Да, это скорее для тех, кто плавает в настройке сервера и нужна инсталяция "в один клик". Эдакий денвер для Linux Smile

Если есть Ubuntu`вцы/Debian`щики, вопрос к вам: как сделать автодобавление определённой строки (nameserver 127.0.0.1) в resolv.conf после его изменение NetworkManager`ом? (снести NetworkManager не предлагать - это для ноута, там без него скучно Wink

Аватар пользователя zolexiy@drupal.org zolexiy@drupal.org 12 апреля 2011 в 11:57

Dan wrote:
"<a href="mailto:zolexiy@drupal.org">zolexiy@drupal.org</a>" wrote:
Кхм, а он типа плох?
Я без ехидства спрашиваю. Просто на днях у себя настроил, тестю, привыкаю... пока нравится. Но адекватных отзывов об aegir не встречал...

Я его ставил больше полугода назад, был сырой весьма. На мой взгляд штука очень хорошая, надо ещё раз посмотреть - до какого состояния допилили.

Уже лучше. Я год назад тоже пытался запустить все это хозяйство, то вообще не получилось. Теперь стало все без бубна. Ставится на чистый дебиан без проблем. На маки, видел в люди ставят. Это же по ходу просто мультисайтинг на друпале с drush и прочими блек-джеками.

ТС тоже это делает, причем очень хорошо что по пунктам пишет. Много полезного. В его систему еще бы drush, вообще куль был бы Smile

Аватар пользователя EliteMonk EliteMonk 12 апреля 2011 в 13:38

"<a href="mailto:zolexiy@drupal.org">zolexiy@drupal.org</a>" wrote:
В его систему еще бы drush, вообще куль был бы :)

Согласен, но хорошо бы кроме установки, которая будет одной строкой, ещё и мини хелпер на русском написать.

В общем
- этот пункт
- port knoking

буду пробовать писать через месяц, как всегда времени не хватает Lol

- настройка MemCache
- настройка SSH локально, в том числе доступ только по сертификатам

это постараюсь через недельку сделать...

P.S. не стесняйтесь предлагайте темы для расширения памятки Wink я постораюсь нормальные заявки имплиментировать в эту памятку.