Конфигурация ноды
Шаг 1. Создайте ноду в пользовательском интерфейсе и получите секретный ключ
Шаг 2. Создайте конфигурационный файл ноды с минимальной конфигурацией
settings.yaml:
services:
- name: bash
command: /bin/bash
env:
TERM: xterm
control_server: grpc1.teamshell.com:443
server: shell1.teamshell.com:7890
secret: 6ig94zfzdz2g21h5pwgv98pzp9qjsc
keyFile: "/etc/nodekey.pem"
node_name: node_on_server1
Доступные варианты команд
command
- команда для запуска сессии ОБЯЗАТЕЛЬНА
name
- имя службы unique ID рабочей области. ОБЯЗАТЕЛЬНА
env
- передать словарь с переменными окружения и их значениями
inactivity_ttl
- максимальное время простоя соединения до закрытия сеанса нодой. Например: 1800s
init_commands
- список команд, которые должны выполняться при запуске ноды
max_history_length
- максимальный размер сеанса в байтах (или магабайтах). Например: 100M; 500K
on_exit
- выполнить команду при выходе в соответствии с кодом выхода
Например:
services:
- name: bash
command: /bin/bash
on_exit:
0: echo "Success" > /tmp/file.txt
1: echo "Not success" > /tmp/file.txt
run_as
- выполнить команду от имени указанного системного пользователя
save_history
- сохранить журнал сеанса для последующего воспроизведения или нет
tags
- Tags позволяют группировать службы и указывать изображение, относящееся к конкретной службе и ее сеансам
work_dir
- рабочий каталог по умолчанию
Service clustering
Вы можете запустить 2 или более нод с одинаковым идентификатором службы (именем). Сеанс будет перенаправлен на ноду с самым быстрым ответом. Возобновление сеанса только на исходной ноде
Мягкая перезагрузка
Если вы используете конфигурационный файл в качестве источника конфигурации ноды, вы можете перезагрузить ноду без прерывания текущих подключений. Вы можете сделать это, отправив сигнал USR1 в процесс noise:
kill -USR1 $(pgrep teamshell_linux)
Если вы используете GUI configuration который хранится в базе данных, мягкая перезагрузка автоматически выполняется при обновлении конфигурации.