diff --git a/docs/tutorial/deploy_ansible.md b/docs/tutorial/deploy_ansible.md index 482e3e72dd10423ed21a57c4c3ee825b3b48029a..daa279910c6d18470bb8806e078cafc23ec8f36c 100644 --- a/docs/tutorial/deploy_ansible.md +++ b/docs/tutorial/deploy_ansible.md @@ -2,8 +2,9 @@ Ð’ данном разделе приведена Ð¸Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð¿Ð¾ развертыванию клаÑтера Picodata из неÑкольких инÑтанÑов, запущенных на разных Ñерверах поÑредÑтвом роли -[picodata-ansible](https://git.picodata.io/picodata/picodata/picodata-ansible). +[picodata-ansible]. +[picodata-ansible]: https://git.picodata.io/picodata/picodata/picodata-ansible ## УÑтановка роли {: #install_role } @@ -126,3 +127,61 @@ ansible-playbook -i hosts/cluster.yml playbooks/picodata.yml - [Подключение и работа в конÑоли](connecting.md) - [Создание клаÑтера в ручном режиме](deploy.md) + +## Управление плагинами {: #plugin_management } + +C помощью роли [picodata-ansible] можно также добавлÑÑ‚ÑŒ в клаÑтер +плагины и их конфигурации. Ð”Ð»Ñ Ñтого модифицируйте инвентарный файл +`hosts/cluster.yml`, добавив в него блок `plugins`. Пример инвентарного +файла, поддерживающего уÑтановку в клаÑтер c одним тиром теÑтового +плагина _weather_: + +???+ example "cluster.yml" + ```yaml + all: + vars: + install_packages: true # Ð´Ð»Ñ ÑƒÑтановки пакета picodata из Ñ€ÐµÐ¿Ð¾Ð·Ð¸Ñ‚Ð¾Ñ€Ð¸Ñ + cluster_id: simple_cluster # Ð¸Ð¼Ñ ÐºÐ»Ð°Ñтера + first_bin_port: 13301 # начальный бинарный порт Ð´Ð»Ñ Ð¿ÐµÑ€Ð²Ð¾Ð³Ð¾ инÑтанÑа (он же main_peer) + first_http_port: 18001 # начальный http-порт Ð´Ð»Ñ Ð¿ÐµÑ€Ð²Ð¾Ð³Ð¾ инÑтанÑа Ð´Ð»Ñ Ð²ÐµÐ±-интерфейÑа + + tiers: # опиÑание тиров + default: # Ð¸Ð¼Ñ Ñ‚Ð¸Ñ€Ð° default + instances_per_server: 2 # Ñколько инÑтанÑов запуÑтить на каждом Ñервере + + plugins: # опиÑание плагинов + example: # Ð¸Ð¼Ñ Ð¿Ð»Ð°Ð³Ð¸Ð½Ð° в Ansible (может не Ñовпадать Ñ Ð¸Ð¼ÐµÐ½ÐµÐ¼ в Picodata) + path: '../plugins/weather_0.1.0.tar.gz' # путь к архиву Ñ Ð¿Ð»Ð°Ð³Ð¸Ð½Ð¾Ð¼ + config: '../plugins/weather-config.yml' # путь к файлу конфигурации плагина + tiers: # ÑпиÑок тиров, на которых будет запущен плагин + - default # Ð¸Ð¼Ñ Ñ‚Ð¸Ñ€Ð° default + + + DC1: # Ð˜Ð¼Ñ Ð´Ð°Ñ‚Ð°Ñ†ÐµÐ½Ñ‚Ñ€Ð° (иÑпользуетÑÑ Ð´Ð»Ñ failure_domain) + hosts: # далее перечиÑлÑем Ñерверы в датацентре + server-1: # Ð¸Ð¼Ñ Ñервера в инвентарном файле (иÑпользуетÑÑ Ð´Ð»Ñ failure_domain) + ansible_host: 192.168.0.1 # IP Ð°Ð´Ñ€ÐµÑ Ð¸Ð»Ð¸ fqdn еÑли не Ñовпадает Ñ Ð¿Ñ€ÐµÐ´Ñ‹Ð´ÑƒÑ‰ÐµÐ¹ Ñтрокой + server-2: # Ð¸Ð¼Ñ Ñервера в инвентарном файле (иÑпользуетÑÑ Ð´Ð»Ñ failure_domain) + ansible_host: 192.168.0.2 # IP Ð°Ð´Ñ€ÐµÑ Ð¸Ð»Ð¸ fqdn еÑли не Ñовпадает Ñ Ð¿Ñ€ÐµÐ´Ñ‹Ð´ÑƒÑ‰ÐµÐ¹ Ñтрокой + ``` + +Ð”Ð»Ñ Ð¿Ð¾Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð¸Ñ Ð¿Ð»Ð°Ð³Ð¸Ð½Ð° потребуетÑÑ Ñформировать архив из его файлов, а +также подготовить файл конфигурации плагина. + +См. также: + +- [Управление плагинами](plugins.md) + +Модифицировать файл плейбука не требуетÑÑ. + +Выполните уÑтановку плагинов в клаÑтер командой: + +```shell +ansible-playbook -i hosts/cluster.yml playbooks/picodata.yml -t plugins +``` + +!!! note "Примечание" + С помощью роли Ansible можно только добавлÑÑ‚ÑŒ + плагины в клаÑтер. Удаление производитÑÑ + [вручную](plugins.md#drop_plugin). + diff --git a/docs/tutorial/plugins.md b/docs/tutorial/plugins.md index 1d46a592ed2a183f8ba74c26015002964e3221f3..e3ff7e560ba929666185764d27212bcc17c839f0 100644 --- a/docs/tutorial/plugins.md +++ b/docs/tutorial/plugins.md @@ -319,3 +319,8 @@ DROP PLUGIN weather_cache 0.1.0 WITH DATA Ð’ таком Ñлучае будут запущена Ð¼Ð¸Ð³Ñ€Ð°Ñ†Ð¸Ñ `pico.DOWN`, а также удалены запиÑи плагина и его ÑервиÑов из ÑиÑтемных таблиц. + + +См. также: + +- [Управление плагинами Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ роли Ansible](deploy_ansible.md#plugin_management)