Sitesctl

Материал из ISPWiki

Перейти к: навигация, поиск

Содержание

Назначение

Утилита служит следующим целям:

  1. Быстрое получение информации о каком-либо сайте.
  2. Перераспределение сайтов по обрабатывающим веб-серверам.
  3. Останов/запуск/перезапуск всех веб-серверов, либо веб-серверов, обрабатывающих определённый сайт. Веб-серверы управляются через протокол cluster, см. oproxy.conf.
  4. Создание символической ссылки в директориях конфигурационных файлов веб-серверов на создаваемого пользователя.
  5. Удаление символической ссылки в директориях конфигурационных файлов веб-серверов для указанного пользователя.

Получение информации о сайте

sitesctl --describe-site host.com

sitesctl -ds host.com

Получить информацию о сайте host.com. В качестве имени сайта можно указывать основное имя сайта, любой из псевдонимов или автоподдоменов. Поддерживается также специальное имя сайта ALL, при указании которого будет выведена информация обо всех сайтах.

Перераспределение сайтов по веб-серверам

sitesctl --distribute

Сайты будут перераспределены по обрабатывающим веб-серверам. Логика распределения следующая:

  1. Каждый сайт должен быть представлен как минимум на N узлах, где N — 9-е поле из cluster_sites.conf. Нагрузка на узлы распределяется по возможности равномерно. Чем больше создаваемая пользователем нагрузка, тем на большем количестве узлов он будет представлен. На текущий момент, фактическая нагрузка не учитывается и в её роли выступает количество сайтов у пользователя. То есть, чем больше сайтов у пользователя, тем больше считается создаваемая им нагрузка.
  2. Для минимизации размера процессов Apache, каждый веб-сервер внутри узла имеет по возможности одинаковое количество сайтов.

После перераспределения, новый cluster_sites.conf будет записан, изменившиеся веб-серверы будут перезапущены. oProxy автоматически прочитает новый cluster_sites.conf в течение 5 секунд.

Управление веб-серверами

Утилита принимает серию ключей для управления веб-серверами:

--stop
Остановить веб-серверы.
--start
Запустить веб-серверы.
--restart
Перезапустить веб-серверы.
--graceful
Перезапустить веб-серверы без сброса текущих соединений.

В качестве параметра ключам может быть передано:

имя сайта, либо псевдоним, либо автоподдомен
Команда будет применена только к тем веб-серверам, которые обслуживают указанный сайт.
IP-адрес
Команда будет применена только к вебсерверу, работающим с указанным IP.
ALL
Команда будет применена ко всем известным веб-серверам.
LOCAL
Команда будет применена только локально размещённым веб-серверам.

Примеры использования

sitesctl --restart site.com
или
sitesctl --restart www.site.com

Перезапустить веб-серверы, обслуживающие site.com.

sitesctl --start someautosubdomain.site.com

Запустить веб-серверы, обслуживающие автоподдомен someautosubdomain.site.com.

sitesctl --start LOCAL

Запустить локально размещённые веб-серверы.

sitesctl --stop ALL

Остановить все прописанные в cluster_nodes.conf веб-серверы.

Создание нового пользователя

sitesctl --link-new-user имя_пользователя

В данном режиме работы, утилита находит в cluster_nodes.conf все веб-серверы, имеющие опцию DefaultForNewUsers, создаёт символическую ссылку на конфигурационный файл с его виртуальными хостами в директориях веб-серверов и возвращает в STDOUT список изменившихся веб-серверов.

Удаление ссылки на пользователя

sitesctl --unlink-user имя_пользователя

Все символические ссылки на конфигурационный файл виртуальных хостов указанного пользователя будут удалены из директорий веб-серверов.

Источник — «http://ru.ispdoc.com/index.php/Sitesctl»
Была ли эта информация полезной? Да | Нет
Личные инструменты