Приводится описание шаблона виртуальной машины для быстрого автоматизированного развертывания интернет-сервисов. Рассматривается организация и особенности. Использование шаблона позволяет получать готовые к эксплуатации интернет-сервисы (WEB-сервер, сервер электронной почты, сервер 1С:Предприятие) в течении нескольких десятков минут.
Шаблон виртуальной машины
Шаблон виртуальной машины – это заготовка для упрощенной установки и развертывания. Обычно включает установленную операционную систему и некоторые приложения. Виртуальная аппаратная часть (железо) должна быть сконфигурирована, но, в процессе установки или эксплуатации конфигурация может быть изменена. При установке обычно вводятся параметры сетевых подключений и пароли пользователей.
Использование шаблона при развертывании виртуальной машины VMware позволяет пропустить большинство этапов установки и конфигурации и, в результате, получить готовый к эксплуатации сервер через пару десятков минут после начала установки.
Такая идея нам очень понравилась и мы создали шаблон виртуальной машины VMware для быстрого развертывания некоторых очень полезных интернет-сервисов:
- Сервер 1С:Предприятие (“Автоматическая установка сервера 1С 8.2 на Linux“);
- Сервер лицензий 1С:Предприятие (см. ссылку п. 1.);
- Сервер электронной почты SMTP/POP3/IMAP с встроенным антивирусом и фильтром спама;
- WEB-mail клиент rouncube (требуется установка сервера электронной почты);
- Органайзер и WEB-mail клиент Horde (требуется установка сервера электронной почты);
- Webalizer – анализатор логов WEB-сервера;
- CMS WordPress – установка в виде отдельного сервера или сети виртуальных сайтов (см. “Как сделать сайт на WordРress” для одиночного сайта и “Как установить WordPress multisite“, “Как настроить WordPress multisite” и “Как начать работу с WordPress multisite” для сети виртуальных сайтов);
- CMS Joomla – установка в виде отдельного сервера или сети виртуальных сайтов;
- Migrator – скрипт для миграции IMAP сервера на новый.
Время от времени список пополняется.
Установка и настройка этих сервисов производится полностью автоматически, что позволяет получить работающие службы быстро и без тщательно изучения программ, их параметров и настроек даже для начинающих IT-специалистов.
Для кого это нужно? Думаю будет полезено всем, кому нужны перечисленные выше интернет-сервисы. Для тех, кто не является экспертами в Linux (apache, postfix, MySQL, postgreSQL и еще несколько десятков), позволит установить их быстро и достаточно безопасно, после чего немедленно начать практическую эксплуатацию. В дальнейшем, при желании, параллельно с использованием, эту платформу можно использовать для практического изучения компонентов. Для специалистов существенно сэкономит время.
Описание шаблона виртуальной машины
Шаблон виртуальной машины создан на базе CentOs Linux v 6.3 (публичная версия Red Hat Enterprise Linux) как одной из самых надежных и стабильных свободно распространяемых операционных систем. В качестве исходного взят дистрибутив “minimal”, из которого удалили некоторую часть не используемых модулей и функций. По принципу, чем меньше модулей в ОС, тем меньше потенциальных проблем. Это повышает надежность и безопасность работы виртуальной машины.
Для того, чтобы установить и запустить виртуальную машину на базе нашего шаблона, необходимо установить ее в точном соответствии с инструкцией и задать параметры сетей и окружающей среды. После чего сразу можно развертывать и использовать сервисы.
Основные принципы
Шаблон виртуальной машины предназначен для быстрого автоматического развертывания интернет-сервисов. Сервисы устанавливаются и удаляются пакетами.
Управление пакетами осуществляется при помощи программы installer (см. “Программа installer. Краткая инструкция“), которая поставляется с шаблоном и, после завершения установки виртуальной машины, готова к немедленному использованию.
Пакет – набор модулей, конфигурационных файлов и инструкций для программы installer для загрузки, проверки подлинности, и настройки функционально законченных сервисов, таких, как сервер электронной почты, WEB-клиент электронной почты, система управления контентом для интернет-сайта и т. д. Каждый пакет может содержать до нескольких десятков устанавливаемых модулей.
Пакеты могут зависеть один от другого. Например, для установки WEB-клиента электронной почты необходим сервер электронной почты и WEB-сервер, а для системы управления контентом – WEB-сервер и база данных. В процессе установки программа installer разрешает зависимости, устанавливает и конфигурирует все пакеты в нужном порядке. После завершения установки сервис полностью сконфигурирован и полностью готов к немедленному использованию.
Удаление сервисов так же осуществляется целыми пакетами, включая все модули и конфигурационные файлы.
При установке и удалении пакетов, программа installer вносит необходимые изменения в брандмауэр (firewall) виртуальной машины – открывает или закрывает необходимые порты, поддерживая необходимый уровень безопасности.
В шаблоне виртуальной машины организован единый информационный центр – директория на основе открытого пакета OpenLDAP, в которой хранится информация о структуре и составе сервера (установленных пакетах, модулях, зависимостях), пользователях, настройках сервера электронной почты и т. д.
Основное управление виртуальной машиной осуществляется через безопасное соединение secure shell (ssh) (см. “Что такое ssh/sftp и для чего он нужен?” для OS Linux (MAC OS) или “SSH клиент для Windows PuTTY” и “Клиент SSH для Windows Bitvise Tunnelier” для Windows.). На виртуальной машине установлен, сконфигурирован и запущен сервер ssh. Есть несколько особенностей, по сравнению со стандартной конфигурацией, которая поставляется с дистрибутивом ОС:
- мы запретили вход при помощи ввода пароля — теперь для входа пользователя через ssh необходимо иметь секретный ключ у клиента, знать его пароль и открытый (публичный) ключ в файле authorized_keys2 на сервере, что существенно снижает риск взлома сервера перебором паролей. (Вы сможете увидеть такие попытки в логах Вашего сервера).
- мы запретили вход суперпользователя root через соединение ssh совсем. Для того, чтобы стать суперпользователем, вошедшему пользователю необходимо знать еще и пароль root для команды su.
- вход на сервер разрешен только пользователю, имя которого вводится при установке виртуальной машины из шаблона и все остальные имена пользователей будут отвергаться.
Требования к внешней среде
- должны быть доступны два сервера доменных имен — первичный и резервный (второй);
- в подсети должен работать сервис доменных имен и должно быть правильное прямое и обратное разрешение IP компьютера < = > FQDN (FQDN = имя компьютера сервера + «.» + имя домена компьютера = полное доменное имя, например server1.example.com), ;
- должен быть доступен SMTP сервер (сервер электронной почты) и известно его полное доменное имя (FQDN). Например, mail.example.com
- Соответственно, необходимо знать имя домена электронной почты. Например, в адресе электронной почты postmaster@example.com, example.com — имя домена электронной почты. При этом сам сервер SMTP может иметь совсем другое имя домена.
- сервер должен быть синхронизирован с мировым временем. Необходимо выбрать первый и второй сервера времени, желательно не хуже stratum2 и задать их IP адреса. Если есть вопросы, то сюда.
- должна быть создана инфраструктура виртуальных компьютерных сетей, как это описано в “Как создать виртуальную среду VMware vSphere“
Структура и конфигурация
Наш шаблон виртуальной машины сразу после установки имеет следующую конфигурацию:
- один виртуальный процессор с одним виртуальным ядром;
- 2 ГБ оперативной памяти;
- 20 ГБ жесткий диск;
- два сетевых адаптера, но, в процессе установки, используется только один — eth0 и ему должен быть присвоен IP адрес, по которому пользователи будут видеть сервисы, предоставляемые виртуальной машиной.
Как видите, наш шаблон виртуальной машины имеет минимальную конфигурацию. В инструкции по развертыванию каждого сервиса описаны требования к параметрам аппаратной чпсти виртуальной машины.
Хотя, объем оперативной памяти лучше увеличить сразу после установки. В описании процесса развертывания каждого сервиса будет указан рекомендуемый объм оперативной памяти. Может быть, увеличить объем жесткого диска. Зависит от объема данных задач.
Если процессор будет занят в среднем более 25-30%, то надо добавить еще одно виртуальное ядро и т. д. до тех пор, пока загрузка не станет в пределах 25%. Возможно так же потребуется еще один виртуальный сетевой адаптер.
Пользователи виртуальной машины
В системе, при развертывании, создаются два реальных пользователя со своими домашними папками — суперпользователь (root) и так называемый первый пользователь, имя которого вводится при установке виртуальной машины из шаблона. Для чего это нужно? Система спроектирована так, чтобы обслуживание системы осуществлялось либо с консоли виртуальной машины vSphere Client (что не очень удобно) (см. “Загрузка и установка vSphere Client” и “Что такое рабочий стол vSphere Client” либо через secure shell (ssh) с любого компьютера, на котором может быть установлен клиент ssh. Как упоминалось выше, из-за ограничений безопасности, организация соединения с сервером при помощи ssh разрешена только для пользователей, не обладающих правами пользователя суперпользователя root. Поэтому, при помощи клиента ssh можно подсоединиться к виртуальной машине только под именем первого пользователя, и, при необходимости выполнять команды от имени суперпользователя, используя sudo или su (“Команды Linux. Краткое описание.“). С консоли виртуальной машины можно входить как суперпользователь root непосредственно.
Так же создаются два виртуальных пользователя (хранящихся в директории) — Администратор системы и администратор LDAP. Вся информация о системе — сервисы, установленные программы, пользователи сервисов (за исключением 1С) хранятся в директории LDAP. Для ее создания и заполнения нужен пароль администратора LDAP. Пароль администратора системы необходим при установке/удалении сервисов на сервере.
Приведено описание шаблона виртуальной машины для быстрого автоматизированного развертывания интернет-сервисов. Организация и особенности.
No comments yet.