Size: a a a

2021 June 10

I

Ilya in Tarantool
А это норма что в веб гуи одной ноды я не вижу другую ноду(на другом серваке) хотя в instances они обе указаны?
источник

I

Ilya in Tarantool
Как их подружить в репликасет?
источник

DK

Dmitriy Koltsov in Tarantool
А они в одной подсети?
Возможно, UDP broadcast в membership их не обнаружил, можно попробовать из GUI сделать probe server
источник

I

Ilya in Tarantool
Да в одной
источник

I

Ilya in Tarantool
Да пробе сработал
источник

I

Ilya in Tarantool
А подскажите по какому пути картридж будет хранить настройки которые я в гуи делаю?
источник

DK

Dmitriy Koltsov in Tarantool
Зависит от настроек
Если, например, речь о топологии кластера - то в clusterwide config
Он лежит в каждом инстансе в рабочей директории в папке config
https://www.tarantool.io/en/doc/1.10/book/cartridge/topics/clusterwide-config/
источник

I

Ilya in Tarantool
Так, кажется последний вопрос - как у картриджа настроить кастомные директории где хранить данные и куда логировать? Просто в тарантуле делал через /etc/defaults/tarantool
источник

I

Ilya in Tarantool
я задал workdir в instances.yml. Но кажется не сработало
источник

MK

Maxim Komar in Tarantool
% cat .cartridge.yml 
cfg: local-instances.yml
script: init.lua
stateboard: true
data-dir: tmp/my-data
log-dir: tmp/my-log
источник

MK

Maxim Komar in Tarantool
у меня так сработало
источник

MK

Maxim Komar in Tarantool
вот что в файлике test/utils.py в проекте cartridge-cli

    def start(self, project, instances=[], daemonized=False, stateboard=False, stateboard_only=False,
             cfg=None, script=None, run_dir=None, data_dir=None, log_dir=None, timeout=None,
             capture_output=False, exp_rc=0):
       cmd = [self._cartridge_cmd, 'start']
       if daemonized:
           cmd.append('-d')
       if stateboard:
           cmd.append('--stateboard')
       if stateboard_only:
           cmd.append('--stateboard-only')
       if timeout is not None:
           cmd.extend(['--timeout', timeout])
       if cfg is not None:
           cmd.extend(['--cfg', cfg])
       if script is not None:
           cmd.extend(['--script', script])
       if run_dir is not None:
           cmd.extend(['--run-dir', run_dir])
       if data_dir is not None:
           cmd.extend(['--data-dir', data_dir])
       if log_dir is not None:
           cmd.extend(['--log-dir', log_dir])
источник

MK

Maxim Komar in Tarantool
только чтобы логи получились, надо запускать в режиме демона (cartridge start -d)
источник

I

Ilya in Tarantool
менял .cartridge.yml
источник

I

Ilya in Tarantool
но толку 0
источник

I

Ilya in Tarantool
А, я понял, у меня системд перетирает енвы
источник

MK

Maxim Komar in Tarantool
кстати,  ansible приносит такой unit-файл, может полезно будет

[Unit]
Description=Tarantool Cartridge app myapp@%i
After=network.target

[Service]
Type=simple
ExecStartPre=/bin/sh -c 'mkdir -p /var/lib/tarantool/myapp.%i'
ExecStart=/usr/bin/tarantool /usr/share/tarantool/myapp/init.lua
Restart=on-failure
RestartSec=2
User=tarantool
Group=tarantool

Environment=TARANTOOL_APP_NAME=myapp
Environment=TARANTOOL_WORKDIR=/var/lib/tarantool/myapp.%i
Environment=TARANTOOL_CFG=/etc/tarantool/conf.d
Environment=TARANTOOL_PID_FILE=/var/run/tarantool/myapp.%i.pid
Environment=TARANTOOL_CONSOLE_SOCK=/var/run/tarantool/myapp.%i.control
Environment=TARANTOOL_INSTANCE_NAME=%i

LimitCORE=infinity
# Disable OOM killer
OOMScoreAdjust=-1000
# Increase fd limit for Vinyl
LimitNOFILE=65535

# Systemd waits until all xlogs are recovered
TimeoutStartSec=86400s
# Give a reasonable amount of time to close xlogs
TimeoutStopSec=10s

[Install]
WantedBy=multi-user.target
Alias=myapp.%i
источник

I

Ilya in Tarantool
Это дефолтный вроде, не?
источник

ED

Elizaveta Dokshina in Tarantool
workdir получится задать свой только при деплое TGZ, там ансибол сам создает unit-файл, а не из пакета
источник

ED

Elizaveta Dokshina in Tarantool
источник