Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

C) Установка и настройка программного обеспечения.




В качестве серверов мы использовали сервера Ubuntu server 12.04.

Процесс установки операционной системы, а также процесс установки и настройки RabbitMQ описан ниже.

Скачиваем образ диска Ubuntu 12.04 Server с официальной страницы релиза и записываем его одной из программ для записи дисков на CD-диск.
Помещаем записанный диск с Ubuntu 12.04 Server в CD/DVD-дисковод и грузимся с CD-диска.
После успешной загрузки с диска, вы увидите окно установщика Ubuntu 12.04, в котором вам будет необходимо выбрать, из большого количества доступных языков, свой язык, который будет использоваться при установке Ubuntu:

 

Рисунок 1 – Выбор языка

 

 


Выбераем пункт "Установить Ubuntu Server" и нажмимаем на Enter:

 

Рисунок 2 – Главное меню

 

Выбираем свое местонахождение:

 


Рисунок 3 – Выбор местонахождения


На запрос определения раскладки клавиатуры, выбираем "нет":

 

Рисунок 4 – Окно автоматического выбора раскладки

 


и указываем раскладку вручную:

 

Рисунок 5 – Окно выбора языка

 

Несколько секунда на загрузку необходимых модулей и компонентов:

 


Рисунок 6 – Окно загрузки необходимых модулей

 

Установщик Ubuntu 12.04 определит сетевое оборудование:


 

Рисунок 7 – Окно определения сетевого оборудования

 

Когда сервер будет успешно перегружен, вы сможете войти в систему, используя свои логин и пароль:

 

 

Рисунок 8 – Главная консоль системы

 

Для версии клиента rabbitmq-с 0-9-1 необходим сервер версии 2.5.В Ubuntu 12.04 можно воспользоваться командой

 

$ aptitude install rabbitmq-server

 

Эти операции должны быть повторены на всех машинах.

Конфигурация работы сервера RabbitMQ располагается в трех местах, это переменные окружения (задаются порты и расположения и имена файлов), файлы конфигурации (настройки доступа, кластеры, плагины), и настройки задаваемые в рантайме (политики, настройки производительности). Создаем свой файл конфигурации, называем его rabbitmq.config, и заполняем простыми настройками:

 

%% Sample

[

{rabbit,

[

{tcp_listeners, [5672]},

{log_levels, [{connection, error}]},

{default_vhost, <<"/">>},

{default_user, <<"username">>},

{default_pass, <<"password">>},

{default_permissions, [<<".*">>, <<".*">>, <<".*">>]},

{heartbeat, 60},

{frame_max, 1048576}

]}

].

 

Комментарии в настройках предваряются двойным символом процента %%.
Пишем путь до имени файла, расширение обрезаем. Создание конфиг файла и настройку окружения лучше проводить до установки RabbitMQ сервера, или же переустановить его после.

 

Все команды выполняемые в командной строке, выполняются в каталоге инструментов установленного RabbitMQ сервера:

RabbitMQ\RabbitMQ Server\rabbitmq_server-3.2.1\sbin


Кластер, в rabbitMQ, это связь одного и более серверов RabbitMQ друг с другом, в которой один из узлов выступает в роли мастер-сервера, остальные в роли слейв-серверов, на мастере задаются настройки кластера, которые дублируются на слейвы, к ним, в частности, относятся настройки доступа и политик. При падении мастера, один из слейвов берет на себя его роль, и становится мастером.

В первую очередь, до создания кластера нам нужно синхронизировать куки RabbitMQ узлов, куки в RabbitMQ это сгенерированный при установке хэш, который используется как идентификатор узла, т.к. кластер выступает как единый узел, на каждом сервере куки должны быть идентичны.
На мастер-сервере берем файл erlang.cookie


и копируем его с заменой по пути, после чего копируем с заменой на каждый узел кластера по указанным путям.

 

 


Создание кластера проводится выполнением следующих команд на каждом слейве:

 

rabbitmqctl stop_app

rabbitmqctl join_cluster --ram rabbit@master

rabbitmqctl start_app

 

Либо указанием в файле конфигурации:

 

{cluster_nodes, {["rabbit@master", "rabbit@host01"], disc}}

 

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

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

Для задания политики синхронизации заходим в инструменты и выполняем в следующую команду:

 

rabbitmqctl set_policy HA ".*" "{""ha-mode"": ""all""}"

 

Теперь все очереди и сообщения в них будут синхронизироваться. При публикации сообщения, оно становится доступным для клиентов только после копирования на все узлы кластера.

 

 







Дата добавления: 2015-09-04; просмотров: 832. Нарушение авторских прав


Рекомендуемые страницы:


Studopedia.info - Студопедия - 2014-2020 год . (0.004 сек.) русская версия | украинская версия