Прошло месяца два после начала этой памятки, она была 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
Комментарии
спасибо
Зачем раскрашивать консоль то? Ну и да - а где друпал то?
Раскрашивать, это конечно можно и не делать =)))
Про друпал, очевидно что статья не закончена до друпала ещё дожить надо надо сначала php mysql поставить php связать через php-frm или spawn-fcgi наверное первый вариант лучше и так далее, о Друпале будет и не мало но всё по порядку, просто хочу по мере написания статьи возможно тот, кто уже 135 раз это проделывал, будет поправлять или советовать что лучше поставить или какие настройки оптимальны, например поставить mysql просто, но он памяти отхватывает моментально, т.е. его ещё и настроить надо =))) Так что наберитесь терпения приблизительный срок окончания статьи - 1 неделя...
спасибо) буду следить) любопытно...
Спасибо.
Очень полезно. Спасибо. буду делать по Вашим стопам.
1. Я бы не советовал ставить на сервер Ubuntu, ибо она — тестовая платформа для Debian. Для сервера важна стабильность, а не циферки в версии ПО.
2. Особо улыбнули алиасы:
alias install="sudo apt-get install"
alias upgrade="sudo apt-get upgrade"
На сервере эти процедуры должны выполняться после 7 раз обдумываний, чтений описаний релизов, взвешивания рисков и необходимостей в их установке.
3. iptables вообще можно не ставить на начальном этапе, пока не появится необходимость.
4. sudo — плюшка ненужная на сервере, см. пункт 2.
5. Раскрашивать консоль зачем?
Смена порта SSH — правильное решение.
Давайте все таки определимся по понятиям. Тестовая платформа для Debian - это Debian Testing и Backports. Но никак не Ubuntu Linux!!! Ubuntu Linux - это отдельный дистрибутив, на базе deb-пакетов и по большей части совместимый с Debian. Не более!!! И отпочковался Ubuntu от Debian уже лет 5 как, а до сих пор эти поверхностные суждения, аж коробит.
Но вот в остальном согласен, некоторые вещи сделаны лишними.
категорически не соглашусь. )
одна из самых нужных и полезных плюшек!
Ну и смысл? Вы так часто потом начинаете править и работать с задачами, требующими административных прав?
security update check
apache reload
backup
chown
bind reload
достаточно часто. на vds подразумевается не один сайт и не только apache. и уж точно, что на время первичного запуска и настройки vds без sudo вообще никак.
ты же не предлагаешь под su постоянно сидеть? )
Всем спасибо за активное участие, будем исправлять...
abarmot
1. Я же написал Ubuntu как для первого раза, не вижу особо мусолить Debian или Ubuntu, надо ставить CentOS а толку если опыта не хватит даже запустить есть данные это конфиг, ос, использование php и mysql, т.е. не надо предлагать ставить другую базу, по крайней мере для этой памятки, т.к. я просто не осилю...
2. дело в том, что алиасы не отменяют пароля, пароль по любому от root надо знать и его вводить, а у меня пароль знаков 15 разного регистра, я 100 раз подумаю но печатать реально короче. Впрочем именно алиасы ещё будут добавляться для простоты работы, доступ кому попало даваться не будет, пароль от рута тем более, но однако я из тех кто за то чтобы пакеты держать свежих версий, даже если это потребует напильника под рукой...
3. Я хочу настроить и забыть, поэтому тут будут порты наперёд вбиты например для mysql, так же ещё добавятся сюда по мере написания статьи и определения с пакетами другие порты или какие-то удаляться, сейчас по отзывам всё больше склоняюсь к php-frm.
4. расскажите про sudo побольше или просто линк, но с нормальным обоснованием почему это плохо и какие альтернативы... как тогда обновлять систему, ведь под рутом больше не войти будет... в моём понимании admin это всевдозамена рута, имя может быть другое это я писал, по идее, но может я ошибаюсь это усложнит жизнь при попытке взлома, т.к. root все знают, а так ещё и имя подобрать надо... потом пароль, а потом пороль рута подобрать, т.е. максимально долго будет работать подборщик паролей. Может я не прав, побольше в общем расскажите об этом
5. Ок раз всё считают лишним удалил
Решил вынесни на обсуждение, кто считает что алиасы надо убрать и писать только полные команды?
У Ubuntu, по сути, есть две ветки: LTS (Long Term Support) и... не LTS. Ставить надо как раз LTS, которая во-первых является, как ясно из названия, долгоиграющей, а во-вторых более стабильная - на других версиях как раз и обкатываются нововведения.
На вскус и цвет все фломастеры разные. Я алиасы не использую, но не вижу ничего зазорного. Мало того, очень хорошо что они описаны в статье - пусть народ знает, что есть такая штука как алиасы. Не у всех дома стоит линукс
Конечно, но над апдейтами по безопасности долго думать не рекомендуется
Без этой «плюшки» единственный вариант администрирования сервера - работа под рутом. Я надеюсь ты это не всерьёз говоришь, ведь так?
См. пункт с алиасами
Можно ещё описать настройку port knoking - там не много, но для параноиков - радость ))
Спасибо за статью!
Что можно добавить:
- port knoking
- настройка SSH локально, в том числе доступ только по сертификатам
- быстрое добавление нового сайта (с созданием нового алиаса для сервера, созданием БД и т.д.)
to Dan
Сегодня как раз собирался писать про SSH, у меня в тексте написано что я опустил этот пункт, сегодня допишу...
2 других пункта, чуть позже сначала доведу статью до получения рабочей версии 1 сайта, а сайтов действительно будет несколько, т.к. для мультисайтинга делаю...
Большое спасибо, за дельные советы.
ИМХО - было бы проще для Ubuntu воспользоваться Drubuntu, и не парится...
И Ægir заодно
_
Кхм, а он типа плох?
Я без ехидства спрашиваю. Просто на днях у себя настроил, тестю, привыкаю... пока нравится. Но адекватных отзывов об aegir не встречал...
НЕТ! Лучше http://www.microsoft.com/web/downloads/platform.aspx?WT.mc_id=soc-c-ru-w...
Микрософт раздаёт печеньки
to Softovick я не хочу апач, так я мог заказать и мне стандартно поставят и настоят хостеры. Я хочу разобраться сам в оптимальной настройке... прочёл не один отзыв на эту тему...
to Dan задача не в том чтобы поставить, больше чтобы разобраться, и в дальнейшем, скажем через пол года, перейти на CentOS...
to RxB я полагаю это шутка была
Чем RedHat лучше и почему бы сразу на нём не делать?
Не знаю чем лучше надо стресс тесты делать и смотреть что лучше, но в нете инфы по ubuntu значительно больше. В общем задача этой памятки поставить на убунту хотя может это поменяется, т.к. третий раз переставлять систему приходиться, теряю коннект и не могу больше по ssh законектиться, разница с первым разом, что обновлял пакеты из под созданного юзера, сейчас это делаю раньше чтобы поставить нано, и само сабою использовал vim, сейчас если поставлю удачно с vim и без апгрейда, то перепишу снова теперь по рекомендации на всякий случай ставлю 10.04...
блин, что вы накинулись) чувак хочет разобраться, документируют шаги(за что спасибо) и выставляет на обсуждение
Вообще ни разу, сам такой был, вот например писал в свое время такие опусы http://meandubuntu.ru/2010/11/%D0%B4%D0%B5%D0%BB%D0%B0%D0%B5%D0%BC-%D0%B...
Даже в мыслях не было накидываться. Если вопрос про CentOS воспринимается как наезд, то это не так - имхо разницы особой в дистрибутиве нет, главное - хорошо его знать. Мне просто было интересно, почему автор, обкатывая настройку сервера на debian-based уже подумывает о смене на rh-based.
to Dan Сам я как понятно не сильно разбираюсь просто судя в процентном соотношении штудируя интернет, кажется что он более стабилен, не спрашивайте почему, просто такое сложилось мнение, да я знаю что на заборах много чего написано, но чтобы утверждать надо проводить тесты, без них и обсуждать нечего
Дописал про SSH, добавил по мелочам, заменил нано на vim.
Закончил конфиг писать для nginx, может кто подскажет
в .htaccess есть \. и просто .
как это в конфиге писать?
В основном это для строки
Заранее спасибо.
что такое gninx так и не понял в нескольких местах опечатка.
А так - спасибо за статью!
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, она точнее покажет.
@EliteMonk
Что такое nginx я знаю)))
Придирки, конечно. Но все же:
230? Я поднимал сервер на вдс с 200 оперативы, метров 80 оставалось свободной. Правда, поиграться с настройками пришлось...
Нет, очень хорошо, что заметили
to Softovick
спс, вчера поставил mysql и mysqladmin, после чего mysqli по указанию mysqladmin'a и всё упало не хватает памяти сегодня попробую заново, нашел статью о OpenVZ и её прожорливости, будем пробовать настраивать.
С памятью более менее разобрался у хостера стоит OpenVZ которая и потребляет память (т.е. выделяет её даже если процессом она не юзается). Поставил 10.04.02 LTS стало лучше + доп. настройку придётся делать под эту виртуалку, но это потом...
А сейчас появился вопрос, может кто знает и сможет подсказать, пока получается так... ставлю делаю перезагрузку и всё... оперативки 1,7 есть подозрения что это процесс с ид 1 запущенный из под рута не перезагружает ос и висит на нём... хотя не факт ssh нет чтобы проверить что там висит только статистика которую дал мне хостер...
Может избавиться от root была плохая идея? или может косяк в чём-то другом?
Разобрался с проблемой, нельзя делать upgrade
обновлять надо через update-manager-core, командой do-release-upgrade
Добавление алиасов убрал из статьи, но оставляю в комментарии, вдруг кому пригодится...
Открываем баш файл
Добавляем сокращения для команд, чтобы легче жить было
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"
Чтобы применить изменения пишем след. команду
Я за время пока писал памятку смотрел в эту сторону (как раз благодоря коментариям), это не системы для продакшен сервера, это однозначно... Сам автор 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 - смотрел, но не понял и за так скачать нельзя и за деньги они не предостовляют, если кто знает как получить инвайт, то сообщите...
да, для продакшена нет конечно...
а для дев-сервера должно удобно быть, сам тестирую пока что... я на чистый дебиан ставил, кажись сюда глядел: http://groups.drupal.org/node/25485 ..
Это дело вкуса, но дев сервер по сути у меня такой же как продакшен, просто добавляю сайт в мультисайтинг работаю с ним (все модули уже есть и нужных версий) отделить от мультисайтинга и перенести на продакшен у меня занимает 30 мин всего, а на D7 это вообще стало сказкой 5 мин максимум, и в базу даже лезть не надо... Поэтому сингал меня вполне устраивает.
да, я пересмотрел что ты писал, это похоже на то что у меня получилось. По большому счету - принцип тот же.
Еще раз спасибо что делитесь опытом
в мемориз!
Я его ставил больше полугода назад, был сырой весьма. На мой взгляд штука очень хорошая, надо ещё раз посмотреть - до какого состояния допилили.
Да, это скорее для тех, кто плавает в настройке сервера и нужна инсталяция "в один клик". Эдакий денвер для Linux
Если есть Ubuntu`вцы/Debian`щики, вопрос к вам: как сделать автодобавление определённой строки (nameserver 127.0.0.1) в resolv.conf после его изменение NetworkManager`ом? (снести NetworkManager не предлагать - это для ноута, там без него скучно
Уже лучше. Я год назад тоже пытался запустить все это хозяйство, то вообще не получилось. Теперь стало все без бубна. Ставится на чистый дебиан без проблем. На маки, видел в люди ставят. Это же по ходу просто мультисайтинг на друпале с drush и прочими блек-джеками.
ТС тоже это делает, причем очень хорошо что по пунктам пишет. Много полезного. В его систему еще бы drush, вообще куль был бы
В закладки
Согласен, но хорошо бы кроме установки, которая будет одной строкой, ещё и мини хелпер на русском написать.
В общем
- этот пункт
- port knoking
буду пробовать писать через месяц, как всегда времени не хватает
- настройка MemCache
- настройка SSH локально, в том числе доступ только по сертификатам
это постараюсь через недельку сделать...
P.S. не стесняйтесь предлагайте темы для расширения памятки я постораюсь нормальные заявки имплиментировать в эту памятку.
йцу
топик: Nginx+Apache2 на Ubuntu 10.04/10.10 для Друпала.