Подключение к Postgres и ClickHouse
Postgres и ClickHouse – это популярные системы управления базами данных, которые поддерживаются платформой Visiology.
Для подключения к Postgres / ClickHouse необходимо выполнить следующие шаги:
Перейдите в каталог
/var/lib/visiology/scripts/v3/extended-services/Создайте каталог
entrypoint.d:mkdir entrypoint.dВ каталоге
entrypoint.dсоздайте файлsetpasswd.sh:nano setpasswd.shcо следующим содержимым:
#!/usr/bin/env bash useradd <user> echo "<user>:<password>" | chpasswd -mгде –
<user>- пользователь для подключения по SSH;<password>- пароль пользователя.Дайте файлу
setpasswd.shправа на выполнение:sudo chmod +x *.shОтредактируйте файл
/var/lib/visiology/scripts/v3/extended-services/50-external-ssh.ymlследующим образом:version: "3.8" x-deploy: &deploy deploy: placement: max_replicas_per_node: 1 constraints: - "node.labels.platform-v3==true" services: custom_ssh: image: panubo/sshd:1.3.0 ports: - "2223:22" networks: visiology-3: environment: - SSH_ENABLE_PASSWORD_AUTH=true - SSH_USERS=<user>:1000:1000 - SSH_ENABLE_ROOT=true - GATEWAY_PORTS=true - TCP_FORWARDING=true volumes: - /var/lib/visiology/scripts/v3/extended-services/entrypoint.d/:/etc/entrypoint.d/ << : *deploy labels: component: "v3-sshd" networks: visiology-3: external: true name: ${FULL_NETWORK_NAME}где –
<user>– пользователь для подключения по SSH.В случае, если платформа установлена в закрытом контуре, необходимо вручную установить Docker-образ
panubo/sshd:1.3.0.
Если же у платформы есть доступ в интернет, то образ cкачается автоматически.Перезапустите платформу, выполнив следующую команду:
./run.sh --restartВ клиенте для подключения сделайте следующее:
В настройках SSH-туннеля укажите IP-адрес платформы, логин и пароль из шага 3.
В настройках подключения SSH в поле Порт подключения укажите порт 2223 (вместо 22).
В настройках подключения в поле Адреса подключения укажите сервер для подключения:
postgres-visiology:5432 для подключения к базе Postgres, логин и пароль из инструкции ниже, база
visiology;clickhouse-1:8123 для подключения к базе ClickHouse, логин и пароль из инструкции ниже.
Для получения логина и пароля для подключения к базам выполните следующую команду:
для Postgres:
container_id=$(docker ps | grep visiology3_postgres-visiology | awk '{ print $1 }'); docker exec ${container_id} ls /run/secrets | xargs -I {} docker exec -i ${container_id} sh -c 'echo -n "{}: "; cat /run/secrets/{}; echo ""'Необходимо использовать полученные
POSTGRES_VISIOLOGY_ROOT_USERиPOSTGRES_VISIOLOGY_ROOT_PASSWORD.для ClickHouse:
container_id=$(docker ps | grep visiology3_clickhouse-1 | awk '{ print $1 }'); docker exec ${container_id} ls /run/secrets | xargs -I {} docker exec -i ${container_id} sh -c 'echo -n "{}: "; cat /run/secrets/{}; echo ""'
Смотрите также